27.5. Processes, threads, fibres and concurrency control

As with UNIX, a process can be considered to be a running instance of an executable program. It has a private address space containing its code and data. As it executes, the operating system can allocate it system resources such as semaphores and communications ports. A process must have at least one thread since a thread is the unit of scheduling by the kernel.

A process executing in user mode invokes operating system services by making system calls. Via the familiar trap mechanism (Section 3.3) its mode is changed to system (privileged) as it enters and executes the operating system and is returned to user mode on its return.

Processes are also represented as objects, so are manipulated ...

Get Operating Systems: Concurrent and Distributed Software Design 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.