🚀
Pintos
  • 🌈Welcome to Pintos
  • Getting Started
    • Environment Setup
    • Build and Run
      • Building Pintos
      • Running Pintos
    • Debug and Test
      • Testing
      • Debugging
    • Grading
  • Project Description
    • Lab0: Getting Real
      • Background
      • Your Tasks
      • FAQ
      • Submission
    • Lab1: Threads
      • Background
      • Suggestions
      • Your Tasks
      • FAQ
      • Submission
    • Lab2: User Programs
      • Background
      • Suggestions
      • Your Tasks
      • FAQ
      • Submission
    • Lab3a: Demand Paging
      • Background
      • Suggestions
      • Your Tasks
      • FAQ
      • Submission
    • Lab3b: Mmap Files
      • Your Tasks
      • FAQ
      • Submission
    • (Optional) Lab4: File Systems
      • Background
      • Suggestions
      • Your Tasks
      • FAQ
  • Appendix
    • Code Guide
      • Loading
      • Threads
      • Synchronization
      • Interrupt Handling
      • Memory Allocation
      • Virtual Addresses
      • Page Table
      • Hash Table
    • 4.4BSD Scheduler
    • C Standards
    • Project Documentation
    • Development Tools
    • Bibliography
  • Code Browser
Powered by GitBook
On this page
  • Hardware References
  • Software References
  • Operating System Design References
  1. Appendix

Bibliography

PreviousDevelopment Tools

Last updated 2 years ago

Hardware References

[IA32-v1]. IA-32 Intel Architecture Software Developer's Manual Volume 1: Basic Architecture. Basic 80x86 architecture and programming environment. Available via . 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 . 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 . 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 . Section numbers in this document refer to revision 18.

[FreeVGA]. . Documents the VGA video hardware used in PCs.

[kbd]. . Documents PC keyboard interface.

[ATA-3]. . Draft of an old version of the ATA aka IDE interface for the disks used in most desktop PCs.

[PC16550D]. . Datasheet for a chip used for PC serial ports.

[8254]. . Datasheet for PC timer chip.

[8259A]. . Datasheet for PC interrupt controller chip.

[MC146818A]. . Datasheet for PC real-time clock chip.

[PCASM]. . Guide to x86 assembly language.

Software References

[ELF1]. . The ubiquitous format for executables in modern Unix systems.

Operating System Design References

[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.

[ELF2]. . 80x86-specific parts of ELF.

[ELF3]. . Unix-specific parts of ELF.

[SysV-ABI]. . Specifies how applications interface with the OS under Unix.

[SysV-i386]. . 80x86-specific parts of the Unix interface.

[SysV-ABI-update]. . A draft of a revised version of [ ] which was never completed.

[SUSv3]. The Open Group, , 2001.

[Partitions]. A. E. Brouwer, , 1999.

[IntrList]. R. Brown, , 2000.

[Christopher]. W. A. Christopher, S. J. Procter, T. E. Anderson, The Nachos instructional operating system. Proceedings of the USENIX Winter 1993 Conference. .

[Dijkstra]. E. W. Dijkstra, The structure of the "THE" multiprogramming system. Communications of the ACM 11(5):341--346, 1968. .

[Hoare]. C. A. R. Hoare, Monitors: An Operating System Structuring Concept. Communications of the ACM, 17(10):549--557, 1974. .

[Lampson]. B. W. Lampson, D. D. Redell, Experience with processes and monitors in Mesa. Communications of the ACM, 23(2):105--117, 1980. .

[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. .

developer.intel.com
developer.intel.com
developer.intel.com
developer.intel.com
FreeVGA Project
Keyboard scancodes
AT Attachment-3 Interface (ATA-3) Working Draft
National Semiconductor PC16550D Universal Asynchronous Receiver/Transmitter with FIFOs
Intel 8254 Programmable Interval Timer
Intel 8259A Programmable Interrupt Controller (8259A/8259A-2)
Motorola MC146818A Real Time Clock Plus Ram (RTC)
PC Assembly Language Book
Tool Interface Standard (TIS) Executable and Linking Format (ELF) Specification Version 1.2 Book I: Executable and Linking Format
Tool Interface Standard (TIS) Executable and Linking Format (ELF) Specification Version 1.2 Book II: Processor Specific (Intel Architecture)
Tool Interface Standard (TIS) Executable and Linking Format (ELF) Specification Version 1.2 Book III: Operating System Specific (UNIX System V Release 4)
System V Application Binary Interface: Edition 4.1
System V Application Binary Interface: Intel386 Architecture Processor Supplement: Fourth Edition
System V Application Binary Interface--DRAFT--24 April 2001
SysV-ABI
Single UNIX Specification V3
Minimal partition table specification
Ralf Brown's Interrupt List
http://portal.acm.org/citation.cfm?id=1267307
http://doi.acm.org/10.1145/363095.363143
http://www.acm.org/classics/feb96/
http://doi.acm.org/10.1145/358818.358824
http://www.cs.utexas.edu/users/oops/papers.html#allocsrv