1.进程管理
内核通过task_struct管理进程。
2.进程调度
1.可执行队列runqueue。
2.用户抢占。从中断返回或者系统调用返回的时候发生。
3.系统调用
1.系统调用参数放在寄存器里传过去。
2.系统调用上下文。在执行系统调用的时候处在进程上下文。
4.中断
1.系统通过中断与外部硬件打交到。
2.中断号注册中断用函数request_irq注册,通过free_irq释放。CUP上的中断可以被禁止,也可以被激活。另外,某一个中断线也可以被禁止或者激活。
5.下半部
1.软中断,通过软中断实现下半部。软中断随时都可能执行。
2.tasklet 同一个tasktlet不可能同时执行。但是软中断可能。
6.同步
1. 原子操作。
2. 自旋锁
3. 互斥量
4. 信号量
6. 完成变量
7. 禁止抢占 单处理器上的数据需要保护时,只需要禁止抢占就可以了。
8. 禁止中断