Eliminate race condition in timer_print_stats() found by Sorav's
[pintos-anon] / doc / references.texi
1 @node References, 4.4BSD Scheduler, Project 4--File Systems, Top
2 @appendix References
3
4 @macro bibdfn{cite}
5 @noindent @anchor{\cite\}
6 [\cite\].@w{  }
7 @end macro
8
9 @menu
10 * Hardware References::     
11 * Software References::     
12 * Operating System Design References::
13 @end menu
14
15 @node Hardware References
16 @section Hardware References
17
18 @bibdfn{IA32-v1}
19 @uref{ftp://download.intel.com/design/Pentium4/manuals/25366515.pdf, ,
20 IA-32 Intel Architecture Software Developer's Manual Volume 1: Basic
21 Architecture}.  Basic 80@var{x}86 architecture and programming
22 environment.
23
24 @bibdfn{IA32-v2a}
25 @uref{ftp://download.intel.com/design/Pentium4/manuals/25366615.pdf, ,
26 IA-32 Intel Architecture Software Developer's Manual Volume 2A:
27 Instruction Set Reference A-M}.  80@var{x}86 instructions whose names
28 begin with A through M.
29
30 @bibdfn{IA32-v2b}
31 @uref{ftp://download.intel.com/design/Pentium4/manuals/25366715.pdf, ,
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.
35
36 @bibdfn{IA32-v3}
37 @uref{ftp://download.intel.com/design/Pentium4/manuals/25366815.pdf, ,
38 IA-32 Intel Architecture Software Developer's Manual Volume 3: System
39 Programming Guide}.  Operating system support, including segmentation,
40 paging, tasks, interrupt and exception handling.
41
42 @bibdfn{FreeVGA}
43 @uref{specs/freevga/home.htm, , FreeVGA Project}.  Documents the VGA video
44 hardware used in PCs.
45
46 @bibdfn{kbd}
47 @uref{specs/kbd/scancodes.html, , Keyboard scancodes}.  Documents PC keyboard
48 interface.
49
50 @bibdfn{ATA-3}
51 @uref{specs/ata-3-std.pdf, , AT Attachment-3 Interface (ATA-3) Working
52 Draft}.  Draft of an old version of the ATA aka IDE interface for the
53 disks used in most desktop PCs.
54
55 @bibdfn{PC16550D}
56 @uref{specs/pc16550d.pdf, , National Semiconductor PC16550D Universal
57 Asynchronous Receiver/Transmitter with FIFOs}.  Datasheet for a chip
58 used for PC serial ports.
59
60 @bibdfn{8254}
61 @uref{specs/8254.pdf, , Intel 8254 Programmable Interval Timer}.
62 Datasheet for PC timer chip.
63
64 @bibdfn{8259A}
65 @uref{specs/8259A.pdf, , Intel 8259A Programmable Interrupt Controller
66 (8259A/8259A-2)}.  Datasheet for PC interrupt controller chip.
67
68 @node Software References
69 @section Software References
70
71 @bibdfn{ELF1}
72 @uref{specs/elf.pdf, , Tool Interface Standard (TIS) Executable and
73 Linking Format (ELF) Specification Version 1.2 Book I: Executable and
74 Linking Format}.  The ubiquitous format for executables in modern Unix
75 systems.
76
77 @bibdfn{ELF2}
78 @uref{specs/elf.pdf, , Tool Interface Standard (TIS) Executable and
79 Linking Format (ELF) Specification Version 1.2 Book II: Processor
80 Specific (Intel Architecture)}.  80@var{x}86-specific parts of ELF.
81
82 @bibdfn{ELF3}
83 @uref{specs/elf.pdf, , Tool Interface Standard (TIS) Executable and
84 Linking Format (ELF) Specification Version 1.2 Book III: Operating
85 System Specific (UNIX System V Release 4)}.  Unix-specific parts of
86 ELF.
87
88 @bibdfn{SysV-ABI}
89 @uref{specs/sysv-abi-4.1.pdf, , System V Application Binary Interface:
90 Edition 4.1}.  Specifies how applications interface with the OS under
91 Unix.
92
93 @bibdfn{SysV-i386}
94 @uref{specs/sysv-abi-i386-4.pdf, , System V Application Binary 
95 Interface: Intel386 Architecture Processor Supplement: Fourth
96 Edition}.  80@var{x}86-specific parts of the Unix interface.
97
98 @bibdfn{SysV-ABI-update}
99 @uref{specs/sysv-abi-update.html/contents.html, , System V Application Binary
100 Interface---DRAFT---24 April 2001}.  A draft of a revised version of
101 @bibref{SysV-ABI} which was never completed.
102
103 @node Operating System Design References
104 @section Operating System Design References
105
106 @bibdfn{4.4BSD}
107 M.@: K.@: McKusick, K.@: Bostic, M.@: J.@: Karels, J.@: S.@: Quarterman,
108 @cite{The Design and Implementation of the 4.4@acronym{BSD} Operating
109 System}.  Addison-Wesley 1996.
110
111 @bibdfn{Eraser}
112 S.@: Savage, M.@: Burrows, G.@: Nelson, P.@: Sobalvarro, T.@: Anderson,
113 ``Eraser: a dynamic data race detector for multi-threaded programs,''
114 ACM Transactions on Computer Systems 15 (1997):4, pages 391--411.
115 Also in Proceeding of the 16th ACM Symposium on Operating Systems
116 Principles (1997), pages 27--37.