Re: Questions about preemption and concurrency

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, May 27, 2011 at 05:14:51PM +0530, Naman shekhar Mishra wrote:
> 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)?

I'm not sure what "run in the kernel" means here, but there can
definetely be more than one process waiting in a system call (e.g.
in a read() on a tty). IIUC, almost any "sleeping" process is.

Processes that wait for disk IO are in "uninterruptible" state which
also allows other processes to run and do system calls.

On SMP systems, where code is really run in parallel, certain resources
and code paths (e.g. ioctl, some file systems), used to be protected by
the Big Kernel Lock, which has just recently been removed.

HTH,
	Jonathan NeuschÃfer

_______________________________________________
Kernelnewbies mailing list
Kernelnewbies@xxxxxxxxxxxxxxxxx
http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies



[Index of Archives]     [Newbies FAQ]     [Linux Kernel Mentors]     [Linux Kernel Development]     [IETF Annouce]     [Git]     [Networking]     [Security]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux SCSI]     [Linux ACPI]
  Powered by Linux