操作系统的中断异常和系统调用

deusjin deusjin     2022-11-30     565

关键词:

操作系统的中断、异常和系统调用


中断

  • 硬件
    • 设置中断标记【CPU初始化】
      • 将内部、外部事件设置中断标记
      • 中断事件的ID
  • 软件
    • 保存当前处理状态
    • 中断服务程序处理
    • 清除中断标记
    • 恢复之前保存的处理状态

异常

异常编号

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

系统调用

应用程序调用printf(),会触发write()。

程序访问主要是通过高层次的api接口而不是直接进行系统调用。

  • win32 api 用于 Windows
  • POSIX api 用于 Unix,Linux,MacOSX
  • Java api 用于java虚拟机(JVM)
    • 其实也实现调用java api随后调用对应操作系统的api

操作系统如何完成系统调用(用户态到<--->内核态)

  • 通常情况,与每个系统调用相关的序号
    • 系统调用接口根据序号维护表的索引
  • 系统调用接口调用内核态中预期的系统调用
    • 并返回系统调用的状态和其他任何返回值
  • 用户不需要知道系统调用是如何实现的
    • 只需要获取API和了解操作系统讲什么作为返回结果
    • 操作系统接口细节大部分都隐藏在API中
  • 系统调用中,操作系统和应用程序的堆栈是不同的。

跨越操作系统便边界的代价

  • 在执行时间上的开销超过程序调用
    • 对应中断号,堆栈切换保存与恢复
  • 开销:
    • 建立 中断/异常/系统调用 号与对应服务例程映射关系的初始化开销
    • 建立内核堆栈
    • 验证参数
    • 内核态映射到用户态的地址空间
      • 更新页面映射
    • 内核独立地址空间
      • TLB



操作系统一3中断和异常,系统调用

操作系统第一章中断和异常中断的分类小结系统调用什么是系统调用?系统调用的作用系统调用与库函数的区别系统调用背后的过程小结中断和异常发生中断就意味着需要操作系统介入,开展管理工作。用户态->核心态... 查看详情

中断异常和系统调用

...备的交互       交互过程主要与操作系统的interface设计有关,面对外设,通过中断和IO进行处理;面对应用程序,通过系统调用,异常提供相应功能。           系... 查看详情

中断,异常,系统调用

...之后,应用程序可能会出现许多的奇奇怪怪的问题,但是操作系统本身就是为应用程序服务的,所以限制应用程序访问硬件资源和操作系统给应用程序提供服务之间就需要做出一个权衡中断:来自硬件设备的处理请求异常:非法... 查看详情

操作系统一3中断和异常,系统调用

操作系统第一章中断和异常中断的分类小结系统调用什么是系统调用?系统调用的作用系统调用与库函数的区别系统调用背后的过程小结中断和异常发生中断就意味着需要操作系统介入,开展管理工作。用户态->核心态... 查看详情

中断异常和系统调用

X86CPU对中断的硬件支持中断控制器的功能:把设备的中断信号,转换为CPU能够明白的中断向量。中断(interrupt)、陷阱(trap)、异常(exception)中断向量表中的项为门(gate),中断发生时,必须先通过这些门,才能进入相应的... 查看详情

课程学习总结报告(代码片段)

...ux系统概念模型1.概述linux系统是一个多用户多任务的分时操作系统,函数调用是操作系统的三大法宝之一,使 查看详情

操作系统王道考研2019第一章:计算机系统概述--中断和异常系统调用(陷入指令/trap指令/访管指令)

...调用,有何作用?系统调用是应用程序请求获得操作系统内核的服务的途径。2.3系统调用与库函数的区别系统调用是比库函数更底层的接口。2.4小例子:为什么系统调用是必须的?2.5什么功能要用到系统调用?... 查看详情

中断异常。系统调用

1.BIOS内存分为RAM和ROM(加电之后有原来写的内容,上电后的初始化代码在这里执行),BIOS的启动固件提供的功能包括:基本输入输出程序,系统设置信息,开机后自检程序,系统自启动程序2.系统... 查看详情

中断异常。系统调用

1.BIOS内存分为RAM和ROM(加电之后有原来写的内容,上电后的初始化代码在这里执行),BIOS的启动固件提供的功能包括:基本输入输出程序,系统设置信息,开机后自检程序,系统自启动程序2.系统... 查看详情

操作系统概述

---恢复内容开始---操作系统的概念、特征、功能和提供的服务1、定义:操作系统是控制和管理计算机软、硬件资源,以尽可能合理、高效的方法为不同用户及其应用程序提供服务的一种系统程序。2、特征:并发、共享、虚拟和... 查看详情

中断和异常的再总结

...自CPU执行指令以外的事件。如:I/O中断,时钟中断等。在操作系统层次上,我们多听到“异常”(Exception)而少见“中断”(Interrupt),且往往笼统地称其为异常,但处理器微体系结构规范通常会区分中断和异常。... 查看详情

socket与系统调用深度分析(代码片段)

...可以代表应用程序来执行该系统调用了。软件中断。Linux操作系统一般是通过软件中断从用户态切换到内核态。软件中断和我们常说的中断(硬件中断)不同之处在于,它是通过软件指令触发而并非外设引发的中断,也就是说,... 查看详情

操作系统—中断和异常

【操作系统】—中断和异常本章节思维导图如下一、中断的概念和作用本质:发生中断意味着需要操作系统介入开展管理工作,CPU会进入核心状态中断是CPU从用户进入状态的唯一途径二、中断的分类分类一分类二三、外... 查看详情

操作系统—中断和异常

【操作系统】—中断和异常本章节思维导图如下一、中断的概念和作用本质:发生中断意味着需要操作系统介入开展管理工作,CPU会进入核心状态中断是CPU从用户进入状态的唯一途径二、中断的分类分类一分类二三、外... 查看详情

中断和异常

...执行,系统资源利用率低为了解决上述问题,人们发明了操作系统,引入中断机制,实现了多道程序并发执行。本质:发生中断就意味着需要操作系统介入,开展管理工作中断的概念和作用当中断发生时,CPU立即进入核心态当中... 查看详情

计算机操作系统概述--操作系统的基本特征操作系统的基本功能系统调用宏内核与微内核中断(外中断异常陷入)

文章目录1.计算机操作系统概述1.1操作系统的基本特征1.1.1并发1.1.2共享1.1.3虚拟1.1.4异步1.2操作系统的基本功能1.2.1进程管理1.2.2内存管理1.2.3文件管理1.2.4设备管理1.3系统调用1.4宏内核与微内核1.4.1宏内核1.4.2微内核1.5中断分类ÿ... 查看详情

计算机操作系统概述--操作系统的基本特征操作系统的基本功能系统调用宏内核与微内核中断(外中断异常陷入)

文章目录1.计算机操作系统概述1.1操作系统的基本特征1.1.1并发1.1.2共享1.1.3虚拟1.1.4异步1.2操作系统的基本功能1.2.1进程管理1.2.2内存管理1.2.3文件管理1.2.4设备管理1.3系统调用1.4宏内核与微内核1.4.1宏内核1.4.2微内核1.5中断分类ÿ... 查看详情

操作系统的运行机制中断异常以及系统调用

一、操作系统的运行机制(一)程序是如何运行的?“指令”就是处理器(CPU)能识别、执行的最基本命令。注:很多人习惯把Linux、Windows、MacOS的“小黑框”中使用的命令也称为“指令”,其实这是... 查看详情