Howdy,

Your aligning by 16 byte paragraph

On Fri, Sep 20, 2019 at 7:45 PM Quinton Cook <[email protected]> wrote:

> Hello all,
>
> I have recently taken an academic interest in the freedos project. My
> current goal is to understand how the kernel was implemented.
>
> While reading the kernel.asm file located
> in freedos-svn/kernel/branches/jhall/kernel I have inferred that the
> routine "kernel_start" is calculating the overall memory available to the
> system. but I came across a snippet of code that confused me. Starting on
> line 128
> it goes
>
> mov dx,init_end+15
> mov cl,4
> shr dx,cl
> sub ax,dx
>
> why is 15 added to the end of the address of the symbol init_end if you
> just shift the value right by 4, doesn't that just undo the addition? Is it
> related to memory addresses having to be divisible by 16? Segmentation or
> something like that?
>
> Also is that last sub calculating the amount of room needed for the kernel?
>
> I hope all is well and get back to me when it is convenient for you, thanks
> --
> *Quinton Cook*
> _______________________________________________
> Freedos-devel mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/freedos-devel
>
_______________________________________________
Freedos-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/freedos-devel

Reply via email to