It is possible, isn't it? We can write C/C++ programs to test/demonstrate
kernel functions. At the point where jJOS invokes decaf, jJOS could invoke
a power-on self-test, a diagnostic program, or some other
test/demonstration program written in C/C++.

This has the following benefits. Kernel functions, like virtual memory
management, interrupts and shared libraries, could be independently tested.
When decaf uses a kernel function, we'd know it works.

-----

Where and when should we implement memory management? In the kernel? Or, in
decaf? Should we do it now, when there is no swap file? Or later?

We should implement memory management in the kernel. The host build of the
kernel simply uses the memory management of a foreign operating system. The
i386 build of the kernel must implement memory management independently
from any other operating system.

With the memory management inherent in the i386, there is only so much JOS
can do differently than Linux. The interface between decaf and a kernel is
something like this:

void *alloc( size_t size );
void free( void * );

When decaf is the only kernel process, it is simple. When decaf must share
memory with other libraries, memory should be allocated on a per-library basis.


_______________________________________________
Kernel maillist  -  [EMAIL PROTECTED]
http://jos.org/mailman/listinfo/kernel

Reply via email to