|
This site supports a course and a textbook that guide students and self-learners through the construction of a modern, full-scale computer system - hardware and software - from the ground up. In the process, the students practice many major computer science (CS) abstractions studied in typical CS courses and make them concrete through 12 guided implementation projects. The lectures, book chapters and projects are highly modular and one can pursue subsets of them in any desired order and scope. All the software tools and course materials can be downloaded freely and in open source from this site. Why Bother? Because many CS students don't understand how computers work.
|
|
|
|
|
Step 0) Build a computer
Step 1) Define an Assembly Language and write an assembler
Step 2) Write the BIOS
Step 3) Write the HAL
Step 4) Write the OS kernel
Step 5) Write the system library
Step 6) Write a Command-Line Interpreter
Step 7) Write a windowing framework
Step 8) (Optional) Write a GUI
Step 9) Write a debugger
Step 10) Try the examples in the book
Step 11) Goto 1
|
|
|
|