90
4081
1万
资深工程师
使用特权
952845d23f1be2c99d.png (57.55 KB )
下载附件
2019-7-9 09:45 上传
110235d23f1e53c642.png (31.36 KB )
2019-7-9 09:46 上传
971705d23f1faf2c8b.png (50.5 KB )
下图中是arm支持的几种页表大小一级每种页表可以管理的内存单元数量。
70.jpg (51.95 KB ) 下载附件 2019-7-9 09:47 上传
70.jpg (51.95 KB )
2019-7-9 09:47 上传
通常使用段式页表作为一级页表,使用页式式页表作为二级页表。
在关闭了子页(subpages)功能后可以使用下面三种作为一级页表。
下图分别是超级段,和段以及粗页表的描述。
70.jpg (66.84 KB ) 下载附件 2019-7-9 09:48 上传
70.jpg (66.84 KB )
2019-7-9 09:48 上传
粗页以1k为单位管理页表,段以1M为单位管理页表,超级短以16M为单位管理页表。
上面三者都可以作为一级页表使用。
从上图我们可以看到,超级页表可以管理40位数据宽度也就是1T容量的内存。主要是为64位系统而发明的。
结合上下图的描述我们可以看到,supersection和section是通过bit18来区分的。
段和页的区分是有bit【0,1】来区分的。
70.jpg (118.2 KB ) 下载附件 2019-7-9 09:48 上传
70.jpg (118.2 KB )
在使能子页(subpages)功能后,可以使用下面二种作为一级页表。
70.jpg (48.75 KB ) 下载附件 2019-7-9 09:49 上传
70.jpg (48.75 KB )
2019-7-9 09:49 上传
下图是使用一级页表后,地址的转换过程图。(以段式页表为例)
70.jpg (61.62 KB ) 下载附件 2019-7-9 09:49 上传
70.jpg (61.62 KB )
70.jpg (108.93 KB ) 下载附件 2019-7-9 09:51 上传
70.jpg (108.93 KB )
2019-7-9 09:51 上传
一级页表做粗页表用的比较少,这里就不分析了
70.jpg (72.66 KB ) 下载附件 2019-7-9 09:52 上传
70.jpg (72.66 KB )
2019-7-9 09:52 上传
二级页表主要有两种
大页表,每页管理64k
小页表,每页管理4k
70.jpg (91.04 KB ) 下载附件 2019-7-9 09:53 上传
70.jpg (91.04 KB )
2019-7-9 09:53 上传
和一级页表一样,使能或不使能subpages分为两种情况
70.jpg (87.4 KB ) 下载附件 2019-7-9 09:53 上传
70.jpg (87.4 KB )
前面包括一级页表都没有说,页表没一项的内容,这里统一说明一下。
70.jpg (84.35 KB ) 下载附件 2019-7-9 09:53 上传
70.jpg (84.35 KB )
发表回复 本版积分规则 回帖后跳转到最后一页
1
扫码关注 21ic 官方微信
扫码关注嵌入式微处理器
扫码关注21ic项目外包
扫码关注21ic视频号
扫码关注21ic抖音号
本站介绍 | 申请友情链接 | 欢迎投稿 | 隐私声明 | 广告业务 | 网站地图 | 联系我们 | 诚聘英才 | 论坛帮助
京公网安备 11010802024343号