os之中断,异常,系统调用

Posted heartzhizi

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了os之中断,异常,系统调用相关的知识,希望对你有一定的参考价值。

计算机系统加载过程:

    bios:基本io系统调用

    disk:os存放在disk上

    bootloader:将os加载到内存中去

  计算机打开电源后,bios对计算机进行基本的检测(比如显卡,声卡,外设等),接着会找到磁盘里的BootLoader程序并执行BootLoader程序,BootLoader会将位于disk的os加载到内存中去;

1.首先中断是外设需要操作系统的支持,从而给出标记,CPU执行到这个标记的时候发现他是一个中断标记,根据这个标记查找到具体的中断服务例程,并执行,处理完以后再回到原来的程序接着执行;

2.异常:是应用程序执行过程中遇到的意想不到的事件,比如除0等,一般发生异常以后,也会一个异常表,根据异常表查找到发生异常之后需要的处理操作,处理结果有两种情况:异常应用程序被杀死,结束执行;异常处理完成,应用程序接着执行(从发生异常的指令开始);

3.系统调用:是应用程序主动调用操作系统的某个接口,让操作系统完成某项操作;一般win32和posix都提供了api供应用程序调用;系统调用最重要的部分牵涉到用户态和核心态的转换,就是应用程序在执行的时候CPU所处的状态是用户态,操作系统程序在执行的时候CPU所处的是核心态;相比较,用户态有一些机器执行没有权限执行;

以上是关于os之中断,异常,系统调用的主要内容,如果未能解决你的问题,请参考以下文章

操作系统内存分配

Linux(内核剖析):21---中断之中断上下文中断处理机制的实现/proc/interrupts

STM32之中断

linux驱动之中断处理过程汇编部分

嵌入式开发基础之中断管理

嵌入式开发基础之中断管理