
Nguồn ngoài
Think OS - A Brief Introduction to Operating Systems
Think OS is an introduction to Operating Systems for programmers.
- Tác giả
- Allen B. Downey
- Nhà xuất bản
- Olin College
- Nguồn
- LibreTexts
- Giấy phép
- CC BY-NC
- Ngôn ngữ
- EN
- Danh mục
- Công nghệ thông tin
Mục lục· 66 mục
- 01: Compilation
- 1.01: Compiled and interpreted languages
- 1.02: Static types
- 1.03: The compilation process
- 1.04: Object code
- 1.05: Assembly code
- 1.06: Preprocessing
- 1.07: Understanding errors
- 02: Processes
- 2.01: Abstraction and virtualization
- 2.02: Isolation
- 2.03: UNIX processes
- 03: Virtual memory
- 3.01: A bit of information theory
- 3.02: Memory and storage
- 3.03: Address spaces
- 3.4: Memory segments
- 3.5: Static local variables
- 3.06: Address translation
- 04: Files and file systems
- 4.01: Files and file systems
- 4.02: Disk performance
- 4.03: Disk metadata
- 4.04: Block allocation
- 4.05: Everything is a file
- 05: More bits and bytes
- 5.01: Representing integers
- 5.02: Bitwise operators
- 5.03: Representing floating-point numbers
- 5.04: Unions and memory errors
- 5.05: Representing strings
- 06: Memory management
- 6.01: Memory errors
- 6.02: Memory leaks
- 6.03: Implementation
- 07: Caching
- 7.01: How programs run
- 7.02: Cache performance
- 7.03: Locality
- 7.04: Measuring cache performance
- 7.05: Programming for cache performance
- 7.06: The memory hierarchy
- 7.07: Caching policy
- 7.08: Paging
- 08: Multitasking
- 8.01: Hardware state
- 8.02: Context switching
- 8.03: The process life cycle
- 8.04: Scheduling
- 8.05: Real-time scheduling
- 09: Threads
- 9.01: Creating threads
- 9.02: Creating threads
- 9.03: Joining threads
- 9.04: Synchronization errors
- 9.05: Mutex
- 10: Condition variables
- 10.01: The work queue
- 10.02: Producers and consumers
- 10.03: Mutual exclusion
- 10.04: Condition variables
- 10.05: Condition variable implementation
- 11: Semaphores in C
- 11.01: POSIX Semaphores
- 11.02: Producers and consumers with semaphores
- 11.03: Make your own semaphores