Hello,
Todays update in a way completes the development of the hal-module: All
devices required by the nucleus can now be accessed, and the hal-classes
have reached a certain level of maturity. This of course doesn't mean that
we wouldn't have to add some more details to the hal in the future.
There's still the "excutive" missing, that is the part of the nucleus that
responds to events (irqs, systemcalls, etc) and implements the most basic
kernel mechanisms (ipc, scheduling, etc). It will be based on the hal
aswell as the "object"-classes, which we'll thus have to develop now. The
object-part basically defines the kernel's run-time memory-management by
providing list and tree classes, which will be used to store the kernel's
data-structures (access right, task-blocks, etc).
As I'll from now on focus on the memory-classes, and thus won't touch the
hal-code in quite some time, I decided to clean it up a bit. Hopefully the
new, more object-oriented style will be a bit more readable: Not only for
you, but also for me when I return to the hal-code in a few months ;)
regards,
Daniel
|