Bibliography
Hardware References
[IA32-v1]. IA-32 Intel Architecture Software Developer's Manual Volume 1: Basic Architecture. Basic 80x86 architecture and programming environment. Available via developer.intel.com. Section numbers in this document refer to revision 18.
[IA32-v2a]. IA-32 Intel Architecture Software Developer's Manual Volume 2A: Instruction Set Reference A-M. 80x86 instructions whose names begin with A through M. Available via developer.intel.com. Section numbers in this document refer to revision 18.
[IA32-v2b]. IA-32 Intel Architecture Software Developer's Manual Volume 2B: Instruction Set Reference N-Z. 80x86 instructions whose names begin with N through Z. Available via developer.intel.com. Section numbers in this document refer to revision 18.
[IA32-v3a]. IA-32 Intel Architecture Software Developer's Manual Volume 3A: System Programming Guide. Operating system support, including segmentation, paging, tasks, interrupt and exception handling. Available via developer.intel.com. Section numbers in this document refer to revision 18.
[FreeVGA]. FreeVGA Project. Documents the VGA video hardware used in PCs.
[kbd]. Keyboard scancodes. Documents PC keyboard interface.
[ATA-3]. AT Attachment-3 Interface (ATA-3) Working Draft. Draft of an old version of the ATA aka IDE interface for the disks used in most desktop PCs.
[PC16550D]. National Semiconductor PC16550D Universal Asynchronous Receiver/Transmitter with FIFOs. Datasheet for a chip used for PC serial ports.
[8254]. Intel 8254 Programmable Interval Timer. Datasheet for PC timer chip.
[8259A]. Intel 8259A Programmable Interrupt Controller (8259A/8259A-2). Datasheet for PC interrupt controller chip.
[MC146818A]. Motorola MC146818A Real Time Clock Plus Ram (RTC). Datasheet for PC real-time clock chip.
[PCASM]. PC Assembly Language Book. Guide to x86 assembly language.
Software References
[ELF1]. Tool Interface Standard (TIS) Executable and Linking Format (ELF) Specification Version 1.2 Book I: Executable and Linking Format. The ubiquitous format for executables in modern Unix systems.
[ELF2]. Tool Interface Standard (TIS) Executable and Linking Format (ELF) Specification Version 1.2 Book II: Processor Specific (Intel Architecture). 80x86-specific parts of ELF.
[ELF3]. Tool Interface Standard (TIS) Executable and Linking Format (ELF) Specification Version 1.2 Book III: Operating System Specific (UNIX System V Release 4). Unix-specific parts of ELF.
[SysV-ABI]. System V Application Binary Interface: Edition 4.1. Specifies how applications interface with the OS under Unix.
[SysV-i386]. System V Application Binary Interface: Intel386 Architecture Processor Supplement: Fourth Edition. 80x86-specific parts of the Unix interface.
[SysV-ABI-update]. System V Application Binary Interface--DRAFT--24 April 2001. A draft of a revised version of [ SysV-ABI] which was never completed.
[SUSv3]. The Open Group, Single UNIX Specification V3, 2001.
[Partitions]. A. E. Brouwer, Minimal partition table specification, 1999.
[IntrList]. R. Brown, Ralf Brown's Interrupt List, 2000.
Operating System Design References
[Christopher]. W. A. Christopher, S. J. Procter, T. E. Anderson, The Nachos instructional operating system. Proceedings of the USENIX Winter 1993 Conference. http://portal.acm.org/citation.cfm?id=1267307.
[Dijkstra]. E. W. Dijkstra, The structure of the "THE" multiprogramming system. Communications of the ACM 11(5):341--346, 1968. http://doi.acm.org/10.1145/363095.363143.
[Hoare]. C. A. R. Hoare, Monitors: An Operating System Structuring Concept. Communications of the ACM, 17(10):549--557, 1974. http://www.acm.org/classics/feb96/.
[Lampson]. B. W. Lampson, D. D. Redell, Experience with processes and monitors in Mesa. Communications of the ACM, 23(2):105--117, 1980. http://doi.acm.org/10.1145/358818.358824.
[McKusick]. M. K. McKusick, K. Bostic, M. J. Karels, J. S. Quarterman, The Design and Implementation of the 4.4BSD Operating System. Addison-Wesley, 1996.
[Wilson]. P. R. Wilson, M. S. Johnstone, M. Neely, D. Boles, Dynamic Storage Allocation: A Survey and Critical Review. International Workshop on Memory Management, 1995. http://www.cs.utexas.edu/users/oops/papers.html#allocsrv.
Last updated