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

二、操作系统基本原理


一个操作系统包括:

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

进程管理:

进程状态
  1. 就绪状态
  2. 运行状态
  3. 等待状态
前趋图

前趋图解决顺序约束关系

进程的同步与互斥
PV操作
  • 临界资源

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

  • 临界区

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

  • 信号量

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

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

p操作:

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

v操作:

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

PV操作结合前趋图

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

死锁问题:

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

死锁产生的四种条件:

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

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

避免死锁问题的产生:

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

存储管理:

分区存储组织:

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

页式存储组织:

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

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

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

例题:

在这里插入图片描述

页面大小为4k可以计算到页面位数为2的12次方,12次方就是页内地址的位数。逻辑地址是页号+页内地址,物理地址是块号+页内地址。一个十六进制位对应4个二进制位,那么5A29的后三位就是页内地址。

淘汰页号要查找访问位位0的页面

段式存储:

段式存储不需要等大小划分,它是按照程序的函数需要的内存大小来划分内存块,允许各个块有不同大小

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

缺点:内存利用率低,内存碎片浪费大

段页式存储:

image-20220313203828825

快表

image-20220313204043734

页面置换算法:

  • 最优算法OPT

  • 随机算法RAND

  • 先进先出算法FIFO

    产生抖动,淘汰最先进入内存的页面

  • 最近最少使用LRU

    不会产生抖动,淘汰最久没被访问的页面

淘汰算法例题:

image-20220313205735724

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

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

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

文件管理:

索引文件结构:
例题:

在这里插入图片描述

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

文件和树形目录结构

绝对路径和相对路径

空闲存储空间的管理

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

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

设备管理:

数据传输控制方式
  • 程序控制方式
  • 程序中断方式DMA方式
虚设备和SPOOLING

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

微内核操作系统

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

  • 用户态
  • 内核态
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值