免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2160 | 回复: 7
打印 上一主题 下一主题

help!问一下内核空间的线性映射问题...... [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2006-09-18 16:12 |只看该作者 |倒序浏览
新手问一个弱智点的问题,书上说内核空间3G~~3G+896M的空间都是和物理内存线性映射的,这样的话如果物理内存小于896M的话岂不是全部都映射到内核空间去了?那用户空间怎么办?
我知道我一定是哪里理解上出了问题,可是我实在想不通,郁闷很久拉.....
有没有谁可以帮我下,谢谢拉!
如果能顺带说下内核空间和用户空间到底怎么回事就更好了,呵呵

论坛徽章:
0
2 [报告]
发表于 2006-09-18 16:31 |只看该作者
一个物理地址可以同时有多个逻辑地址。用户空间用的PAGE即MAP了USER,也MAP了KERNEL。

论坛徽章:
0
3 [报告]
发表于 2006-09-18 16:41 |只看该作者

回复 2楼 思一克 的帖子

谢谢解答!
不过不太懂
这样的话内核空间对自己的数据进行保护要怎么办呢?还有,多个逻辑地址同时对这个物理页访问的话会不会冲突呢?同一时间一个PAGE只能存放一种数据吧?

论坛徽章:
0
4 [报告]
发表于 2006-09-18 18:01 |只看该作者
虽然物理内存被映射到了内核空间,但是这并不代表它只能被内核使用,这只是加快了内核中线性地址到物理地址的转换过程,可以直接定位,其实CPU一般并不直接使用物理地址,它使用页表对线性地址进行转换,所以最后决定该地址用在哪里是由页表决定的,你并不需要去管这些东西.

一个物理页可以被映射到多个页表中去.(共享内存就是通过这个原理实现的.

论坛徽章:
0
5 [报告]
发表于 2006-09-19 09:15 |只看该作者
原帖由 snow_insky 于 2006-9-18 18:01 发表
虽然物理内存被映射到了内核空间,但是这并不代表它只能被内核使用,这只是加快了内核中线性地址到物理地址的转换过程,可以直接定位,其实CPU一般并不直接使用物理地址,它使用页表对线性地址进行转换,所以最后决定该 ...

谢谢!有点理解了
因为我觉得这些基本的东西理解清楚的话是继续学习的基础,所以还是要再问下,能不能再说下“陷入内核”是什么意思呢?是不是陷入内核以后就是由内核在内核空间执行?或者是有些操作是用户空间不可以进行的,必须让内核代为执行?能不能给个例子,谢谢!

论坛徽章:
0
6 [报告]
发表于 2006-10-09 17:38 |只看该作者
陷入内核 比如说各种中断,CPU计算是产生的一些陷阱或者由8259发过来的硬中断都会使cpu从用户态转变为内核态。此时程序由用户栈转为相应程序的系统栈(一般和任务的task_struct同页),同时代码段指向系统代码段,开始执行内核相关处理代码。只有当系统的处理代码结束之后通过iret返回才会继续执行用户程序之后要执行的代码。(其中该用户的一些信号位有可能被置位)

论坛徽章:
0
7 [报告]
发表于 2007-01-05 16:29 |只看该作者
分段单元: 把进程映射到不同的 地址线性地址空间
分页单元: 把相同的线性地址空间映射到不同的 物理地址空间 (反过来也可以这么说: .............)

论坛徽章:
0
8 [报告]
发表于 2007-01-06 15:09 |只看该作者
原帖由 flyer_8601 于 2006-9-18 16:12 发表
新手问一个弱智点的问题,书上说内核空间3G~~3G+896M的空间都是和物理内存线性映射的,这样的话如果物理内存小于896M的话岂不是全部都映射到内核空间去了?那用户空间怎么办?
我知道我一定是哪里理解上出 ...


物理内寸的使用是动态的按需分配的,操作系统可以保证,默认启动后不会使用掉所有物理内存。然后,之后的事情就是动态的了,你说的情况不是不可能发生, 如果内核模块不节制的申请内存,当然可以耗尽大部分物理内存,同样的,用户程序如果不加节制,也会出现一样的状况。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP