Re: the memory model being used in elks?

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

 



> but not the data. Then the RAM area inside the unused address space in
> the middle of the segment is not wasted.
> 
> process1:      |data+heap>                            <stack|
> process2:                     |--data+heap-->                    <--stack--|
>                |<-------------------- 64K ----------------->|
>                               |<-------------------- 64K ----------------->|
> 
> As many can overlap as it fits, with some extra margins for the stacks.
> The same works of course for combined code+data+heap too.

Very clever! You stil then need to know the stack sizes and automatically
trap and move which means you need to call a helper on function entry
or alloca, but that's not difficult.

It doesn't work in protected mode, which ELKS supports but for real mode
that would work beautifully.

The ELKS format basically turns the traditional arrangement around with a
predefined stack size rather than heap size, and stack at bottom, so the
heap can then expand upwards without mess.



Alan
--
To unsubscribe from this list: send the line "unsubscribe linux-8086" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Kernel]     [Linux ia64]     [DCCP]     [Linux for ARM]     [Yosemite News]     [Linux SCSI]     [Linux Hams]

  Powered by Linux