资源描述
Operating System Review
第1章 计算机系统概述
指令的执行(指令周期),加入中断以后指令的执行过程
存储体系
第2章 操作系统概述
操作系统的主要功能
坦尼伯母把操作系统的功能归结为两点:
自顶向下看(Top-down) ,操作系统作为虚拟机(Virtual Machine),为程序员提供统一的编程接口(Programming Interface)
自底向上看(Bottom-up) ,操作系统作为一个资源管理器(Resource Manager),管理众多设备
操作系统的主要目标(Primary Objectives of Operating System):
Convenience
Efficiency
Ability to evolve
操作系统的发展历史
程序(Program)、作业(Job)、进程(Process)、多道(Multiprogramming)、多任务
操作系统的体系结构(Architecture)
整体式结构、微内核结构、分层结构、客户/服务器结构、分布式结构
第3章 进程描述和控制
进程的概念/定义(Process)
进程状态及进程状态转换图(Process Transition Diagram)
进程的属性(如何来描述进程)
进程表(Process Table)
进程表表项(Process Table Entry)、进程控制块(Process Control Block)
进程如何被创建?
进程何时会被切换?
进程何时会终止?
第4章 线程、SMP和微内核
引入线程(thread)的目的
线程和进程的关系
线程的生命期(线程状态)
线程的不同实现方式,不同的实现方式对调度的影响
并发与并行、并发的实现机制(interleaving和overlapping)
微内核(Microkernel)
操作系统和进程间的关系
第5章 并发:互斥与同步
共享资源(Shared Resource)
竞争条件(race condition)
临界区(critical section/region)
硬件解决方案:关中断、TSL和Exchange指令
信号量(Semaphore,1965, Dijkstra )
生产者-消费者问题(Producer-Consumer Problem)
原语(Primitive)
生产者-消费者问题中信号量解决方案中信号量的用途(同步、互斥)
管程(Monitor)
消息传递(Message Passing)
读者-写者问题
第6章 并发:死锁与饥饿
死锁的概念(Deadlock)
资源的类型可重用资源和可消耗资源(Reusable /Consumable)
资源分配图(Resource Allocation Diagram)
资源轨迹图
死锁的四个条件()
死锁的四个处理策略
忽略(Ignorance)
预防(Prevention)
避免(Avoidance):
单种/多种资源银行家算法(Banker algorithm):
安全状态(Safe State),非安全状态(Unsafe State)
银行家算法的不足
检测与破坏(Detection and Destroy)
第7章 内存管理
存储体系(Storage Hierarchy)
地址的分类:逻辑地址、物理地址(实地址)、虚地址
内存管理的基本功能
内存分区(Memory Partitioning)
固定分区:等大小/不等大小
动态分区
内部、外部碎片/零头(Internal/External Fragmentation)–> compaction
放置/适配算法(Placement algorithms)
分页(paging)
分段(segmentation)
第8章 虚拟内存管理
虚地址(Virtual Address)、虚地址空间(Address Page Table)
页(page)、页框(page frame)、页表(page table)
页表表项(page table entry,PTE)的主要内容
虚地址到物理地址的映射/转换(mapping/translation)
MMU(Memory Management Unit)
虚拟存储器带来的问题:
页表很大 –> 多级页表(multi-level page table)
增加了一次对内存中页表的访问 –> TLB(Translation Lookaside Buffer)
地址空间更大 –> 逆向页表(Inverted page table)
访问的局部性原理(Principle of Locality)
虚拟存储器的设计问题(Design Issues)
工作集(Working Set)
页面的大小(Page Size)
碎片(Fragmentation)
装入页的时机(按需装入和预先装入, Demand Paging and Prepaging)
全局和局部(Global or Local Scope)
颠簸/抖动(Thrashing)
页面替换算法
Optimal、Least Recently Used、FIFO、Clock
分段(Segmentation)
第9章 单处理器调度
调度类型:长程(long-term)、中程(Medium-term)、短程(Short-term)、I/O
调度准则(Scheduling Criteria):
Throughput, Response Time, Turnaround Time, Fairness
不同的调度算法
FIFO、SJF、Round-robin、Priority-based
通用操作系统的调度算法:基于优先级的分时反馈调度
调度算法的实现:队列
第11章 I/O管理和磁盘调度
I/O设备的特点
I/O设备的分类
块设备/字符设备(流设备)
I/O软件的组织
磁盘调度(Disk arm scheduling)
磁盘I/O的过程(Seek time、Rotational Delay、Data Transfer Time)
FIFO
SCAN
C-SCAN
RAID
第12章 文件管理
文件、文件系统
文件的分类
正规文件(Regular file)、特殊文件(Device Special File)、目录(Directory)、管道(Pipe:Anonymous Pipe/Named Pipe)等
文件的常见操作
树形结构
路径及分类
根目录与当前目录(Root Directory and Current Directory/Working Directory)
绝对路径与相对路径(Absolute Path and Relative Path)
文件结构(字节流结构)
磁盘空间的分配方法及优缺点
磁盘块地址/编号
连续分配
不连续分配
空闲空间的记录
基于i-node的Unix文件系统
i-node的结构
基于i-node的路径分析
展开阅读全文