免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12
最近访问板块 发新帖
楼主: ciedecem
打印 上一主题 下一主题

[内核入门] 内核态和用户态的区别 [复制链接]

论坛徽章:
0
11 [报告]
发表于 2012-12-27 16:49 |只看该作者
回复 8# bensenq


    貌似我说的跟楼主的意思,不在一个’平面‘。他说的优先级.......

论坛徽章:
1
狮子座
日期:2014-03-27 12:53:15
12 [报告]
发表于 2012-12-28 18:35 |只看该作者
回复 10# liuiang
谢谢你的回复,但是,我想更深层地理解它, 比如实现。
我也想用“os就是这么工作的,对application来说,是透明”来搪塞过去,但自欺欺人,比被人欺负更可悲吧

谢谢


   

论坛徽章:
0
13 [报告]
发表于 2013-01-10 15:43 |只看该作者
一个普通进程一般可以处于内核态和用户态,并且在创建它的时候就会给它分配2页框内核堆栈,当放生系统调用或者中断时,用户就会进入内核态,cs ds寄存器中存放着内核代码段和数据段,并且CPL也会相应改变。
之所以有内核态和用户态之分,我觉得是起保护作用,因为底层有很多复杂敏感的问题,是我们菜鸟们无法想到的。

论坛徽章:
0
14 [报告]
发表于 2013-01-21 17:44 |只看该作者
用户态和系统态的区别在于两方面:
1:一些指令必须在系统态执行,如设置CR3寄存器的的指令,IO指令
2:对地址空间访问的权限不一样,对运行在保护模式的程序,逻辑地址会经过MMU转换成物理地址,转换过程会进行权限检查,系统态和用户态具有不同的权限,有些地址只允许系统态访问。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP