a我考网

 找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 102|回复: 0

[信息系统监理师] 2011年计算机软件水平考试嵌入式系统设计师辅导笔记(25)

[复制链接]
发表于 2012-8-2 09:13:07 | 显示全部楼层 |阅读模式
  7、地址映射
7 c# p" {' [( m  地址映射也叫地址重定位。; t4 B8 G1 U* P* V0 J
  逻辑地址和物理地址是完全不同的,不能用逻辑地址来直接访问内存单元。5 z, E& p( e& i/ B9 L  {
  为了保证CPU 在执行指令的时候,可以正确地访问内存单元,需要将用户程序中的逻辑地址转换为运行时由机器直接寻址的物理地址。这个过程称为:地址映射。
& Q7 t" d4 X. ]) v6 |* K( d  地址映射由存储管理单元MMU 来完成。
; ~. C. ~* H6 l! I  地址映射主要有两种方式:静态地址映射和动态地址映射。) @; i/ e$ {& n( m- D( K/ u9 d
  静态地址映射:当用户程序被装入内存时,直接对指令代码进行修改,一次性地实现逻辑地址到物理地址的转换。
. W6 Z$ e- Y' s7 Z7 j  动态地址映射:当用户程序被装入内存时,不对指令代码做任何修改,而是在程序的运行过程中,当它需要访问内存单元的时候,再来进行地址转换。( u. Z8 H. l2 |1 v6 Y3 V/ O
  在具体实现时,这项转换工作一般是由硬件的地址映射机制来完成的。通常设置一个基地址寄存器,1 q( O' f& F9 {# a  \
  或者叫重定位寄存器。当一个任务被调度运行时,就把它所在分区的起始地址装入到整个寄存器中。然后,在程序运行的过程中,当需要访问某个内存单元时,硬件就会自动地将其中的逻辑地址加上基地址寄存器中的内容,从而得到实际的物理地址,并且按照这个物理地址区执行。' M& o8 ~  }3 `
  这个基地址寄存器位于MMU 的内部,整个地址映射过程是自动运行的。从理论上说,每访问一次内存都要进行一次地址映射。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|Woexam.Com ( 湘ICP备18023104号 )

GMT+8, 2024-5-8 09:41 , Processed in 1.198024 second(s), 21 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表