内核中断体系概括

目的:

        1.硬件中断响应  >内核驱动中的中断

        2.系统调用的函数响应(system_call)  >系统调用 客制化

        3.自定义中断  >软件的软中断模式

        4.信号中断(kill -signal num)  >对了解信号的使用创建有帮助

        5.系统的异常和错误  >系统的异常获取 了解系统异常的作用

1.linux中断机制

1.1分类:硬件中断 软件中断

                硬中断:由电脑主机类似的硬件中断控制芯片发出的中断

                                ARM中断控制器发出的中断

                软中断:异常 第一类:CPU自行保留的中断

                                                        系统调用异常

1.2 代码结构   asm.s                   trap.c

                        system_call.s        fork.c signal.c exit.c sys.c

2.中断工作流程

2.1   回忆:

        做CPU工作模式的转换  

        进行寄存器的拷贝和压栈    

        设置中断异常向量表

        保存正常执行的函数返回值

        跳转到对应的中断服务函数上运行

        进行模式的复原已经寄存器的复原

        跳转回正常工作的函数地址继续运行

2.2 Linux中断工作流程:

        1.将所有的寄存器值入栈

        2.将异常码入栈(中断号)

        3.将当前函数返回值进行入栈

        4.调用对应的中断服务函数

        5.出栈函数返回值

        6.返回所有入栈的寄存器值

                                             中断前的处理过程、中断后的回复过程     中断的执行过程

        硬件中断的处理流程                       asm.s                                         trap.c

        软件及系统调用中断的处理流程     system_call.s                             fork.c signal.c exit.c sys.c

你可能感兴趣的:(linux内核,单片机,嵌入式硬件,1024程序员节)