To Do

Viktigt

1.Klart Hantering av Page-Tabeller

Nano Kernel ska abstraherar Paging från CPU på ett niveau så att den blir lätt att hanterar och oberoende av hardvarunn (CPU och MMU). Dessutom ska möjlighet till skydd av olika delar av adressrummtet finnas.
2.Klart Hantering av Interrupts

Nano Kernel ska beredställa enty och exit code så att hantering av interrupts kan ske i form av vanliga "C++" methoder.
3.Klart Hantering av System Calls

Nano Kernel ska beredställa enty och exit code från User till Kernel Mode så att System Calls kan enkelt implementeras utan hansyn till hardvarun/architektur.
4.Klart Context Switches

Nano Kernel ska kunna spara tillstånd av CPU & MMU (Konext) och sedan återställa CPU till samma tillstånd. Det behövs för att utföra Task Switches.
5.Struken Calling conventions och Exception handling

Vad måste göras för att Kernel kan använder sig av "normala" C++ classer och methoder och exceptions?
6.Påbörjad/klar Abstrahering av I/O

Nano Kernel ska presenterar tilgång till I/O (Ports) på ett system-oberoande sätt för kommunicera med hardvarun.
7.Klart Initialisering av Nano Kernel och CPU

Att få CPU & MMU i en definerad läge efter boot av systemet. Sätta up (Control)Register och MSRs så att det går att hantera saker.
8.Klart Minneshanteringsfunktioner

enablePaging() - för att starta MMU:n
pageDirectoryBaseAddress( address ) - sätta den fysiska adressen för den nuvarande processens pagetabell
memorySize - storleken av fysiska minnet

Bra att ha, men behövs inte just NU


Dreamcatcher



$Id: nanokernel.html,v 1.17 2003/05/19 15:48:18 d00-dek Exp $