ARM结构-MMU

14天学习训练营导师课程:周贺贺《ARMv8/ARMv9架构-快速入门》

努力是为了不平庸~
学习有些时候是枯燥的,但收获的快乐是加倍的,欢迎记录下你的那些努力时刻(学习知识点/题解/项目实操/遇到的bug/等等),在分享的同时加深对于知识点的理解,同时吸收他人的奇思妙想,一起见证技术er的成长~
你可以从以下几个方面着手(不强制),或者根据自己对学习课程主题的理解创作,参考如下:

提醒:该文是学习周老师的课程随堂笔记,请知晓

学习知识点

1:系统里有多少个MMU?物理地址是多少位?虚拟地址是多少位?

2:Kernel Mode跑在高地址空间,user Mode 跑在低地址空间?

3:什么是MMU?

4:如何创建Entry?

5:AttrIndex是什么?指向attr0 ~ attr7

6:OS到底有几级页表?虚拟地址多少位?DTB多大?CPU访问的都是虚拟地址,CPU不关心数据真正存放的物理地址是哪里,CPU发出的虚拟地址需要由MMU翻译,然后在通过总线去回去真正的数据.

1:系统里有多少个MMU?物理地址是多少位?虚拟地址是多少位?

        ARM结构-MMU_第1张图片

 

2:Kernel Mode跑在高地址空间,user Mode 跑在低地址空间?

        硬件不限制地址空间的使用,而是软件配置决定的使用高地址位或者低地址位

        是Linux Kernel限制了不能map device的设备,应用程序只能map的地址区间[0 - 3G];

        ARM结构-MMU_第2张图片

ARM结构-MMU_第3张图片

 

3:什么是MMU?

        Memory Managerment Unit,包括两个部分TLB maintenance和address translation;

        ARM结构-MMU_第4张图片

 ARM结构-MMU_第5张图片

 

4:如何创建Entry?

        ARM结构-MMU_第6张图片

 

5:AttrIndex是什么?指向attr0 ~ attr7

        ARM结构-MMU_第7张图片

 ARM结构-MMU_第8张图片

 

6:OS到底有几级页表?虚拟地址多少位?DTB多大?

        ARM结构-MMU_第9张图片

 

个人学习计划

提示:可将你接下来的学习计划拆解成小目标,让学习更有计划和效率。

提醒:在发布作品前请把不用的内容删掉

你可能感兴趣的:(arm,架构)