摘要: crt0,S(_main)代码分析 1. 设置sp寄存器地址 2. 在栈中为全局变量gd分配空间 board_init_f_alloc_reserve函数原型如下: 3. 在栈中gd空间清零 board_init_f_init_reserve 函数定义如下: 4. 调用board_init_f,初始 阅读全文
posted @ 2017-08-03 20:02 gexin1023 阅读(861) 评论(0) 推荐(0) 编辑
摘要: 下半部笔记 1. 软中断 软中断实现 软中断是在编译期间静态分配,其结构如下所示,结构中包含一个接受该结构体指针作为参数的action函数。 在kernel/softirq.c中定义了一个包含32个结构体的数组,每个数组成员都是一个被注册的软中断,数组如下所示: 软中断处理程序 软中断处理函数act 阅读全文
posted @ 2017-08-03 20:01 gexin1023 阅读(336) 评论(0) 推荐(0) 编辑
摘要: 中断与中断处理 何为中断? + 一种由设备发向处理器的电信号 + 中断不与处理器时钟同步,随时可以发生,内核随时可能因为中断到来而被打断。 + 每一个中断都有唯一一个数字标志,称之为中断线(IRQ) + 异常是由软件产生,与处理器时钟同步。 中断处理程序 + 由内核调用来响应中断 + 运行于中断上下 阅读全文
posted @ 2017-08-03 19:59 gexin1023 阅读(699) 评论(0) 推荐(0) 编辑