软考中级软件设计师——操作系统

二、操作系统基本原理


一个操作系统包括:

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

进程管理:

进程状态

  1. 就绪状态
  2. 运行状态
  3. 等待状态

前趋图

前趋图解决顺序约束关系

进程的同步与互斥

PV操作

  • 临界资源

    在某一个时间点,只允许一个对象操作

  • 临界区

    是一段代码,访问临界资源的代码片段就叫做临界区

  • 信号量

    一种特殊的信号量,专门使用在pv操作中,类似于Java中进制之间通信的管程法

PV操作就是对进程的一种管理

p操作:

执行某一个进程之前先将信号量s-1,若结果为负数则阻塞它,加入等待队列。否则正常执行

v操作:

执行某一个进程之前先将信号量s+1,若结果不为正数,则唤醒它,否则正常执行

PV操作结合前趋图

首先会给出前趋图,然后让你补全线程的pv操作。

死锁问题:

进程之间相互抱锁而等待对方的锁的问题,类似于Java的死锁

死锁产生的四种条件:

  1. 资源互斥(这个资源不共享)
  2. 保持和等待
  3. 不剥夺
  4. 进程之间形成回路

打破四种条件之一即可解除死锁

避免死锁问题的产生:

  1. 有序的资源分配
  2. 银行家算法

存储管理:

分区存储组织:

  • 首次适应法
  • 最佳适应法
  • 最差适应法
  • 循环首次适应法

页式存储组织:

页式存储就是将内存等大小的分成一个个块。然后将用户程序等大小的分成一个个的页,将需要用到页调入内存允许,运行完后调出。不需要用到的页不调入内存。这中间需要用到页表来映射页和内存块之间的联系

优点是:利用率高,碎片小,分配管理简单

缺点是增加了系统的开销,可能发生抖动现象

例题:

image-20220313203828825

快表

image-20220313205735724

首先明确一点,在考试中约定指令虽然跨两个页,但是我们只计报缺页一次。

首先完全执行这个指令,需要访问6个页面,而访问页面需要查表也就是一个页面需要访问内存2次,总共访问12次.

缺页就是内存如果没有调入页面,但是需要访问时就会报一次缺页。指令只报一次,操作数跨两个页面报两次,总共就是5次

文件管理:

索引文件结构:
例题:

软考中级软件设计师——操作系统

首先,题目告诉我们0到4是直接索引那么这里就占了5个地址了,然后5号是一级索引大小为1kb每个地址项大小为4b。那么1kb/4b=256个地址项。加上前面的5个地址,就是261个,也就是说187号物理地址对应的是261的逻辑块号.101显而易见的是二级索引

文件和树形目录结构

绝对路径和相对路径

空闲存储空间的管理

将系统内存在的空闲内存区管理起来,方便之后的读和写的操作

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

设备管理:

数据传输控制方式

  • 程序控制方式
  • 程序中断方式DMA方式

虚设备和SPOOLING

简单来说就是队列的应用,当外设在执行某项任务时,你向外设传递的任务将会进入队列等待执行,提高外设的使用效率

微内核操作系统

将操作系统的各个部分分离开,将最核心的部分做成内核,各个部分不会相互影响。

  • 用户态
  • 内核态

来源:不不爱写博客

声明:本站部分文章及图片转载于互联网,内容版权归原作者所有,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2022年2月19日
下一篇 2022年2月19日

相关推荐