Note that some links may by stale, please
update TA
when encountered!
Reading materials
UNIX
x86 Emulation
-
QEMU - A fast and popular x86
platform and CPU emulator.
x86 Assembly Language
PC Hardware Programming
- General PC architecture information
- General BIOS and PC bootstrap
- VGA display - kern/console.c
- Keyboard and Mouse - kern/console.c
- 8253/8254 Programmable Interval Timer (PIT) -
inc/timerreg.h
- 8259/8259A Programmable Interrupt Controller (PIC) -
kern/picirq.*
- Real-Time Clock (RTC) - kern/kclock.*
- 16550 UART Serial Port - kern/console.c
- IEEE 1284 Parallel Port - kern/console.c
- IDE hard drive controller - fs/ide.c
- Sound cards (not supported in our kernel, but you're welcome to do it
as a challenge problem!)
- E100 Network Interface Card