Cunix kernel
============
# Versions
`0.362s-boot`:
`Boot` read `loader` from `boot-device`, then it jumps to it.
Loader doesn't load anything, it just enable long-mode and paging.
Loader defines temporary page table at `0x70000` (0x0000:0x7000),
it uses `2MB` page to make 0-12 MB memory to `0x0000 - 0xc0000`.
`0.385s-boot`:
rebuild `boot` and `loader`.
`0.391s-boot`:
`loader` forgot open A20 line, so `0.385` and `0.362` just can
use 1MB memory like real-mode.
`0.432s-boot`:
make directory `include/`, and add segment.inc, but it doesn't work. :-)
`0.451s-boot`:
`boot` can load 8 sectors (4KB) of loader (not 1 sector).
`0.466s-boot`:
rebuild `boot`
`0.487s-boot`:
`loader` let FS can access 4GB memory in real-mode. because
`loader` loaded GDT and load a data-segment to fs, then disable
protect-mode.
`0.484s-boot`:
let `readdisk.inc` smaller, but we just can use CHS or LBA, not both.
`0.509s-kernel`:
load kernel to 0x8200-0x9200 for 4KB, kernel.asm display 'K' to screen.
`0.556s-int`:
init IDT at 0x0000-0x1000, and set all handler at `ignore_int`, but it do nothing.
`0.619s-boot`:
load 180KB of disk, not 4KB
`0.566s-kernel`:
write in C.
`0.790s-kernel`:
make some structs