Questions about preemption and concurrency

Naman shekhar Mishra namanshekharmishra2 at yahoo.in
Fri May 27 07:44:51 EDT 2011


In Operating System Concepts 6th ed, chapter 20:
"Kernel code can thus assume that it will never be preempted by another process and that no special care must be
taken to protect critical sections. The only requirement is that critical sections do not contain references to user memory
or waits for I/O completions"

Why us that the process cannot wait for I/O to complete in critical sections?
My another question is: While developing kernel modules (for kernels before 2.6), do we need to keep concurrency in mind?
Because the modules run as part of the kernel and no two processes can run in the kernel at the same time? Or my question is wrong since they CAN run in the kernel at the same time (like when one process waits for I/O completion and another is scheduled to run which then makes a system call)?


Please excuse me for the multiple nested question since I didn't quite know how to put it.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.kernelnewbies.org/pipermail/kernelnewbies/attachments/20110527/c67ed548/attachment-0001.html 


More information about the Kernelnewbies mailing list