计算机操作系统(基础篇)-调用、异常、中断

调用、异常、中断

对比

  • 系统调用:应用程序主动向操作系统发出服务请求(来源:应用程序)
  • 异常:非法指令或者其他坏的处理状态(来源:应用程序意想不到的行为)
  • 中断:来自不同的硬件设备的计时器和网络的中断 (来源:外设)
概念来源处理时间响应
调用应用程序主动向操作系统发出服务请求应用程序异步或同步等待和持续
异常非法指令或者其他坏的处理状态应用程序意想不到的行为同步杀死或者重新执行意想不到的应用程序指令
中断来自不同的硬件设备的计时器和网络的中断外设异步持续,对用户应用程序是透明的

过程

中断

  • 硬件
    • 设置中断标记
      • 1.将内部、外部事件设置中断标记
      • 2.中断事件ID
  • 软件
    • 保存当前处理状态
    • 中断服务程序处理
    • 清除中断标记
    • 恢复之前保存的处理状态

异常

  • 保存现场
  • 异常处理
    • 杀死产生了异常的程序
    • 重新执行异常指令
  • 恢复现场

系统调用

  • 例子:应用程序调用printf(), 会触发系统调用write()
  • 程序访问主要是通过高层次的API接口而不是直接进行系统调用
  • 通常情况下,与每个系统调用相关的序号,系统调用接口根据这些序号来维护表的索引
  • 系统调用接口调用内核态中预期的系统调用,并返回系统调用的状态和其他任何返回值
  • 用户不需要知道系统调用是如何实现的,只需要获取API和了解操作系统将什么作为返回结果,
    操作系统接口的细节大部分都隐藏在API中
  • 用户态 内核态

中断

概念与作用

  • 当中断发生时,CPU立即进入核心态
  • 当中断发生时,当前运行的进程暂停运行, 并由操作系统内核对中断进行处理
  • 对于不同的中断信号,会进行不同的处理
  • 发生中断,就意味着需要操作系统介入,开展管理工作,由于操作系统的管理工作需要使用特权指令,因此CPU从用户态转为核心态,中断可以使用户态切换为核心态,使操作系统获取计算机的控制权。有了中断,才能实现躲到程序的并发执行
  • 用户态到内核态的转化是通过中断实现的,并且中断是唯一途径
  • 核心态到用户态的转化是通过执行特权命令,将程序状态字的标志位设置成用户态

分类

  • 第一种分类
    在这里插入图片描述
  • 第二种分类
    在这里插入图片描述

系统调用

  • 系统调用是操作系统提供给应用程序使用的接口,可以理解为一种可供应用程序调用的特使函数,应用程序可以发出系统调用请求来获取操作系统的服务
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值