Operating System


第一章 操作系统引论

OS的基本特征和主要功能

OS的基本特征:并发性、异步性,虚拟性,共享性

OS的主要功能:处理机管理功能、设备管理功能、存储器管理功能、文件管理功能、操作系统与用户之间的接口

第二章 进程的描述和控制(CPU)

用信号量机制实现进程并发中的同步与互斥

理发师问题(PPT p20—p30)

线程是什么?

  1. 线程是现代操作系统引入的一种执行实体
  2. 线程又称‘’轻型进程‘,是进程的组成部分
  3. 进程是资源占有单位,线程只是CPU调度单位

多线程结构进程的优点

  1. 快速线程切换
  2. 通信易于实现
  3. 减少管理开销
  4. 并发程度很高

进程与线程的区别:

进程:独立的实体单位

独立占有资源,进程拥有对资源的控制权和所有权

独立参与调度/执行,进程是一个可被操作系统调度和分派的单位

线程:调度运行的单位;不单独占有资源的单位,共享其所属进程的资源

第三章 处理机调度与死锁(CPU)

银行家算法、死锁检测(资源有向图)

死锁检测(资源有向图)PPT p37—p40

银行家算法

第四章 存储器管理(内存储器)

带有快表机制的内存访问时间计算

不缺页时的有效访存时间

综合有效访存时间

第五章 虚拟存储器(内存储器)

页面置换算法(LRU)

第六章 输入/出系统(设备管理)

中断与异常

外部中断和异常

简答

缓冲区技术

磁盘调度算法FCFS,SSTF,SCAN,CSACN

PPT p64—p73

第七章 文件管理(磁盘文件管理)

文件的逻辑结构和物理结构

逻辑地址转为物理地址

文件的逻辑结构:流式结构、记录式结构(用户使用角度)

流式文件是指文件内的数据是一个完整的字符流,不可以进一步细分

记录式文件在逻辑上可看成是一组记录的集合。每个几里路又彼此相关的若干数据项组成。

文件的物理结构:顺序结构、链式结构、索引结构(操作系统存储角度)

连续存储结构文件体在磁盘上占用连续的存储空间

非连续存储结构文件提在磁盘上占用不连续的存储空间(连接存储(隐式链接存储、显式连接存储)、索引存储)

采用多级索引的方式文件系统最大允许长度的计算

PPT p165—p179

第八章 磁盘存储器的管理(磁盘文件管理)

第九章 操作系统的接口

操作系统接口:操作系统中有专门相应用户控制要求的接口,负责系统与用户之间的双向信息传送。

联机命令接口:1.命令行方式操作接口(键盘命令)2.图形化界面(鼠标点击)

程序级接口——系统调用

操作系统还提供一种适用于应用程序中的功能调用接口,叫做系统调用(system call),允许用户在自己的应用程序中调用系统中提供的一些功能模块。

系统调用是应用程序获得操作系统服务的唯一途径。

CPU的两种工作状态:管态(执行系统程序的状态,允许执行所有指令)、目态(执行用户程序的状态,只允许执行非特权指令)

系统调用

操作系统提供一种适用于应用程序中的功能调用接口,叫做系统调用,允许用户在自己的应用程序中调用系统中提供的一些功能模块。

系统调用分类:

  1. 进程和作业管理类
  2. 文件操作类
  3. 设备管理类
  4. 主存管理类
  5. 信息维护类
  6. 通信类

系统调用与API函数的区别

调用关系链

分层关系

系统调用实现与处理过程

系统调用执行过程与Linux

Urgent

临界区——一段代码 ≠ 临界资源

临界区
概念:每个进程中访问临界资源的那段程序称之为临界区。
临界区不是内核对象,而是系统提供的一种数据结构,程序中可以声明一个该类型的变量,之后用它来实现对资源的互斥访问。当欲访问某一临界资源时,先将该临界区加锁(若临界区不空闲则等待),用完该资源后,将临界区释放。
补充(待定):分类:临界区也是代码的称呼,所以一个进程可能有多个临界区,分别用来访问不同的临界资源。
内核程序临界资源:系统时钟
普通临界资源:普通I/O设备,如打印机(进程访问这些资源的时候,很慢,会自动阻塞,等待资源使用完成)

内存分配算法——首次适应算法FF、循环首次适应NF、最佳适应BF、最坏适应WF算法

分段与分页区分

缓冲区的引入:速度不一致问题

无论是字符设备还是块设备,它们的运行速度都远低于CPU的速度。为了缓和CPU和I/O设备之间的矛盾、提高CPU的利用率,在现代OS中都无一例外地分别为字符设备和块设备配置了相应的缓冲区。缓冲区有着多种形式,如单缓冲区、双缓冲区、循环缓冲区、公用缓冲池等,以满足不同情况的需要。

为什么抽象为文件:可以用一套统一的API访问设备,排除了设备的特异性。

CPU的两种工作状态:管态(执行系统程序的状态,允许执行所有指令)、目态(执行用户程序的状态,只允许执行非特权指令)

操作系统基本特征

进程的状态的切换

状态的切换

fork()

中断——trap和interrupt的区别

可屏蔽中断
常由计算机的外设或一些接口功能产生,如时钟、键盘、打印机、串行口等,这种类型的中断可以在CPU要处理其它紧急操作时,被软件屏蔽或忽略.

非屏蔽中断
由意外事件导致,如电源断电、内存校验错误等.
对于这种类型的中断事件,无法通过软件进行屏蔽,CPU必须无条件响应

外中断和内中断的区别

动态分区管理问题

计算访存次数(隐式链接)

关于死锁问题的资源分配图

文件的索引组织方式

索引

启动磁盘的次数(第八章)

页面置换算法(LRU)与快表结合

页面置换算法(LRU)与快表结合

磁盘

单缓冲与双缓冲

不唯一的多缓冲区问题

理发师问题

内部碎片管理方法

缓冲池技术:
缓冲池,说到底也是缓冲区,只不过这种缓冲区较其他缓冲区来说能更好的实现cpu并行和设备的利用率。

缓冲池里主要包括如下方面。用于对数据进行读写的公共区域:

1、 emq空缓冲队列:用于取出空缓冲区来进行读写等操作。

2、 inq输入队列:用来记录输入设备输入的数据,以便用户程序读取。

3、outq输出队列:用来记录用户程序输出到设备(显示屏或是文件等)的数据,以便用户程序读取。
计算题:

低级调度

页面置换

文件存储空间分配

磁盘访问