DeepHack
DeepHack: Digital spelunking for the 21st Century
Secret Motor[edit]
The original Secret Motor was a project by Mike Kan circa 1993 to visualize memory access on a Macintosh using an oscilloscope. The QEMU Secret Motor is an attempt to create something similar using an emulator. It currently consists of a patched version of qemu which prints the x86 EIP for each cycle of the emulated machine, and a python script (based on this YouScope emulator) to visualize that data. TODO: post some video here of the qemu secret motor running.
QEMU[edit]
QEMU is a generic and open source machine emulator and virtualizer.
Horology[edit]
Linux 3.4 timer fixes[edit]
Patches for resume and 32-bit timer overflow
https://lkml.org/lkml/2012/8/21/673
(Potential) fix for Linux leapsecond bug[edit]
1 July 2012
https://lkml.org/lkml/2012/7/1/176
Avoiding unnecessary overflow in sched_clock[edit]
15 November 2011
https://lkml.org/lkml/2011/11/15/359
The Elements of Computing Systems[edit]
MMIX[edit]
MMIX is a 64-bit RISC machine used in Volume 4A of Donald Knuth's Art of Computer Programming and it will eventually be used in all other volumes of that series.
Open Computation Hardware[edit]
The OR1200 is an open-source synthesizable CPU.
What Every Programmer Should Know about Computer Memory[edit]
A 7-part series by Ulrich Drepper (complete PDF):
CorePy[edit]
CorePy: Assembly Programming from Python
Patterson & Hennesy[edit]
Java tutorial based on "Computer Architecture" and "Computer Organization and Design"
Operating Systems[edit]
Systems-level software (kernel and userspace)
Unix V6[edit]
- Unix V6 Shell by Ken Thompson (900 lines), 1975
- John Lion's Commentary on the Unix v6 source
Linux[edit]
A Plumber's Wish List for Linux[edit]
Looking for a useful systems software project? Version 2 of the list by Kay Sievers (20 Oct 2011).
Linux 0.01[edit]
- Original release by Linus Torvalds (10,000 lines), September 1991
- Port to GCC4 / QEMU by Abdel Benamrouche, 1 January 2008
Minix 3[edit]
Roadmap including ARM support.