To be conformant with the POSIX®.1 standard, processes must be kept separate, and this is achieved through the use of memory protection and name spaces.
POSIX assumes that each process in a system resides in a different name space and has its own symbols tables. The Memory Management Unit (MMU) is used to physically isolate processes from each another so that they cannot trample on each other's memory.
Also commonly referred to as "multiprocessing," a process as defined by POSIX.1 will have its own name space. Two symbols defined globally will not conflict if they are located in two different processes, since they are in two different links.
![]() |
fork().execve(). The program is read from its file and loaded into memory.execve(), and begins executing in the function called main().pthread_create(), which create additional threads. Each thread is a flow of control within the process.The set of virtual addresses that a process can access are called the process's virtual address space. A process virtual address space is composed of segments:
The MMU translates the virtual addresses into physical addresses. If a process attempts to address a page that is not currently mapped to it, the MMU generates an exception. The exception sends a signal to the offending thread in which the default action is to terminate the process. Alteratively, the thread may catch the signal for user-defined actions, if desired.
For further information on MMUs, please read our technical white paper, "Using the Microprocessor MMU for Software Protection in Real-Time Systems." For information about partition operating systems, visit our white paper, "Partitioning Operating Systems Versus Process-based Operating Systems."
A savvy engineer just needs to ask a few quick questions about an operating system in order to determine if it might fully support the POSIX standards.
fork()
call?"







Board Support Packages (BSPs)
BSP Device Drivers |
BSP Targets by Operating SystemBSP Targets by Form Factor |
Third-party I/O Devices and Hardware |
SynergyWorks: LynuxWorks partners
|
Third-party add-ons for LynuxWorks operating systems |
||