对于想理解mmu的软硬件所有机制的人来说,理解mmu很蛋疼,就和理解网卡工作一样疼!一点点来吧。
首先,‘’页‘’是实际物理内存管理的基本单位,“页”的大小和体系结构相关,大多数32位机器支持4KB大小的页,1G内存就被分成262144个页,64位的一般支持8KB大小的页。
ucos不支持mmu,linux支持mmu,一个例子说明:linux的程序是可以在系统运行时加入并运行,程序的编译和系统的编译没有关系,程序自认为拥有全部内存,而ucos的程序则需要和ucos系统一起编译,程序等的地址在编译的时候就全定好了,就是实际内存。
mmu带来的灵活性可见,复杂性和潜在的不稳定性也可预见了。