首页 > 其他分享 >操作系统错题笔记

操作系统错题笔记

时间:2022-10-03 11:56:01浏览次数:55  
标签:调用 操作系统 中断 用户 笔记 保存 错题 指令 内核

  1. “访管”指令仅在用户态下使用,执行“访管”指令将用户态转变为核心态。因操作系统不允许用户直接执行某些“危险性高”的指令,因此用户态运行这些指令的结果会转成操作系统的核心态去运行。这个过程就是访管中断

  2. 中断处理流程的前三个步骤是由硬件直接实现(隐指令)的。地址映射中需要基地址(或页表)寄存器和地址加法器的支持。而在时钟管理中,需要硬件计数器保持时钟的运行。

    中断处理流程:

    1. 中断请求

      1. 每个中断源向CPU发出中断的时机是随机的;
      2. 内中断不能被屏蔽,外中断有可屏蔽和不可屏蔽之分
      3. 为了记录这些中断事件和区分不同的中断源,中断系统为每一个中断源设置了一个中断请求标志触发器。如果某个中断源发出了中断,就将相应的标志触发器置为1;
      4. 对于外中断,CPU统一在每条指令执行阶段结束前向中断控制器发出中断查询信号,去查询是否有中断请求要去处理。
    2. 中断判优先级

      1. 如果有多个中断源发出了中断请求。则需要根据中断优先级选择优先级高的中断请求先进行响应
      2. 中断默认优先级是由一个硬件排队器来实现的
      3. 但是中断屏蔽字可以动态改变中断优先级。
    3. 中断响应

      1. CPU向中断源发出中断响应信号
      2. 关中断
      3. 保存断电(PC)
      4. 找到中断服务的入口地址(中断向量)
    4. 中断服务

      1. 保存现场:通用寄存器和状态寄存器和屏蔽字
      2. 开中断
      3. 中断处理过程
      4. 关中断
      5. 恢复现场
      6. 开中断
      7. 中断返回
    5. 中断返回

      1. 回到断电处
      2. 恢复硬件
      3. 继续执行原程序
  3. 中断程序本身可能是用户程序,但是进入中断的处理程序一定是OS程序。若被中断的是用户程序,则系统将从目态转入管态,在管态下进行中断的处理;若被中断的是低级中断,则仍然保持在管态,而用户程序只能在目态下运行,因此进入中断处理的程序只能是OS程序。

  4. 计算机通过硬件中断机制完成由用户态到核心态的转换,核心态到用户态的转换是由操作系统程序执行后完成的。

  5. 广义指令只能在核心态执行,广义指令就是系统调用。要分清调用和执行的区别,调用可能在用户态,执行一定在核心态。

  6. 特权用户程序能够执行特权指令,这句话是的,只有操作系统程序可以。

  7. 下列选项中,不可能在用户态发生的事件是(C)。

    • 系统调用
      
    • 外部中断
      
    • 进程切换
      
    • 缺页
      

      1.系统调用可能在用户态和内核态发生,系统调用把应用程序的请求(用户态的请求)传入内核,由内核(内核态)处理请求并将结果返回给应用程序(用户态) 用户态->核心态

      2.中断的发生与CPU当前的状态无关,既可以发生在用户态,又可以发生在内核态,因为无论系统处于何种状态都需要处理外部设备发来的中断请求。

      3.进程切换在核心态下完成,不能发生在用户态。原因:需要调度处理器和系统资源,为保证系统安全?

      4.缺页(异常)也是用户态->内核态

      ABD(系统调用中断异常)都是用户态转向内核态,而进程切换只能发生在内核态

      所以选C进程切换

  8. 中断处理要保存而子程序不用保存的数据是PSW。因为子程序调用只需保存程序断点,即该指令的下一条指令的地址:中断处理不仅要保存断点(PC的内容),还要保存程序状态字寄存器(PSW)的内容。在中断处理中,最重要的两个寄存器是PC和PSW。

  9. 整数除以0会触发异常,会使得进程从用户态转向核心态

  10. 外部中断处理过程,PC值由中断隐指令自动保存,而通用寄存器内容由操作系统保存。

  11. 从用户态到内核态,系统调用、中断、异常

  12. 执行系统调用的过程如下:正在运行的进程先传递系统调用参数,然后由焰入(trap)指令负责将用户态转换为内核态,并将返回地址压入堆栈以备后用,接下来CPU执行相应的内核态服务程序,最后返回用户态。

  13. 当CPU检测到中断信号后会做些什么?由硬件自动保存被中断程序的断点(即程序计数器PC)。之后,硬件找到该中断信号对应的中断向量,中断向量指明中断服务程序入口地址(各中断向量统一存放在中断向量表中,该表由操作系统初始化)。接下来开始执行中断服务程序,包括保存PSW、保存中断屏蔽字、保存各通用寄存器的值,并提供与中断信号对应的中断服务,中断服务程序属于操作系统内核。

标签:调用,操作系统,中断,用户,笔记,保存,错题,指令,内核
From: https://www.cnblogs.com/mykaneki/p/16750238.html

相关文章

  • 操作系统银行家算法求安全序列
      图1  图2 由图2可知p1A项目总共要贷3万块钱,B项目要贷2万块钱,C项目要贷2万块钱,项目才能够启动。银行......
  • Map 笔记记录
    MapMap是一个存放二元Key-Value对的数据集合接口。在其中每个元素都对应于一个唯一的key,使用key可以获得对应的value。其有如下两个常用实现类:HashMapTre......
  • class 4 笔记
    intsum(intv,inttl,inttr,intl,intr){   if(r<tl||tr<l)       return0;   if(l<=tl&&tr<=r){       returnt[v];......
  • 0-1 bfs 学习笔记
    01bfs是一种可以在\(\mathcal{O}(n+m)\)时间求解只含有\(0\),\(1\)两种边权的单源最短路的算法。这种情形下效率比dijkstra更高,和dijkstra一样好写(甚至更好写一......
  • ABAP语法笔记08 - 事件2和GUI状态
    ATLINE-SELECTION."双击行的时候触发的事件一般用来跳转TOP-OF-PAGEDURINGLINE-SELECTION."双击行显示的次级表单的抬头执行逻辑 GETCURSORFIELDfi......
  • 专升本C语言笔记-2022-10-2
    变量名命名规则:1.变量名只能是英文字母(A-Z,a-z)和数字(0-9)或者下划线(_)组成。               2.第一个字母必须是字母或者下划线开头。 ......
  • Unix/Linux系统编程学习笔记-5
    笔记第十一章EXT2文件系统EXT2文件系统TheSecondExtendedFileSystem(ext2)文件系统是Linux系统中的标准文件系统,是通过对Minix的文件系统进行扩展而得到的,其存取......
  • 《程序员修炼之道:从小工到专家》阅读笔记三
    第二章:注重实效的途径生活在一个时间与资源有限的世界。七、重复的危害知识变化,对需求的理解与客户会谈发生变化,政策更改--维护上更花时间。维护:整个开发工程的例行事......
  • [学习笔记]darknet的部署和利用darkmark进行训练
    今天跟着学长来了解以下darknet的训练过程首先前置需求就是darknet,darkmark(可视化寻训练工具),darkhelp一、编译几个工具首先修改makefile文件GPU=1就是用gpu(不用我......
  • GMT画矢量和椭圆笔记
    GMT画矢量和椭圆笔记plot是GMT最常用的画图模块之一,输入数据的格式是x坐标y坐标方位角长度#画矢量时-SV选项对应的输入数据x坐标y坐标长轴方位角长轴长度短轴长......