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

Malloc, LMM, and the COM stuff



Hello,
	I'm a bit confused as to how the minimal C standard library, the
LMM and the COM interfaces are all related. I'm trying to plan how the
kernel and user applications will access memory, and I'm having some
difficulty.

My current plan is to "pin" the lower 4-8mb of memory for kernel data
structures. The rest of memory will be used for pages of user
applications. I read that when oskit is booting, it puts all available
physical memory into an lmm pool and that's what malloc has access to (the
extern lmm_t malloc_lmm). I suppose I'll need to change this lmm so that
it does not include memory over 4-8mb.

So my question is, how do I set up the LMM for a user program? I thought
I'd have to initialize an LMM in the user program for malloc to use, but
then I read some stuff about these com interfaces to oskit_mem_t's that
say that they are the lowest level of the memory hierarchy.


p.s. Has anyone used the x86's TSS structures for task management? I read
that many kernels don't because it's faster to do it manually. However,
I'd really like to avoid writing context switching code.

cheers,
steve
*------------*
| Steve Muckle
| Electrical & Computer Engineering
| Carnegie Mellon University
|
| Visit http://smuckle.com today!
*------------*