1、Operating System Review 第1章 计算机系统概述 指令的执行(指令周期),加入中断以后指令的执行过程 存储体系 第2章 操作系统概述 操作系统的主要功能 坦尼伯母把操作系统的功能归结为两点: 自顶向下看(Top-down) ,操作系统作为虚拟机(Virtual Machine),为程序员提供统一的编程接口(Programming Interface) 自底向上看(Bottom-up) ,操作系统作为一个资源管理器(Resource Manager),管理众多设备 操作系统的主要目标(Primary Objectives of Operatin
2、g System): Convenience Efficiency Ability to evolve 操作系统的发展历史 程序(Program)、作业(Job)、进程(Process)、多道(Multiprogramming)、多任务 操作系统的体系结构(Architecture) 整体式结构、微内核结构、分层结构、客户/服务器结构、分布式结构 第3章 进程描述和控制 进程的概念/定义(Process) 进程状态及进程状态转换图(Process Transition Diagram) 进程的属性(如何来描述进程) 进程表(Process Table
3、 进程表表项(Process Table Entry)、进程控制块(Process Control Block) 进程如何被创建? 进程何时会被切换? 进程何时会终止? 第4章 线程、SMP和微内核 引入线程(thread)的目的 线程和进程的关系 线程的生命期(线程状态) 线程的不同实现方式,不同的实现方式对调度的影响 并发与并行、并发的实现机制(interleaving和overlapping) 微内核(Microkernel) 操作系统和进程间的关系 第5章 并发:互斥与同步 共享资源(Shared Resource) 竞争条件
4、race condition) 临界区(critical section/region) 硬件解决方案:关中断、TSL和Exchange指令 信号量(Semaphore,1965, Dijkstra ) 生产者-消费者问题(Producer-Consumer Problem) 原语(Primitive) 生产者-消费者问题中信号量解决方案中信号量的用途(同步、互斥) 管程(Monitor) 消息传递(Message Passing) 读者-写者问题 第6章 并发:死锁与饥饿 死锁的概念(Deadlock) 资源的类型可重用资源和可消耗资源(R
5、eusable /Consumable) 资源分配图(Resource Allocation Diagram) 资源轨迹图 死锁的四个条件() 死锁的四个处理策略 忽略(Ignorance) 预防(Prevention) 避免(Avoidance): 单种/多种资源银行家算法(Banker algorithm): 安全状态(Safe State),非安全状态(Unsafe State) 银行家算法的不足 检测与破坏(Detection and Destroy) 第7章 内存管理 存储体系(Storage Hierarchy) 地址的分类:
6、逻辑地址、物理地址(实地址)、虚地址 内存管理的基本功能 内存分区(Memory Partitioning) 固定分区:等大小/不等大小 动态分区 内部、外部碎片/零头(Internal/External Fragmentation)–> compaction 放置/适配算法(Placement algorithms) 分页(paging) 分段(segmentation) 第8章 虚拟内存管理 虚地址(Virtual Address)、虚地址空间(Address Page Table) 页(page)、页框(page frame)、页表(p
7、age 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) 虚拟存储
8、器的设计问题(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
9、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) 磁盘
10、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的路径分析






