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.comarrow-up-right. 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.comarrow-up-right. 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.comarrow-up-right. 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.comarrow-up-right. Section numbers in this document refer to revision 18.

[FreeVGA]. FreeVGA Projectarrow-up-right. Documents the VGA video hardware used in PCs.

[kbd]. Keyboard scancodesarrow-up-right. Documents PC keyboard interface.

[ATA-3]. AT Attachment-3 Interface (ATA-3) Working Draftarrow-up-right. 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 FIFOsarrow-up-right. Datasheet for a chip used for PC serial ports.

[8254]. Intel 8254 Programmable Interval Timerarrow-up-right. Datasheet for PC timer chip.

[8259A]. Intel 8259A Programmable Interrupt Controller (8259A/8259A-2)arrow-up-right. Datasheet for PC interrupt controller chip.

[MC146818A]. Motorola MC146818A Real Time Clock Plus Ram (RTC)arrow-up-right. Datasheet for PC real-time clock chip.

[PCASM]. PC Assembly Language Bookarrow-up-right. 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 Formatarrow-up-right. 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)arrow-up-right. 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)arrow-up-right. Unix-specific parts of ELF.

[SysV-ABI]. System V Application Binary Interface: Edition 4.1arrow-up-right. Specifies how applications interface with the OS under Unix.

[SysV-i386]. System V Application Binary Interface: Intel386 Architecture Processor Supplement: Fourth Editionarrow-up-right. 80x86-specific parts of the Unix interface.

[SysV-ABI-update]. System V Application Binary Interface--DRAFT--24 April 2001arrow-up-right. A draft of a revised version of [ SysV-ABIarrow-up-right] which was never completed.

[SUSv3]. The Open Group, Single UNIX Specification V3arrow-up-right, 2001.

[Partitions]. A. E. Brouwer, Minimal partition table specificationarrow-up-right, 1999.

[IntrList]. R. Brown, Ralf Brown's Interrupt Listarrow-up-right, 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=1267307arrow-up-right.

[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.363143arrow-up-right.

[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/arrow-up-right.

[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.358824arrow-up-right.

[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#allocsrvarrow-up-right.

Last updated