- What Operating Systems Do
---A program that acts as an intermediary [,ɪntɚ'midɪɛri] between the computer user and the computer hardware.
---操作系统目标(operating system goals):
Execute user programs and make solving user problems easier.
Make the computer system convenient to use.
---Use the computer hardware in an efficient manner. [ɪ'fɪʃnt]
---OS is a resource allocator
Manages all resource; Decides between conflicting requests for efficient and fair resource use
---OS is a control program
Controls execution of programs to prevent errors and improper [ɪm'prɑpɚ] 不正确的 use of the computer.
Operating System Definition:
The one program running at all times on the computer usually is called the Kernel ['kɝnl] 内核
Along with the kernel, there are two other types of programs: system programs, which are associted with
the operating system but not part of the kernel, and application programs, which include all programs not
associted with the operation of the system.
- Computer-System Organization
---One or more CPUs, device controllers connect through common bus providing access to shared memory
---Concurrent execution of CPUs and devices competing for memory cycles.
Computer Startup: bootstrap program is loaded at power-up or reboot
- Computer-System Architecture ['ɑrkə'tɛktʃɚ] 体系结构
- Operating-System Structure
- Operating-System Operations
---I/O devices and the CPU can excute concurrently.[kən'kɝəntli] 同时发生地
---Each device controller is in charge of a particular devices type.
---Each device controller has a local buffer.缓冲
---CPU moves data from/to main memory to/from local buffer.
---I/O is from the device to local buffer of controller
---Device controller informs CPU that it has finished its operation by causing an interrupt
- Process Management
- Memory Management
- Storage Management
- Protection and Security
- Kernel Data Structures (Linux系统中的数据结构)
singly linked list, doubly linked list, circular linked list
Tree:
A data structure that can be used to represent data hierarchically分层的
Binary Tree:
A parent may have at most two children
Binary search tree:
left.child <= right.child
search performace is O(n)
Balanced binary search tree is O(lg n)
Hash function can create a hash map
Bitmap- string of n binary digits representing the status of n items
Linux data structures defined in include files <linux/list.h>, <linux/kfifo.h>, <linux/rbtree.h>
- Computing Environments
Blurring over time
Office environment
Home network
- Open-Source Operating System