Quote:
Originally Posted by Anisha Kaul
What I have understood by now:
Is this understanding completely correct?
|
I think that "process scheduling by the kernel, or by a hardware interrupt" is not very clearly put.
If a user program runs at the moment, and if we have just one core, kernel does
not run at the same time. I.e. simply no other program runs at the time.
I.e. switching to kernel will be caused by an external interrupt anyway - if nothing else happens, it will be interrupt from timer.
Or, to put it differently, external interrupts are hidden from user by kernel. Unless one decides to implement something really sophisticated in which there are HW interrupts with ISRs (Interrupt Service Routines) implemented outside the kernel.
...
I hope I've sufficiently confused you
.