papers
The papers that I have {read, want to read}. The original idea was to write my thoughts for the papers I have read. However, [ d(no of papers to read)/dt >> d(no of papers read)/dt ]. Hence, this list is more of an index of things that I hope to get to in this lifetime.
Not a list of the most cutting-edge technologies, since system topics are usually old and many papers here are classics in the topics they discuss.
TOREAD
OSes
- Exokernel: an operating system architecture for application-level resource management
- Experience with processes and monitors in Mesa
- Extensibility safety and performance in the SPIN operating system
- Observations on the development of an operating system (Pilot)
- The design and implementation of a log-structured file system
- The performance of μ-kernel-based systems
Virtualization
- Bringing Virtualization to the x86 Architecture with the Original VMware Workstation
- Disco: running commodity operating systems on scalable multiprocessors
- Formal requirements for virtualizable third generation architectures
- Xen and the art of virtualization
Historical systems
- Plan 9 from Bell Labs
- The UNIX time-sharing system
Distributed
- Impossibility of distributed consensus with one faulty process
- MapReduce: Simplified Data Processing on Large Clusters
- Time, Clocks and the Ordering of Events in a Distributed System
- The part-time parliament
Programming Languages:
- The development of the C programming language
READ
A list that is consistently out of date.
Networking
Note: Most of these are because they are required readings for a class
- The design philosophy of the DARPA internet protocols
Linux
- Linux Security Modules: General Security Support for the Linux Kernel