2020.12.9 操作系统系统

系统软件 临界区管理的尝试 进程状态图 进程映像

I:属于系统软件的是?

答案:操作系统

系统软件是负责管理系统中各种独立的硬件。通俗的说就是能够直接控制硬件的。

硬件层负责提供各种可计算的资源,包括处理器,存储器,寄存器和各种I/O设备。

主要有操作系统,数据库系统,语言处理程序,支撑软件。

操作系统有dos,Windows。Unix,OS/2。操作系统负责管理各种各样的资源,包括处理器管理,文件管理,设备管理,存储器管理四项功能。

数据库系统

语言处理程序比如汇编语言汇编器,C语言编译器,连接器等等。

支撑软件,也叫系统辅助处理程序。主要有编辑程序,调试程序,装备和连接程序。

II:临界区管理只能通过软件管理?

答案:错误

临界区管理的软件算法:Perterson算法。

先开始不谦让,最后进去的时候再谦让一把

// peterson 算法
inside[0]=false;inside[1]=false;
enum{0,1} turn;
cobegin;
process PO(){inside[0]=true;turn=1;while(inside[1] && turn==1);临界区inside[0]=false;
}process P1(){inside[1]=true;turn=0;while(inside[0] && turn==0)临界区inside[1]=false;
}

临界区管理的硬件设施:第一 关中断 第二 测试并建立指令 第三 对换指令

在单处理器计算机系统中,并发程序不能同时执行,只会交替的执行。为了保持互斥性,仅仅需要保证进程不被中断。而我们主要有两种方式来实现临界区管理,一种是关中断,还有一种是测试并建立指令。

  • 关中断。在进程进入临界区时关中断,在进程退出临界区时开中断
  • 测试并建立指令。用硬件所提供的“测试并建立”机器指令(Test and Set),可以把这一条指令看做是函数。由于TS指令是不可分割的指令,所以可以保证临界区管理的正确性。
bool  TS(&x){if(x){x=false;return true;}else{return false;}
}
//处理程序
bool s=true;
cobegin
void process(){while(!TS(x));临界区s=true;
}
coend
  • 对换指令,交换两个字之间的内容

在IntelX86中,对换指令被称之XCHG

void swap(bool &a, bool &b){bool temp=a;a=b;b=temp;
}
//处理程序
// lock =false 表示现在没有程序
bool lock=false;
cobegin
void process(){bool s=true;do{swap(&s,&lock);}while(lock);临界区swap(&s,&lock);
}

III:进程的调度

答案:在分时系统中,一个正在运行的进程的时间片如果终结,那么该进程会转入就绪状态。

进程是对处理器的抽象

文件是对设备的抽象

虚存是对主存的抽象

三态模型

五态模型:添加了new 和exit 终止态

七态模型:增加两个挂起状态,将挂起的进程放到磁盘中

  • 画图 先画出三态图,然后再画出终止态(从运行态指出去),再画出挂起就绪态,和挂起等待态(和挂起态和就绪态是双向,同时挂起等待也有指向挂起就绪,运行也有指向挂起运行态,)最后是新建态,有两个提交指向就绪态。

进程的描述和组成

(1) 进程的映象

由于进程的状态在不断的发生改变,某时刻进程的内容及其状态的集合被称为进程映象(process image),包括以下的一些元素:

  • 进程控制块PCB
  • 进程程序块
  • 进程核心栈
  • 进程数据块 进程控制块是进程的私有地址空间,存放各种私有数据,用户栈也要在数据块中开辟,用于函数调用时候存放栈帧,局部变量等参数。(堆)

如果只具体前面的三条,而共享用户地址空间。那么就称为“用户进程”,如果完全没有用户空间,那么就称为”内核线程“。

2020 操作系统第一天复习(习题总结)相关推荐

  1. 2020 操作系统第二天复习(习题总结)

    I:分时系统的响应与下列的哪一个因素无关 1.2.4 操作系统的发展和分类 ​ 分时系统 ​ 分时系统指的是允许多个联机的用户同时使用一个计算级系统进行交互式设计的操作系统.系统把处理的时间分为时间片 ...

  2. 2020 操作系统第三次习题

    1 静态重定位的时机是程序装入时 静态重定位是在目标程序装入内存的时候,由装入程序对于目标程序进行修改,也就是将程序的逻辑地址转化为实际的地址. 动态重定位:在程序执行期每次访问内存之前进行重定位,这 ...

  3. 通信电子电路(二十) 第一章复习+习题讲解

    第一章节就是LC谐振回路,主要用于选频,比如我想让电压信号在f0f_0f0​处达到最大,就让谐振回路的阻抗达到最大值,这样根据U=IR→Um=IZmU=IR\to U_m=IZ_mU=IR→Um​=I ...

  4. 华文慕课北大操作系统第一章课后习题解析

    1.(5分) 下列关于操作系统的叙述中,哪一个是错误的? A. 操作系统管理着计算机系统中的各种资源 B. 操作系统应为用户提供良好的界面 C. 操作系统是计算机系统中的一个应用软件 D. 操作系统向 ...

  5. 北京理工大学操作系统复习——习题+知识点

    文章目录 传送门 前言 ppt习题+课后习题汇总 第1章 操作系统概论 操作系统性能指标计算 第2章 进程管理 进程调度算法 课后2-9:最短作业优先 课后2-12:四种算法比较 课后2-13:轮转与 ...

  6. 操作系统王道考研复习——第一章(计算机系统概述)

    操作系统王道考研复习--第一章(计算机系统概述) 计算机系统概述 1.1操作系统的基本概念 1.1.1 操作系统的概念 1.1.2 操作系统的特征 1. 并发 2. 共享 3. 虚拟 4. 异步 1. ...

  7. 操作系统——精髓与设计原理 第一章复习题习题

    操作系统--精髓与设计原理 第一章复习题&习题 复习题 1.1 列出并简要地定义计算机的四个主要组成部分 1.2定义处理器寄存器的两种主要类别 1.3一般而言,一条机器指令能指定的四种不同的操 ...

  8. 操作系统--第一章 操作系统引论--习题答案

    操作系统第四版课后的全部习题答案,学习通作业答案. 说明:操作系统其他章节的习题答案也在此"操作系统"专栏. 第一章 1.设计现代OS的主要目标是什么?== 答:(1)有效性 (2 ...

  9. 高三数学第一轮复习:对数与对数函数_习题含解析

    本文作者:vxbomath 大家好,今天分享高中数学函数知识点中对数与对数函数习题解析,通过习题讲解更全面的掌握考点重点.希望能够帮助到高三数学第一轮复习同学. 一.填空题 二.选择题 三.解答题 好 ...

最新文章

  1. 新手用python2还是3-Python 使用情况调查:2还是3?(附致歉声明)
  2. 18年总结及19年展望
  3. C# Combobox联动
  4. Python中的__init__和self是做什么的?
  5. LeetCode Solutions : Reorder List
  6. 今日测试:javascript笔试最常见的一道题
  7. 矩阵的特征向量和特征值
  8. Python精确指南-第一章环境
  9. leetcode python3 简单题83. Remove Duplicates from Sorted List
  10. c语言程序功能实现不了,请高手帮忙看看我的程序,编译不报错,但是实现不了功能...
  11. Python得到字符的阿斯克码值 chr ord
  12. ORACLE的SQL练习---7. 拼接字符串
  13. 宽带波形测试软件,适用于5G时代的波形测试分析系统是怎样的? - 全文
  14. npm安装ionic相关设置
  15. mapgis坡度分析_基于MAPGIS的空间分析.pdf
  16. 【量化】资产组合理论:鸡蛋不能放在一个篮子里
  17. 学成在线-第13天-讲义-在线学习 HLS
  18. 三极管/达林顿管 管脚定义
  19. 五万字 | Hive知识体系保姆级教程
  20. logback出现大量XXX_IS_UNDEFINED日志文件的问题

热门文章

  1. fopen、_wfopen临时
  2. 排序字段设计_「原创」第四章、模型设计
  3. 命名空间跟作用域是什么关系_乔丹跟科比什么关系?他们是亲密朋友,但并未对外公开...
  4. 鸿蒙比不了IOS,比苹果的iOS14还流畅,华为鸿蒙2.0可以啊!
  5. Python-OpenCV 笔记2 -- 图像的基本属性和操作
  6. vb.net2019- 机器学习ml.net情绪分析(2)
  7. 【NLP】NLP任务增强:通过引入外部知识来提供额外信息
  8. 【NLP傻瓜式教程】手把手带你HAN文本分类(附代码)
  9. 一文看尽10篇目标检测最新论文(SpineNet/AugFPN/LRF-Net/SABL/DSFPN等)
  10. 一文读懂图卷积GCN