操作系统概述

是管理计算机硬件与软件资源的系统软件,同时也是计算机系统的内核与基石。

常见的操作系统有微软的Windows,苹果的macOS,linux,Unix等。

操作系统主要职能:

  • 管理系统硬件,软件,数据资源
  • 控制程序运行
  • 人机之间的接口
  • 应用软件与硬件之间的接口

内容提要:

  • 进程管理
  • 存储管理
  • 文件管理
  • 作业管理
  • 设备管理
  • 微内核

一、进程管理

进程的状态

一个系统进程可以简单分为三种状态:等待、就绪、运行。

image

等待状态:进程等待其成功的天时,地利,人和。

就绪状态:万事俱备,只欠东风。

运行状态:送东风(安排时间片并在该时间片内执行该程序,时间片用完,程序退回就绪状态)


一个实际的操作系统,进程的状态及其转换更为复杂。

image

什么是前驱图

以包饺子为例:

image

进程的同步与互斥

进程同步:散布在程序中的若干程序片段,按照规定的时间,协调完成程序运行。

进程互斥:同一时刻多个进程片段争夺一个运行资源(千军万马过独木桥)

同步是一种复杂的互斥,互斥是一种特殊的同步

PV操作

进入临界区时执行P操作(申请),退出临界区时执行V操作(释放)

  • 临界资源:系统中某些资源一次只允许一个进程使用,这样的资源称为临界资源。也叫共享资源或互斥资源。
  • 临界区:一个程序片段的集合,这些程序片段分散在不同进程中,对某个共享的数据结构(临界资源)进行操作。通俗地讲 就是访问临界资源的那段代码块。
  • 信号量:执行PV操作时要给定的值。

两道例题理解PV操作的应用:

image

image

死锁问题

一个进程在等待一件不可能发生的事(即永远发配不到运行资源)即进程死锁。

单个或多个进程产生死锁,就会造成系统死锁。

例题:

image

理解:

这是一个典型的最少资源求解问题。
我们可以先给三个进程个安排两个资源,这样三个进程就都在等待状态,这个时候,只需要安排一个资源个任意一个进程(如给A),A执行完毕后释放资源的资源完全足够剩下进程使用!这样2*3+1=7即最少分配资源

结论:

这类问题,假定有n个进程,每个进程需要k个资源,求最少资源解决死锁。对应公式为n*(k-1)+1。

死锁的预防与避免

造成死锁的四大条件:

  • 互斥
  • 保持和等待
  • 不剥夺
  • 环路等待

四个条件缺一不可!

要预防死锁,就要打破这四大条件。
即要有序资源分配法—常见的有“银行家算法”。

银行家算法

分配资源的原则:银行家算法

image

image

二、存储管理

分区存储

image

页式存储

用户程序划分成若干固定大小的区域,称为“页”;

内存空间分成若干个物理块,页和块的大小相等。

将用户程序的任一页放在内存的任一块中,实现了离散分配。

等分内存

内存空间被等分成若干物理块,也称为物理页;一般一个物理块取2的次幂大小,所有物理块从0开始编号,称为物理页号。

逻辑地址

系统将程序的逻辑空间按照同样大小也划分成若干页面,称为逻辑页面也称为页。程序的各个逻辑页面从0开始依次编号,称作逻辑页号或相对页号。

每个页面内从0开始编址,称为页内地址。程序中的逻辑地址由两部分组成:页号P和页内地址。

实现原理

image

优点:内存利用率高,碎片小,分配及管理简单。

缺点:增加了系统开销,可能产生抖动。

优点:

地址映射

逻辑地址 → 物理地址

给定一个逻辑地址和页面大小,如何计算物理地址?

1) 根据页面大小可计算出页内地址的位数

2) 页内地址位数结合逻辑地址计算出页内地址(即,块内地址)和页号

3) 页号结合页表,即可得出块号

4) 块号&块内地址即可得出物理地址

image

image

例题

image

段式存储

程序逻辑空间分为若干个具有完整逻辑意义信息的段。

内存空间为每一个段分配一个连续的分区。

与分页存储不同,段式存储的分段大小不是固定的,而是每一段都有完整的意义;例如分页是将一个人每隔10厘米切割,而分段则是按部位切割,如按头部、身体、腿部分段方式切割。

段内地址的位数可以决定段的大小。

逻辑地址 = 段号&段内地址

image

image

优点:多道程序共享内存,各段程序修改互不影响。

缺点:内存利用率低,内存碎片多。

地址映射

image

image

求基址的过程与页式存储中求块号的过程原理相同,这里需要注意的是,物理地址是基址+段内地址,而不是基址&段内地址,由逻辑地址得到段号、段内地址,再根据段号和段表求出基址,再由基址+段内地址即可得物理地址。

段页式存储

分页存储+段式存储

image

优点:空间浪费小、存储共享容易、存储保护容易、能动态链接。

缺点:由于管理的软件增加,复杂性和开销也随之增加,需要的硬件以及占用的内容也有所增加,使得执行速度大大下降。

页面置换算法

  • 最优算法(OPT)
  • 随机算法(RAND)
  • 先进先出算法(FIFO)(常用)
  • 最近最少使用算法(LRU)(常用)

image

三、文件管理

索引文件结构

image

image

文件和树型目录结构

文件属性

  • R 只读文件
  • A 存档文件
  • S 系统文件
  • H 隐藏文件

文件名组成

  • 驱动器号
  • 路径
  • 主文件名
  • 扩展名

一个树型目录结构

image

绝对路径:从盘符开始的路径
相对路径:从当前路径开始的路径
例如当前在D2盘,那D2盘的F5文件的绝对路径为: /D2/W3/F5;相对路径为
:W3/F5。

空闲存储空间管理

  • 空闲区表法(空闲文件目录)
  • 空闲链表法
  • 位示图法
  • 成组链接法

位示图

image

image

四、设备管理

数据传输控制方式

image

虚设备与spooling技术

image

五、微内核

image