共2条
1/1 1 跳转至页
ARM9MMU 关于ARM9MMU是不是摆设?
问
我们知道MMU的最大作用就是让程序有了极大的虚拟内存空间,
就我知道的X86体系,CPU靠缺页中断来将内存和外存交换区的数据进行换入换入.
而ARM系统中的MMU是否要完成这样的工作呢?
而且很多ARM系统根本就没有像硬盘一样的外存,那MMU拿来有什么用呢? 答 1: 跑Linux你就知道没有MMU是不行的了。没有MMU是ARM7只能跑到UClinux. 答 2: 主要用来跑多进程保护操作系统内核空间不被修改和不同进程之间的空间的相对独立用的,如果没有MMU,你是跑不了多进程的。 答 3: uclinux不支持MMU,但也可以跑多进程呀. 答 4: 这是不同的不使用MMU的多进程,各道进程数据需要操作系统或开发者分配到绝对物理地址空间,这些定位一般在编译时完成。而使用MMU后就通过硬件地址映射将一块绝对地址空间作为一个进程的相对使用空间虚拟地址,该程序可以是预先编译好的,在MMU的屏蔽下不需要知道具体的物理空间;也可防止不同进程间的越权访问。作用多多。 答 5: uclinux也是linux的一种吧.... 答 6: uclinux与linux的区别uclinux是linux的简化版,是给那些没有MMU的CPU用的,由于没有地址重映射
功能,所以,在它上面只能跑多线程,并不能跑真正意义上的多进程,所谓
真正意义上的多进程是指在编译连接时它不与操作系统一起编译连接的,而如果没有MMU你是做不到这点的,必须与操作系统一起编译连接,就算它不是一起
编译连接的话,它也必须是定位好的,并且进程之间的CODE的地址,变量的地址是不能有冲突的,而有MMU就可以 答 7: 学道不少!
就我知道的X86体系,CPU靠缺页中断来将内存和外存交换区的数据进行换入换入.
而ARM系统中的MMU是否要完成这样的工作呢?
而且很多ARM系统根本就没有像硬盘一样的外存,那MMU拿来有什么用呢? 答 1: 跑Linux你就知道没有MMU是不行的了。没有MMU是ARM7只能跑到UClinux. 答 2: 主要用来跑多进程保护操作系统内核空间不被修改和不同进程之间的空间的相对独立用的,如果没有MMU,你是跑不了多进程的。 答 3: uclinux不支持MMU,但也可以跑多进程呀. 答 4: 这是不同的不使用MMU的多进程,各道进程数据需要操作系统或开发者分配到绝对物理地址空间,这些定位一般在编译时完成。而使用MMU后就通过硬件地址映射将一块绝对地址空间作为一个进程的相对使用空间虚拟地址,该程序可以是预先编译好的,在MMU的屏蔽下不需要知道具体的物理空间;也可防止不同进程间的越权访问。作用多多。 答 5: uclinux也是linux的一种吧.... 答 6: uclinux与linux的区别uclinux是linux的简化版,是给那些没有MMU的CPU用的,由于没有地址重映射
功能,所以,在它上面只能跑多线程,并不能跑真正意义上的多进程,所谓
真正意义上的多进程是指在编译连接时它不与操作系统一起编译连接的,而如果没有MMU你是做不到这点的,必须与操作系统一起编译连接,就算它不是一起
编译连接的话,它也必须是定位好的,并且进程之间的CODE的地址,变量的地址是不能有冲突的,而有MMU就可以 答 7: 学道不少!
共2条
1/1 1 跳转至页
回复
有奖活动 | |
---|---|
【有奖活动】分享技术经验,兑换京东卡 | |
话不多说,快进群! | |
请大声喊出:我要开发板! | |
【有奖活动】EEPW网站征稿正在进行时,欢迎踊跃投稿啦 | |
奖!发布技术笔记,技术评测贴换取您心仪的礼品 | |
打赏了!打赏了!打赏了! |