ULK一周总结(2008-07-20)

上一篇 / 下一篇  2008-07-20 15:32:15

这周也没看多少,不知道我还能坚持多久
1. Linux中进程硬件上下文一部分存在TSS段,一部分存

在内核态堆栈中。
2. Linux不使用硬件上下文切换,但仍为每个CPU创建一

个TSS,因为(1)CPU从用户态切换到内核态时,需从TSS中

取内核态堆栈的地址(2)I/O许可位图存在TSS中,硬件上

下文被保存在thread_struct中。
3. 在硬件上下文切换时设置cr0寄存器中的TS标志,当执

行ESCAPE、MMX、SSE或SSE2指令且TS被设置时,产生异常

,用异常处理程序加载浮点寄存器(懒加载)
4. Linux进程:(1)写复制使父子进程读相同的物理页,

写却并不冲突(2)轻量级进程允许父子进程共享内核数据

结构(3)vfork父子进程共享内存地址空间且阻塞父进程。
几个重要的函数:clone,do_fork,copy_process,do_group_exit,do_exit,release_task。
5. CPU产生的称同步中断,也叫异常;硬件产生的称异步中断,也叫中断;
中断:    可屏蔽的,屏蔽时控制单元忽略它
    非屏蔽的,CPU来辩认
异常:
    处理器探测异常
        故障:可以纠正,重新执行产生故障的指令        陷阱:重新执行下一条指令
        异常中止:只能中止
    编程异常:(软中断)用途:(1)系统调用(2)报告调试程序
非屏蔽中断和异常的向量是固定的,可屏蔽中断的向量是可设置的
中断的约束:(1)只处理必须的尽快完成(2)尽可能支持终端嵌套(3)关中断,尽可能少禁止的中断不能丢失
6. IRQ线的个数,限制为15个
APIC:I/O高级可编程控制器
IPI处理器间中断,被Linux用来在SMP的CPU间交换信息


TAG: Linux Kernel

 

评分:0

我来说两句

显示全部

:loveliness: :handshake :victory: :funk: :time: :kiss: :call: :hug: :lol :'( :Q :L ;P :$ :P :o :@ :D :( :)

我的栏目

日历

« 2008-12-03  
 123456
78910111213
14151617181920
21222324252627
28293031   

数据统计

  • 访问量: 349
  • 日志数: 10
  • 建立时间: 2008-06-14
  • 更新时间: 2008-07-21

RSS订阅

Open Toolbar