Unformatted text preview: ual memory, and information about open ﬁles, installed signal handlers, and the extent of the heap.
Process context Program context: Data registers Condition codes Stack pointer (SP) Program counter (PC) Kernel context: Process ID (PID) VM structures Open files Signal handlers brk pointer Code, data, and stack SP stack shared libraries brk run-time heap read/write data read-only code/data
0 PC Figure 11.1: Traditional view of a process. If we rearrange the items in Figure 11.1, then we get the alternative view of a process shown in Figure 11.2. Here, a process consists of a thread, which consists of a stack and the program context (which we will call the thread context), plus the kernel context and the program code and data (minus the stack, of course).
Code and Data Thread brk SP stack Thread context: Data registers Condition codes Stack pointer (SP) Program counter (PC) PC
0 shared libraries run-time heap read/write data read-only code/data Kernel context: VM structures Open files Signal handlers brk po...
View Full Document