Subversion Repositories HelenOS-historic

Rev

Go to most recent revision | Blame | Last modification | View Log | Download | RSS feed

+ implement true memory management
  + [ia32] use int 0x15 ax=0xe820 to get memory map and memory size
  + [mips] use some heuristics to get memory map and memory size
  + reimplement heap so that it can allocate/deallocate itself frames as necessary
  + provide native four-level portable page table interface
    + every architecture uses its native page table format
    + kernel provides unified four-level page table interface for all architectures
  + track usage of frames containing middle-level page tables (frame leak)

+ get user mode support for all architectures

+ when a new thread enters scheduler, at least one CPU in
  cpu_sleep() should be woken up by an IPI
+ save/restore floating point context on context switch 
  + [ia32] lazy context switch using TS flag
+ [ia32] review privilege separation
  + zero IOPL in EFLAGS
  + before IRET (from SYSCALL), zero NT in EFLAGS
+ [ia32] review the cache controling bits in CR0 register
+ [ia32] zero the alignment exception bit in EFLAGS
+ make emulated architectures also work on real hardware
+ bring in support for other architectures (e.g. PowerPC)