深入理解Linux内核
ucan23
没有什么特长,但能吃苦。
展开
-
中断和异常
同步中断和异步中断:同步中断(异常)是当前指令执行时由CPU控制单元产生的,之所以称为同步,是因为只有在一条指令终止执行后CPU才会发出中断。异步中断(中断)是由其他硬件设备依照CPU时钟信号随机产生的。1、中断信号的作用:2、中断和异常:(1)中断:可屏蔽中断和非屏蔽中断(2)异常: 1)处理器探测异常:故障、陷阱、异常终止 故障原创 2015-05-11 08:43:50 · 998 阅读 · 0 评论 -
内核同步
1、内核如何为不同的请求提供服务(1)内核抢占:如果一个进程还在处理一个异常的时候,分配给它的时间片到期了,会发生什么事情呢?这取决于有没有启用内核抢占(Kernel Preemption),如果没有启用,进程就继续处理异常,如果启用了,进程可能会立即被抢占,异常的处理也就暂停了,直到schedule()再度选择原先那个进程(注意:内核处理中断的时候,必然会禁用内核抢占,所以这里才说是异常)。原创 2015-05-11 08:46:34 · 809 阅读 · 0 评论 -
进程调度
一、调度策略传统上把进程分类为“I/O受限”或“CPU受限”,另一种分类法为:交互式进程、批处理进程、实时进程。二、调度算法1、普通进程的调度 内核使用从100(最高优先级)到139(最低优先级)的数表示普通进程的静态优先级。(1)基本时间片2)动态优先级和平均睡眠时间bonus是范围从0~10的值,值小于5表示降低动态优先级以示原创 2015-05-11 08:50:41 · 910 阅读 · 0 评论 -
内存管理
整个系统的性能取决于如何有效地管理动态内存。一、页框管理1、页描述符2、非一致内存访问(NUMA)3、内存区(Memory Zone)ISA总心啊的直接内存存取(DMA)处理器有一个严格的限制:它们只能对RAM的前16MB寻址。在具有大容量RAM的现在32位计算机中,CPU不能直接访问所有的物理内存,因为线性地址空间太小。 Linux把内存节点的物理内存划分原创 2015-05-11 08:58:24 · 745 阅读 · 0 评论 -
信号
一、信号的作用 使用信号的目的是: 让进程知道已经发生了一个特定的事件强迫进程执行它自己代码中的信号处理程序 常规信号1-31 实时信号32-64 内核区分内核信号传递的两个不同的阶段: 信号产生、信号传递 每个被产生的信号至多被传递一次。信号是可消费资源。1、传递信号时所执行的操作 SIGKILL原创 2015-05-11 09:01:22 · 1030 阅读 · 0 评论