中断处理过程示意图_Linux中断处理

news/2024/11/23 0:47:27/

简介

1.基于Linux0.11代码进行分析。

2.中断类型分类以及具体的中断。

3.中断向量的注册。

4.中断处理流程。

5.各类型中断的具体执行流程。

中断的类型及具体的种类

Linux0.11内核注释

1.可屏蔽硬件中断。优先级较低,可以被忽略或者延后处理,通常有键盘,打印机。

2.不可屏蔽硬件中断。CPU必须无条件响应,优先级非常的高,通常有电源断电,内存校验错误。

3.软件中断--错误。缺页异常?内存访问时产生缺页异常中断,在中断处理程序中实际分配内存,然后在缺页中断处理完成后,继续访问内存。

4.软件中断--陷阱。常见的例子有系统调用,int 0x80,首先会调用中断处理程序,处理完成后,会继续执行后面的指令。

5.软件中断--放弃。常见的例子有除零,该错误发生后,调用中断处理程序,中断处理程序中会产生SIGFPE信号,程序可通过注册对应的信号处理函数处理该信号。

中断向量的注册

1.源码在head.s这个文件中。

2.0x20-0x2f是硬件中断,在head.s中初始化为ignore_int后,后续的硬件初始化过程中会初始化其中断处理函数。

3.中断向量存储在全局的中断向量数组结构中,该数组长度256,每个元素8个字节,在head.s文件中定义。在system.h文件中,定义了设置该数组的接口。代码如下:

// head.s

.al


http://www.ppmy.cn/news/834911.html

相关文章

中断处理过程示意图_ucore操作系统实验笔记 - Lab1

最近一直都在跟清华大学的操作系统课程,这个课程最大的特点是有一系列可以实战的操作系统实验。这些实验总共有8个,我在这里记录实验中的一些心得和总结。 Task1 这个Task主要是为了熟悉Makfile以及如何生成操作系统的镜像文件。Makefile会用就行了&…

Vi键盘图片可视化教程

内容目录: 分类: Linux&Unix

冯诺依曼体系结构示意图

计算机分为5大逻辑部件: 运算器,控制器,存储器,输入设备和输出设备 运算器和控制器统称为处理器,也就是CPU, 运算器负责算术运算和逻辑运算,控制器负责键盘, 鼠标等外部设备。 存储器:存储器包括外存储器和存储器,外存储器常见的有…

vi/vim命令键盘示意图

转载于:https://blog.51cto.com/wangmukun/236104

键盘上所有快捷键,看了你不后悔100% 有用

键盘上每个键作用!!! (史上最全的) F1帮助 F2改名 F3搜索 F4地址 F5刷新 F6切换 F10菜单 CTRL+A全选 CTRL+C复制 CTRL+X剪切 CTRL+V粘贴 CTRL+Z撤消 CTRL+O打开 SHIFT+DELETE永久删除 DELETE删除 ALT+ENTER属性 ALT+F4关闭 CTRL+F4关闭 ALT+TAB切换 ALT+E…

TestNG+Webdriver 页面自动化详解

最近学习了一下 TestNGWebdriver 的页面自动化,虽然中 间遇到了很多问题,也走了不少弯路,不过最终还是运行起来了。下 面就详细讲解一下,如何去配置环境及编写测试用例! 环境配置 1,eclipsejkd 的安装 这是基本的开发…

TCP 协议(一)报文结构

TCP 协议(一)报文结构 TCP 协议(二)连接与断开 TCP 协议(三)十种核心机制 TCP 提供面向连接的通信传输,面向连接是指在传送数据之前必须先建立连接,数据传送完成后要释放连接。无论…

Python -- 多任务、进程、线程

文章目录 多任务的介绍多任务的执行方式 进程进程的概念进程的作用进程的使用多进程获取进程编号 进程执行带有参数的任务介绍args参数和kwargs的使用 进程注意点进程之间不共享全局变量主进程会等待所有子进程执行结束再结束 线程介绍概念 线程的作用多线程的使用线程执行有参…