Enclose kernel command line arguments that contain spaces in quotes
[pintos.git] / doc / bibliography.texi
blob76007f08a56f0e424320bfb08883af0c29681f1a
1 @node Bibliography
2 @unnumbered Bibliography
4 @macro bibdfn{cite}
5 @noindent @anchor{\cite\}
6 [\cite\].@w{  }
7 @end macro
9 @menu
10 * Hardware References::     
11 * Software References::     
12 * Operating System Design References::
13 @end menu
15 @node Hardware References
16 @section Hardware References
18 @bibdfn{IA32-v1}
19 IA-32 Intel Architecture Software Developer's Manual Volume 1: Basic
20 Architecture.  Basic 80@var{x}86 architecture and programming
21 environment.  Available via @uref{developer.intel.com}.  Section numbers
22 in this document refer to revision 18.
24 @bibdfn{IA32-v2a} 
25 IA-32 Intel Architecture Software Developer's Manual
26 Volume 2A: Instruction Set Reference A-M.  80@var{x}86 instructions
27 whose names begin with A through M.  Available via
28 @uref{developer.intel.com}.  Section numbers in this document refer to
29 revision 18.
31 @bibdfn{IA32-v2b}
32 IA-32 Intel Architecture Software Developer's Manual Volume 2B:
33 Instruction Set Reference N-Z.  80@var{x}86 instructions whose names
34 begin with N through Z.  Available via @uref{developer.intel.com}.
35 Section numbers in this document refer to revision 18.
37 @bibdfn{IA32-v3a}
38 IA-32 Intel Architecture Software Developer's Manual Volume 3A: System
39 Programming Guide.  Operating system support, including segmentation,
40 paging, tasks, interrupt and exception handling.  Available via
41 @uref{developer.intel.com}.  Section numbers in this document refer to
42 revision 18.
44 @bibdfn{FreeVGA}
45 @uref{specs/freevga/home.htm, , FreeVGA Project}.  Documents the VGA video
46 hardware used in PCs.
48 @bibdfn{kbd}
49 @uref{specs/kbd/scancodes.html, , Keyboard scancodes}.  Documents PC keyboard
50 interface.
52 @bibdfn{ATA-3}
53 @uref{specs/ata-3-std.pdf, , AT Attachment-3 Interface (ATA-3) Working
54 Draft}.  Draft of an old version of the ATA aka IDE interface for the
55 disks used in most desktop PCs.
57 @bibdfn{PC16550D}
58 @uref{specs/pc16550d.pdf, , National Semiconductor PC16550D Universal
59 Asynchronous Receiver/Transmitter with FIFOs}.  Datasheet for a chip
60 used for PC serial ports.
62 @bibdfn{8254}
63 @uref{specs/8254.pdf, , Intel 8254 Programmable Interval Timer}.
64 Datasheet for PC timer chip.
66 @bibdfn{8259A}
67 @uref{specs/8259A.pdf, , Intel 8259A Programmable Interrupt Controller
68 (8259A/8259A-2)}.  Datasheet for PC interrupt controller chip.
70 @node Software References
71 @section Software References
73 @bibdfn{ELF1}
74 @uref{specs/elf.pdf, , Tool Interface Standard (TIS) Executable and
75 Linking Format (ELF) Specification Version 1.2 Book I: Executable and
76 Linking Format}.  The ubiquitous format for executables in modern Unix
77 systems.
79 @bibdfn{ELF2}
80 @uref{specs/elf.pdf, , Tool Interface Standard (TIS) Executable and
81 Linking Format (ELF) Specification Version 1.2 Book II: Processor
82 Specific (Intel Architecture)}.  80@var{x}86-specific parts of ELF.
84 @bibdfn{ELF3}
85 @uref{specs/elf.pdf, , Tool Interface Standard (TIS) Executable and
86 Linking Format (ELF) Specification Version 1.2 Book III: Operating
87 System Specific (UNIX System V Release 4)}.  Unix-specific parts of
88 ELF.
90 @bibdfn{SysV-ABI}
91 @uref{specs/sysv-abi-4.1.pdf, , System V Application Binary Interface:
92 Edition 4.1}.  Specifies how applications interface with the OS under
93 Unix.
95 @bibdfn{SysV-i386}
96 @uref{specs/sysv-abi-i386-4.pdf, , System V Application Binary 
97 Interface: Intel386 Architecture Processor Supplement: Fourth
98 Edition}.  80@var{x}86-specific parts of the Unix interface.
100 @bibdfn{SysV-ABI-update}
101 @uref{specs/sysv-abi-update.html/contents.html, , System V Application Binary
102 Interface---DRAFT---24 April 2001}.  A draft of a revised version of
103 @bibref{SysV-ABI} which was never completed.
105 @node Operating System Design References
106 @section Operating System Design References
108 @bibdfn{Dijkstra}
109 E.@: W.@: Dijkstra, @cite{The structure of the ``THE''
110 multiprogramming system}.  Communications of the ACM 11(5):341--346,
111 1968.  @uref{http://doi.acm.org/10.1145/363095.363143}.
113 @bibdfn{Hoare}
114 C.@: A.@: R.@: Hoare, @cite{Monitors: An Operating System
115 Structuring Concept}.  Communications of the ACM, 17(10):549--557,
116 1974.  @uref{http://www.acm.org/classics/feb96/}.
118 @bibdfn{Lampson}
119 B.@: W.@: Lampson, D.@: D.@: Redell, @cite{Experience with processes and
120 monitors in Mesa}.  Communications of the ACM, 23(2):105--117, 1980.
121 @uref{http://doi.acm.org/10.1145/358818.358824}.
123 @bibdfn{McKusick}
124 M.@: K.@: McKusick, K.@: Bostic, M.@: J.@: Karels, J.@: S.@: Quarterman,
125 @cite{The Design and Implementation of the 4.4@acronym{BSD} Operating
126 System}.  Addison-Wesley, 1996.
128 @bibdfn{Wilson}
129 P.@: R.@: Wilson, M.@: S.@: Johnstone, M.@: Neely, D.@: Boles,
130 @cite{Dynamic Storage Allocation: A Survey and Critical Review}.
131 International Workshop on Memory Management, 1995.
132 @uref{http://www.cs.utexas.edu/users/oops/papers.html#allocsrv}.