免费注册 查看新帖 |

Chinaunix

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

关于内核页表映射到896M地址空间的问题 [复制链接]

论坛徽章:
0
11 [报告]
发表于 2006-02-22 17:25 |只看该作者
比如你机器是512M,那么从0xc0000000的512M内存都在KERNEL的固定影射之下,并且都在KERNEL的控制之下(时刻)。其中的页是要被换出的。注意是内容换出,物理页本身是换不出的(内存条插在那里,除非带电拔出---哈)
换出后做其它用。

论坛徽章:
1
荣誉版主
日期:2011-11-23 16:44:17
12 [报告]
发表于 2006-02-22 17:27 |只看该作者
原帖由 思一克 于 2006-2-22 17:25 发表
比如你机器是512M,那么从0xc0000000的512M内存都在KERNEL的固定影射之下,并且都在KERNEL的控制之下(时刻)。其中的页是要被换出的。注意是内容换出,物理页本身是换不出的(内存条插在那里,除非带电拔出---哈 ...


恩.明白了.多谢思兄.

论坛徽章:
0
13 [报告]
发表于 2006-02-22 18:11 |只看该作者
用kmalloc()分配的内存不可能被swapout,但是vmalloc()的内存是可以swapout的,所以如果需要分配大尺寸的内存空间,需要vmalloc()+set_page(reserved).

论坛徽章:
0
14 [报告]
发表于 2006-02-22 19:08 |只看该作者
我觉得lz有几个概念没有搞清楚。建议lz好好理解一下 物理地址,总线地址,用户虚拟地址,内核逻辑地址,内核虚拟地址的概念。

论坛徽章:
0
15 [报告]
发表于 2006-02-22 19:40 |只看该作者
原帖由 richardhesidu 于 2006-2-22 19:08 发表
我觉得lz有几个概念没有搞清楚。建议lz好好理解一下 物理地址,总线地址,用户虚拟地址,内核逻辑地址,内核虚拟地址的概念。


我主要是想问3G到4G的内核空间映射到物理地址上的情况,这是不是应该是按线性方式映射的呢,1G到3G的用户空间又怎么映射到物理空间上的呢

论坛徽章:
0
16 [报告]
发表于 2006-02-23 11:38 |只看该作者
原帖由 通用寄存器 于 2006-2-21 18:25 发表
小弟刚开始看ULK2,看到关于内核页表映射过程中,从3G开始到4G-128M的空间都映射到从物理地址0开始到内存结束处为止的物理页面上,那是不是说所有的物理内存都被内核页表映射了?而且是连续映射的?那小于3G地址的 ...


第一个回答是肯定的。linux的内存管理是基于页的,如果没有被页映射,怎么访问地到。而且是连续映射的。linux内核通过页->内存仓库->内存区->内存结点这些数据结构来管理内存。用户态的内存映射是通过sys_brk()和sys_mmap()系统调用进行的。

论坛徽章:
0
17 [报告]
发表于 2006-02-23 11:40 |只看该作者
原帖由 通用寄存器 于 2006-2-21 21:01 发表
是不是可以这样理解呢:从0xc0000000到0xffffffff-128M的内核空间确实是映射到0到896M的物理空间上,而且是通过特殊地初始化页表后进行的线性映射,但是物理内存被映射后不一定被分配,如果没有被内核分配,则可 ...


用户进程没有权力分配内存页,必须通过系统调用申请。

论坛徽章:
0
18 [报告]
发表于 2006-02-23 16:57 |只看该作者
原帖由 richardhesidu 于 2006-2-23 11:38 发表


第一个回答是肯定的。linux的内存管理是基于页的,如果没有被页映射,怎么访问地到。而且是连续映射的。linux内核通过页->内存仓库->内存区->内存结点这些数据结构来管理内存。用户态的内存映射是通 ...



问题是物理内存是被3G到4G-128M的虚存空间映射的,0-3G虚存空间怎么映射呢?

论坛徽章:
0
19 [报告]
发表于 2006-02-23 19:22 |只看该作者
原帖由 通用寄存器 于 2006-2-23 16:57 发表



问题是物理内存是被3G到4G-128M的虚存空间映射的,0-3G虚存空间怎么映射呢?


0-3G是用户空间,进程通过sys_brk()和sys_mmap()系统调用为自己的地址空间映射内存。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP