5.3. Virtual Address Spaces

The virtual address space of a process is the range of memory addresses that are presented to the process as its environment; some addresses are mapped to physical memory, some are not. A process's virtual address space skeleton is created by the kernel at the time the fork() system call creates the process. (See “Process Creation”.) The virtual address layout within a process is set up by the dynamic linker and sometimes varies across different hardware platforms. As we saw in Figure 5.1, virtual address spaces are assembled from a series of memory segments. Each process has at least four segments:

  • Executable text — The executable instructions in the binary reside in the text segment. The text segment is mapped from ...

Get Solaris™ Internals: Core Kernel Components now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.