An application runs in an SAP work process where an ABAP program is normally executed. The process requires memory to do this, which is allocated to the process by the memory management system. The order in which the work process is assigned the memory type depends on the work process type, either dialog or non-dialog (see SAP Memory Types), and the underlying operating system.
This is described in more detail in the documentation on the operating system.
The location of the various memory areas in the virtual address space is explained in Virtual Address Space of a Work Process.
The area of a user context that is directly accessible is now extended as needed, if the user context has expanded. For dialog work processes, the data of the user context, including internal tables is located in this expanded area. You can therefore access all the data in the user context. Only data of the types "extract" and "export to memory" stay in SAP Paging.
The SAP Roll Area is used for the initial memory assigned to a user context, and (if available) for additional memory if the expanded memory is full.
The following diagram displays the memory types that can be assigned to work processes on the SAP and operating system level. Here are the most important system profile parameters that control the availability of the memory types.
Whenever a dialog step is executed, a roll action occurs between the roll buffer in the shared memory and the memory area, which is allocated according to ztta/roll_first in a dialog process. Then the area in the shared memory is accessed that belongs to this user context.
The following graphic displays the roll process performed by the dispatcher.
· Roll-in: cross-user data is rolled in from the common resource in the work process (and is processed there).
· Roll-out: User-specific data is rolled out from the work process in the common resource (after the dialog step has ended).
The common resource stands for the different SAP memory types.