操作系统期末复习总结(简答题)

什么是操作系统?

在这里插入图片描述
作为扩展机器
这是自上而下的观点;隐藏硬件真相,将硬件转为抽象,抽象比硬件要简单和易于使用;将硬件细节与用户隔离开,用户无需关心硬件如何工作

作为资源管理器
在相互竞争的程序间,控制和协调资源分配,充分发挥各种资源的作用;允许多个程序同时运行;实现时间及空间的资源复用

操作系统的功能

提供抽象和管理计算机资源,用户程序与OS之间的主要交互通过抽象完成

  1. 进程管理:系统采用调度算法合理分配任务
  2. 存储管理:数据存储方式和组织结构
  3. 文件管理
  4. 作业管理:人机交互、图形界面或系统任务的管理
  5. 设备管理:内核和外围设备的数据交互
  6. 中断处理、错误处理

系统调用

系统调用是用户与操作系统间的接口,从用户态切换到内核态
系统库可调用操作系统,执行硬件指令
应用程序可以调用系统库和操作系统,执行硬件指令
在这里插入图片描述
在这里插入图片描述

中断及作用

中断是实现多道程序操作系统的前提,用于改变CPU状态,是一种充分利用系统资源解决响应速度和运行效率的控制技术。CPU 暂停正在执行的程序,保留现场后自动转去处理相应的事件,处理完该事件后再返回断点,继续完成被打断的程序。
由硬件软件共同完成,分为强迫性中断与自愿性中断

进程状态

运行态
进程占有CPU,并在CPU上运行。
就绪态
进程已经具备运行条件,因无CPU暂时不能运行的状态,存在多个就绪态进程
阻塞态
进程因等待某种事件的发生而暂时不能运行的状态,即使CPU空闲,该进程也不可运行。处于阻塞状态的进程可以有多个。
在这里插入图片描述

PCB

包含信息
进程管理:寄存器、计数器、状态字、进程id、调度参数、时间
存储管理:数据段指针、堆栈段指针、代码段指针
文件管理:目录,用户及组id,描述符

描述进程的基本信息和运行状态,记录了OS控制和管理进程的所需的所有信息。
PCB是进程存在的唯一标志,操作系统根据PCB管理进程

信号量及PV操作

PV原语不可分割,不能被中断
信号量:s s.value(计数) s.queue(进程等待队列)
利用信号量s的取值表示共享资源的使用情况,协助进程间交换信息
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

内存管理

位图:内存被划分成分配单元,分配单元对应于位图中的一位,0表示空闲,1表示占用。
占有K个分配单元的进程调入内存时,存储管理器搜索位图,在位图中找出有K个连续0的内存分配单元。
链表:维护一个记录已分配和空闲内存段的链表,一个结点为一个进程,或是进程间的空闲区。表中的每一项都指定了如下内容:空闲区(H)还是进程§、起始地址、长度以及指向下一项的指针。当有新进程或换入时,有以下四种分配算法:首次适应算法、循环适应算法、最佳适应算法、最坏适应算法

在这里插入图片描述
在这里插入图片描述
段式存储
程序通过分段划分为多个段,如代码段、数据段、共享段,一个段构成一个独立的地址空间。每个段的长度可以不同,且可动态增长及进行共享。
优点:便于动态申请内存、共享与保护和动态链接
缺点:进程全部装入内存
段表:记录逻辑段与内存物理段之间的对应关系

段页式
程序的地址空间划分成多个拥有独立地址空间的段,每个段上的地址空间划分成大小相同的页。这样既拥有分段系统的共享和保护,又拥有分页系统的虚拟内存功能

页式段式比较
分页透明,但是分段需要程序员显式划分每个段。
分页是一维地址空间,分段是二维的。
页的大小不可变,段的大小可以动态改变。
分页主要用于实现虚拟内存,从而获得更大的地址空间;分段主要是为了使程序和数据可以被划分为逻辑上独立的地址空间并且有助于共享和保护

虚拟存储

局部性原理表现
程序在执行过程中的一个较短时期,所执行的指令地址和操作,分别局限于一定区域。表现为时间局部性和空间局部性
时间局部性:程序中某指令或数据被执行或访问,不久后可能再次执行或访问。产生原因为程序中存在着大量循环操作
空间局部性:程序在一段时间内访问的地址可能集中在一定范围之内
虚拟内存技术建立了“内存-外存”两级存储结构,利用局部性原理实现高速缓存

I/O

机械部分:设备本身
电子部分:即设备控制器,用总线相连,由寄存器及缓冲区与CPU通信,完成设备与主机间连接和通信

设备寄存器:设备控制器与CPU数据交互
控制器寄存器:操作系统将命令写入控制器寄存器中,以实现I/O
状态寄存器:CPU通过读控制器的状态寄存器中的信息,获得操作结果和设备状态
三种编址方式:IO独立编址、内存映像编址、混合编址

文件四种分配方式

连续分配
在磁盘上分配一组连续的块来存储文件,实现简单,操作性能好,但容易出现大量碎片

链表分配
为每个文件构造磁盘块链表,每个块的第一个字作为指向下一块的地址,其他部分存放数据。
随机存取缓慢,运行效率低

在内存中采用表的链表分配
取出每个磁盘块的指针字,放入内存中的一个表中

i节点(索引分配)
把链接分配的指针集中顺序存放在一个块中,在这个块中按照地址依次访问,也可通过偏移量访问

发布了9 篇原创文章 · 获赞 0 · 访问量 3304

猜你喜欢

转载自blog.csdn.net/Akanemiku/article/details/104211976
今日推荐