北航操作系统总复习

北航操作系统总复习

!!!本文完全原创,参照沃天宇老师课件,转载请注明出处

第一章 概论

1、操作系统定义:操作系统是一组管理计算机硬件资源的软件集合,它向计算机程序提供共性的服务。

2、批处理:把用户提交的作业成批送入计算机,由作业调度程序自动选择作业运行。作用:a)缩短作业之间的交接时间, b) 减少处理机的空闲等待,提高系统效率

3、单道程序:同一时间内存中只有一个程序。多道程序:内存空间中同时驻留多道程序。

在这里插入图片描述

4、分时:分时是指多个用户分享使用同一台计算机。多个程序分时共享硬件和软件资源。

5、网络操作系统:在传统单机OS上加单独软件层,主要提供联网功能和资源的远程访问,实现多机互联。分布式操作系统:多台机器统一管理形成单一系统,相比网络操作系统,对用户和应用高度透明(看不到也不需要看到)。实时系统:及时响应,高可靠性和安全性,专用系统。

6、冯诺依曼体系结构:存储程序式

7、操作系统的主要功能:处理机分配,存储器管理,设备管理,文件系统。

8、现代操作系统的基本特征:并发执行,资源共享(复用),虚拟化管理,不确定性事件的处理。

9、操作系统工作模式:内核态(管态),用户态(目态),切换过程:通过异常(陷阱或中断),进入内核态。

10、异常与中断:中断主要由I/O设备、处理器时钟或定时器等硬件产生,可以被启用或禁用。陷阱是用户进程中某一特定指令执行的结果,在相同条件下,异常可以重现。例如内存访问错误、调试指令以及被零除。

11、系统调用:提供操作系统服务的编程接口;与函数调用的区别:a) 用户态到内核态,切换堆栈 b)移植性差 c) 开销较大。过程:先跳转到异常分发代码,通过异常类型调用handle_sys函数根据系统调用号完成系统调用的实现。

12、操作系统内核:是一个操作系统的核心。它负责管理系统的进程、内存、设备驱动程序、文件和网络系统,决定着系统的性能和稳定性。通过异常来陷入内核态。

13、微内核:内核只完成不得不完成的功能,其他诸如文件系统、内存管理、设备驱动等的内容都被作为系统进程放到了用户态空间。好处:架构独立,减小系统耦合,增加可移植性。坏处:频繁系统调用效率难以保证。

第二章 操作系统引导

操作系统启动是一个逐渐释放灵活性的过程。

x86启动流程

1.打开计算机 2.CPU跳转到BIOS的物理地址 3.BIOS上电自检 4. 寻找需要启动的设备 5. 从MBR上加载执行启动程序 6. 加载OS

Linux

BIOS->MBR(Stage1)->GRUB(stage2)->Kernel->user_space

MBR

512字节,由Bootloader启动程序,分区表,还有0xAA55组成。

从 CPU 上电到操作系统内核被加载的整个启动的步骤

首先执行的是 BIOS 中的代码,主要完成硬件初始化相关的工作,然后 BIOS 会从 MBR中读取开机信息。

BIOS加载 MBR 中的Grub代码后就把CPU交给了Grub,Grub 的工作就是一步一步的加载自身代码,从而识别文件系统,然后就能够将文件系统中的内核镜像文件加载到内存中,并将CPU控制权转交给操作系统内核。这样看来,其实 BIOS 和Grub的前一部分构成了前述stage1的工作,而 stage2的工作则是完全在Grub中完成的。

在这里插入图片描述

第三章 存储管理

存储管理目标与功能

1、存储管理目标:a)地址独立:程序发出的地址与物理地址无关. b) 地址保护:一个程序不能访问另一个程序的地址空间。存储管理要解决的问题:分配和回收。

2、存储管理的功能:内存的分配与回收,地址转换(动静态重定位),存储共享与保护,内存容量扩充。

分区存储管理
  • 固定分区

    当系统初始化式,把存储空间划分成若干个任意大小的区域;然后,把这些区域分配给每个用户作业

    • 优点 :易于实现,开销小。
    • 缺点:内碎片造成浪费,分区总数固定,限制了并发执行的程序数目。
    • 分配方式:单一队列与多队列
  • 可变式分区

    分区的边界可以移动,即分区的大小可变。没有内碎片,但是有外碎片。碎片:内存中无法被利用的存储空间。外碎片:分区与分区之间的碎片,可以用紧凑技术消除外碎片。

    • 空闲空间管理:位图和空闲链表

    • 位图表示法:给每个分配单元赋予一个字位,字位取值为0表示单元闲置,取值为1则表示已被占用。

    • 链表表示法:由“标志位(空闲或程序)+起始地址+空间长度+链表指针”构成。

在这里插入图片描述

  • 基于顺序搜索的分配算法

    • 首次适应算法:从这个空白区域链的始端开始查找,选择第一个足以满足请求的空白块。

      低地址部分留下了很多很小空闲空间,增加了查找开销。

    • 下次适应算法:每次为存储请求查找合适的分区时,总是从上次分配的下一块开始,只要找到一个足够大的空白区,就将它划分后分配出去。

      使小空闲分区均匀分布,但会导致缺乏大空闲分区。

    • 最佳适应算法:总是寻找其大小最接近于作业所要求的存储区域(将空闲分区按容量递增排列)。

      留下许多小分区(碎片)。

    • 最坏适应算法:总是寻找最大的空白区(将空闲分区按容量递减排列)。

      当大作业来时,可能没有那么大的空间了。

页式存储管理
  • 页:在分页存储管理系统中,把每个作业的地址空间分成一些大小相等的片,称之为页面或页。
  • 存储块:在分页存储管理系统中,把主存的存储空间也分成与页面相同大小的片,
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值