Chinaunix首页 | 论坛 | 博客
  • 博客访问: 480968
  • 博文数量: 144
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 508
  • 用 户 组: 普通用户
  • 注册时间: 2014-09-10 13:18
个人简介

Keep looking Donot settle

文章分类

全部博文(144)

文章存档

2019年(1)

2016年(31)

2015年(51)

2014年(61)

分类: LINUX

2015-01-07 14:30:47

原文地址:进程内核模式 作者:zimang

   内核模式代码无限制的访问所有处理器指令集、全部内存和I/O空间,如果用户模式进程也想,则需要通过系统调用请求内核代码。用户模式代码允许page fault,内核模式代码不允许。

      在2.4及先前的内核中,仅有用户模式进程允许上下文切换,并被其他进程替代,而内核模式代码则垄断CPU直到它自身自动放弃CPU或有中断或异常发生。 在2.6引入了内核抢占后,大多数内核模式代码也可以上下文切换了。

      内核代码服务于系统调用运行于所代表用户进程的进程上下文,而中断服务程序则运行于中断上下文。进程上下文和中断上下文互相不联系。

      运行于进程上下文的内核代码可被抢占,而运行于中断上下文的不可被抢占,一直运行到结束。因此在中断上下文中不能做以下的事情:

      (1)睡眠或放弃处理器;(2)请求一个mutex;(3)执行耗时的任务;(4)访问用户空间虚拟内存

阅读(740) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~