Operating Systems: Three Easy Pieces
Remzi H. Arpaci-Dusseau, Andrea C. Arpaci-Dusseau
- License
- Free to read (© Arpaci-Dusseau); official site requested to be linked, not mirrored
- Source
- University of Wisconsin–Madison (author's page)
Description
A widely used operating systems textbook organized around three themes: virtualization (CPU and memory), concurrency (locks and condition variables), and persistence (disks, RAID, and file systems).
Book information
- Language
- English
- Category
- Operating Systems
- Level
- Advanced
- Published
- 2023
- Format
- License
- Free to read (© Arpaci-Dusseau); official site requested to be linked, not mirrored
- Source
- University of Wisconsin–Madison (author's page)
Topics
License
Official Free Distribution — Free to read (© Arpaci-Dusseau); official site requested to be linked, not mirrored (license text ↗)
This resource is listed with a link to its official source; TLP does not host the file.
The authors state the book "is and will always be free in PDF form" but ask that instructors link to the official site rather than host local copies, so TLP links to the official page (chapter PDFs).
Related books
View all →
Algorithms
Jeff Erickson
A rigorous algorithms textbook built from the author's courses at the University of Illinois. Covers recursion, dynamic programming, greedy algorithms, graphs, NP-hardness, and more, emphasizing intuition and the problem-solving process alongside formal proofs.
AlgorithmsAdvancedCreative CommonsPDF · 24 MB
Open Data Structures (in C++)
Pat Morin
An open textbook covering the design and analysis of fundamental data structures — arrays, linked lists, hash tables, binary and balanced search trees, heaps, tries, and graphs — with full C++ implementations and mathematical analysis.
Data StructuresIntermediateCreative CommonsPDF · 1.5 MB
How to Think Like a Computer Scientist: C++ Version
Allen B. Downey
A gentle introduction to programming and computer-science thinking using C++. Builds from variables, expressions, and functions up to recursion, classes, vectors, and larger programs, emphasising problem decomposition over syntax.
C++BeginnerCreative CommonsPDF