few questions about how linux work

From: Markus Falkensteiner (falkmREMOVE_THIS_at_gmx.net)
Date: 08/06/03


Date: Wed, 6 Aug 2003 12:56:30 +0200

Hi NG,

i have a few questions in understanding how linux (the kernel) work.

My System:
AKD Athlon XP 1800
512 MB Ram
Suse 7.3
Kernel 2.4.10 (from Suse distro)

as far as i know the entry point of the kernel (after bootloader and some
basic work) is the
function "start_kernel" in main.c. in this function there is a call to
function "init" through "rest_init".

in init there is a command which calls
"execve("/sbin/init",argv_init,envp_init);".

that this command will work it assumes beforehand that my harddisk is
already mounted.
question: on which place are all the mounting points (root /, and swap, ...)
mounted???
is it right when i say that must happen before calling the function
mentioned above.

second question refer to the scheduler:
the scheduler is the part which gives every process (which would like like
to get CPU)
a timeslice. this is as much time as the process wants or maximum 10ms. then
an timer-interrpt occurs
and the scheduler switch to next process.
i've heart that kernel-code can not loose time, means kernelcode can't be
interrupted. what is
when a kernel function needs more that 10ms (however) and the next
timer-interrupt occurs.
will this IRQ be ignored. if yes how does this works. or will the interrupt
(any interrupt) processed later when kernelcode is finished??

hope someone can bring light into my darkness.

thx in advance

best regards Markus



Relevant Pages