The Computer Science Book
Resources
Chapter Checklist
- Introduction
- Theory of computation
- Introduction
- Automata theory
- Computability
- Algorithmic complexity
- Conclusion
- Further reading
- Algorithms and data structures
- Introduction
- Data structures
- Abstract data types
- Algorithms
- Conclusion
- Further reading
- Computer architecture
- Introduction
- Representing information
- Circuits and computation
- The processor
- Memory
- Performance optimisations
- Conclusion
- Further reading
- Operating systems
- Introduction
- Common operating systems
- The boot process
- Interrupts: hardware support for software
- The kernel
- Managing the processor
- Managing memory
- Managing persistence
- Conclusion
- Further reading
- Networking
- Introduction
- What is a network?
- The networking stack model
- The Internet Protocol
- Transmission Control Protocol
- Internet addressing and DNS
- The web, hypertext and HTTP
- Conclusion
- Further reading
- Concurrent programming
- Introduction
- Concurrency, parallelism and asynchrony
- Determinacy and state
- Threads and locks
- JavaScript and the event loop
- Communicating sequential processes in Go
- Conclusion
- Further reading
- Distributed systems
- Introduction
- Why we need distributed systems
- A theoretical model
- Handling network partitions: the CAP theorem
- Consistency models
- Consistency protocols
- Conclusion
- Further reading
- Programming languages
- Introduction
- Defining a programming language
- Programming language concepts
- Programming paradigms
- Type systems
- Conclusion
- Further reading
- Databases
- Introduction
- What does a database offer?
- Relational algebra and SQL
- Database architecture
- B-trees
- Indexes
- Concurrency control in SQLite and Postgres
- Conclusion
- Further reading
- Compilers
- Introduction
- Compilation and interpretation
- The program life-cycle
- Building a compiler
- Who to trust?
- Conclusion
- Further reading
Backlinks
Computer Science Books
- [[the-computer-science-book]]
dhruv's wiki
- [[the-computer-science-book]]