October 2017
Intermediate to advanced
354 pages
9h 28m
English
We understood in Chapter 1, Comprehending Processes, Address Space, and Threads that user-mode processes invoke system calls to switch into kernel mode for executing kernel services. When a process enters a kernel service routine, there is a possibility of the routine being blocked for availability of resources (for example, wait on exclusion lock) or occurrence of an event (such as interrupts). Such blocking operations require the caller process to be put into the TASK_INTERRUPTIBLE, TASK_UNINTERRUPTIBLE, or TASK_KILLABLE state. The specific state effected depends on the choice of blocking call invoked in the system calls.
If the caller task is put into the TASK_UNINTERRUPTIBLE state, occurrences of signals ...