Text
Modern operating systems
Contents:
1 Introduction
1.1 What is operating systems
1.2 History of operating systems
1.3 Computer hardware review
1.4 The operating system zoo
1.5 Operating system concepts
1.6 System calls
1.7 Operating system structure
1.8 The world according to C
1.9 Research on operating systems
1.10 Outline of the rest of this book
1.11 Metric units
1.12 Summary
2 Processes and threads
2.1 Processes
2.2 Threads
2.3 Interprocess communication
2.4 Scheduling
2.5 Classical IPC problems
2.6 Research processes and threads
2.7 Summary
3 Memory management
3.1 No memory abstraction
3.2 A memory abstraction: address spaces
3.3 Virtual memory
3.4 Page replacement algorithm
3.5 Design issues for paging systems
3.6 Implementation issues
3.7 Segmentation
3.8 Research on memory management
3.9 Summary
4 File systems
4.1 File
4.2 Directories
4.3 File-system implementation
4.4 File-system management and optimization
4.5 Example file systems
4.6 Research on file systems
4.7 Summary
5 Input/Output
5.1 Principles of I/O hardware
5.2 Principles of I/O software
5.3 I/O software layers
5.4 Disks
5.5 Clocks
5.6 User interfaces: keyboard, mouse, monitor
5.7 Thin clients
5.8 Power management
5.9 Research on input/output
5.10 Summary
6 Deadlocks
6.1 Resources
6.2 Introduction to deadlocks
6.3 The ostrich algorithms
6.4 Deadlock detection and recovery
6.5 Deadlock avoidance
6.6 Deadlock prevention
6.7 Other issues
6.8 Research on deadlocks
6.9 Summary
7 Virtualization and the cloud
7.1 History
7.2 Requirements for virtualization
7.3 Type 1 and type 2 hypervisors
7.4 Techniques for efficient virtualization
7.5 Are hypervisors microkernels done right
7.6 Memory virtualization
7.7 I/O virtualization
7.8 Virtual appliances
7.9 Virtual machines on multicore cpus
7.10 Licensing issues
7.11 Clouds
7.12 Case study: VMWare
7.13 Research on virtualization the cloud
8 Multiple processor systems
8.1 Multiprocessors
8.2 Multicomputers
8.3 Distributed systems
8.4 Research on multiple processor systems
8.5 Summary
9 Security
9.1 The security environment
9.2 Operating systems security
9.3 Controlling access to resources
9.4 Formal models of secure systems
9.5 Basics of cryptography
9.6 Authentication
9.7 Exploiting software
9.8 Insider attacks
9.9 Malware
9.10 Defenses
9.11 Research on security
9.12 Summary
10 Case study 1: unix, linux, and android
10.1 History of unix and linux
10.2 Overview of linux
10.3 Processes in linux
10.4 Memory management in linux
10.5 Inout/output in linux
10.6 The linux file system
10.7 Security in linux
10.8 Android
10.9 Summary
11 Case study 2: windows 8
11.1 History of windows through windows 8.1
11.2 Programming windows
11.3 System structure
11.4 Processes and threads in windows
11.5 Memory management
11.6 Caching in windows
11.7 Input/output in windows
11.8 The windows NT file system
11.9 Windows power management
11.10 Security in windows 8
11.11 Summary
12 Operating system design
12.1 The nature of the design problem
12.2 Interface design
12.3 Implemtation
12.4 Performance
12.5 Project management
12.6 Trends in operating system design
12.7 Summary
13 Reading list and bibliography
13.1 Suggestions for further reading
13.2 Alphabetical bibliography
Index
No other version available