Hello Aitor,

> I have started watching kernel source files, and trying to understand
> its logic by reading sources.

good luck ;)

> (1) why are there STRINGS.C and MISC.C, apparently with the same 
> functionality and same routines in the same programming language?
historical reasons. it was so, and never cared to clean up.


> (3) I see that the BPBs are initialised (MAIN.C:InitializeAllBPBs) by
> opening and closing a file for each drive, any hint why this is so?
in theory, this initializeAllBPBs() shouldn't be necessary, but
instead be done automatically as drives are accessed.
> (such as code in DSK.C where I could see: "if file opened for the first
> time, then initialise the BPB").
exactly.

however, some time back (2030 or similar), VC would hang on some
drives that hadn't been accessed yet; consider initializeAllBPBs()
some sort of hack.
No idea if it's still needed.



> (4) I ignore if the boot loader will send any valuable value to kernel
> routine inside variables AX and BX.
AFAIK, AX doesn't hold anything useful.

> (5) By the way, strangely enough I don't happen to see "123 - Initdisk"
> anymore, due most probably to the \r before the kernel compatibility.
\r introduced to remove the debug only '123 - initdisk' to avoid
unnecessary screen clutter.

> (7) A big questions: I have noticed the following two things:
> - there is a stack for the IRQ interrupts (apparently independent from
> the rest)
> - there is a kernel stack

there are always 3 kernel stacks, with fixed location, and fixed size
of 384 byte each; used for int21 processing.

completely independent is the *option* to give some hardware interrupt
routines (timers etc.) a separate stack.

tom




-------------------------------------------------------
SF.Net email is sponsored by Shop4tech.com-Lowest price on Blank Media
100pk Sonic DVD-R 4x for only $29 -100pk Sonic DVD+R for only $33
Save 50% off Retail on Ink & Toner - Free Shipping and Free Gift.
http://www.shop4tech.com/z/Inkjet_Cartridges/9_108_r285
_______________________________________________
Freedos-kernel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/freedos-kernel

Reply via email to