文章导读:
- 1、实现地址重定位或地址映射的方法有哪几种?
- 2、你好,我现在需要写一篇论文:在PDH复用成SDH信号,必须经过映射,定位和复用三个步骤,分析并举例说明这
- 3、MapViewOfFile 返回的指针如何使用?如何通过映射文件定位要查找的字符串?
- 4、什么是地址映射?地址映射由计算机系统中的哪一个部分实现?
- 5、什么是地址映射?
- 6、汽车的“手机互联”“映射”是什么意思?
实现地址重定位或地址映射的方法有哪几种?
只有在你的路由器或者ADSL猫开启NAT选项就可以了,一点也不复杂,一般登陆192.168.0.1就可以管理了,具体你可以看路由器或者猫的说明书
你好,我现在需要写一篇论文:在PDH复用成SDH信号,必须经过映射,定位和复用三个步骤,分析并举例说明这
这位同学,虽然我不能直接把论文给你,但我可以尽我所能把我知道的一些东西告诉你,希望对你有用。PDH(准同步数字传输)是早期的传输体制。SDH(同步数字传输体制)现在通信行业广泛使用的传输体制。当然现在各家通信行业或运营商的网络体制多半是PDH和SDH共存的这个局面。SDH较之PDH的优点有:更快的传输速率(最大10G),更大的容量(40G的交叉容量)、更精确的定位和效验(增加了许多开销字节)。PHD信号主要有三种速率:2M、34M、140M ,SDH有STM-1(155M)STM-2(622M)STM-3(2.5G)STM-4(10G)下边我在举个简单的例子一个2M的PDH信号怎样变成一个Vc4级别的SDH信号的。一个2M信号经过速率适配变为基帧125us的信号我们称之为容器C-12,在加入POH通道开销监控变为虚容器(VC-12),加入一级指针定位变为支路单元组TU-12,经过字节间插速率翻了3被变为管理单元组TUG-12,然后再经过一次字节间插速率又翻7被变为TUG-3,在间插翻三倍变为虚容器VC-4(155M)加指阵定位为AU-4,加开销字节变为AUG-4 这样一个标准的STM-1(155M)的SDH信号就完成了。不知道你能不能看懂,但确实是这样变化而来的,希望这些对你有用。
MapViewOfFile 返回的指针如何使用?如何通过映射文件定位要查找的字符串?
MapViewOfFile()函数返回的指针就是文件被映射到内存后,在内存中的首地址,文件映射的目的就是把访问外存磁盘上的文件的速度很满的操作改变为访问内存中某区域数据的快速的操作.
返回的指针是void *类型,只要直接强制转换为char *即可,如:
char *pMemFileStart = (char *)pMapView;//pMapView为MapViewOfFile()函数返回的void *型指针.
此时,pMemFileStart就指向了映射文件的第一个字节(即,文件的第一个字节),如果执行:
pMemFileStart++;
那么pMemFileStart就指向了映射文件的第二个字节(即,文件的第二个字节),
如此就可以访问文件所有内容了.
查找指定字符串的思路为:
依上面的方法访问文件中每个字节,如果该字节内容与待查找字符串的第一个字节内容相同,则使用strncmp()函数比较内存中的数据与待查找字符串相同长度中内容是否相同,如果相同则找到.
访问内存映射的工作指针(如上面的pMemFileStart)与文件映射首地址(即MapViewOfFile()函数返回的指针)的差就是该字符串在文件内部的偏移量;
什么是地址映射?地址映射由计算机系统中的哪一个部分实现?
为了保证CPU执行指令时可正确访问存储单元,需将用户程序中的逻辑地址转换为运行时由机器直接寻址的物理地址,这一过程称为地址映射。
地址映射最小单位为1页,4K大小,所以len值最小为:0x00001000。
地址映射分类:
地址映射也可以成为地址重定位或地址变换,可以分为以下两类:
静态重定位
当用户程序被装入内存时,一次性实现逻辑地址到物理地址的转换,以后不再转换(一般在装入内存时由软件完成)。
动态重定位
在程序运行过程中要访问数据时再进行地址变换(即在逐条指令执行时完成地址映射。一般为了提高效率,此工作由硬件地址映射机制来完成。由硬件支持,软件硬件结合完成。硬件上一般需要一对寄存器的支持)。
什么是地址映射?
地址映射为了保证CPU执行指令时可正确访问存储单元,需将用户程序中的逻辑地址转换为运行时由机器直接寻址的物理地址,这一过程称为地址映射
地址映射原理及实现:
1、 地址映射结构
在Tornado\target\h\vmLib.h文件中
typedef struct phys_mem_desc
{
void *virtualAddr;
void *physicalAddr;
UINT len;
UINT initialStateMask; /* mask parameter to vmStateSet */
UINT initialState; /* state parameter to vmStateSet */
} PHYS_MEM_DESC;
virtualAddr:你要映射的虚拟地址
physicalAddr:硬件设计时定义的实际物理地址
len;要进行映射的地址长度
initialStateMask:可以初始化的地址状态:
有如下状态:
#define VM_STATE_MASK_VALID 0x03
#define VM_STATE_MASK_WRITABLE 0x0c
#define VM_STATE_MASK_CACHEABLE 0x30
#define VM_STATE_MASK_MEM_COHERENCY 0x40
#define VM_STATE_MASK_GUARDED 0x80
不同的CPU芯片类型还有其特殊状态
initialState:实际初始化的地址状态:
有如下状态:
#define VM_STATE_VALID 0x01
#define VM_STATE_VALID_NOT 0x00
#define VM_STATE_WRITABLE 0x04
#define VM_STATE_WRITABLE_NOT 0x00
#define VM_STATE_CACHEABLE 0x10
#define VM_STATE_CACHEABLE_NOT 0x00
同样不同的CPU芯片类型还有其特殊状态
2、 初始化结构
在 Tornado\target\config\ads860\sysLib.c 文件中:
PHYS_MEM_DESC sysPhysMemDesc [] =
{
{
(void *) LOCAL_MEM_LOCAL_ADRS,
(void *) LOCAL_MEM_LOCAL_ADRS,
LOCAL_MEM_SIZE ,
VM_STATE_MASK_VALID | VM_STATE_MASK_WRITABLE |
VM_STATE_MASK_CACHEABLE,
VM_STATE_VALID | VM_STATE_WRITABLE | VM_STATE_CACHEABLE
},
{
(void *) BCSR0,
(void *) BCSR0,
0x00001000, /* 4 k - Board Control and Status */
VM_STATE_MASK_VALID | VM_STATE_MASK_WRITABLE |
VM_STATE_MASK_CACHEABLE | VM_STATE_MASK_GUARDED,
VM_STATE_VALID | VM_STATE_WRITABLE | VM_STATE_CACHEABLE_NOT |
VM_STATE_GUARDED
},
……
{
(void *) INTERNAL_MEM_MAP_ADDR,
(void *) INTERNAL_MEM_MAP_ADDR,
INTERNAL_MEM_MAP_SIZE, /* 64 k - Internal Memory Map */
VM_STATE_MASK_VALID | VM_STATE_MASK_WRITABLE |
VM_STATE_MASK_CACHEABLE | VM_STATE_MASK_GUARDED,
VM_STATE_VALID | VM_STATE_WRITABLE | VM_STATE_CACHEABLE_NOT |
VM_STATE_GUARDED
},
{
(void *) ROM_BASE_ADRS,
(void *) ROM_BASE_ADRS,
ROM_SIZE, /* Flach memory */
VM_STATE_MASK_VALID | VM_STATE_MASK_WRITABLE |
VM_STATE_MASK_CACHEABLE ,
VM_STATE_VALID | VM_STATE_WRITABLE | VM_STATE_CACHEABLE_NOT
}
};
上面结构中是缺省地址映射。
3、 地址初始化
在Tornado\target\src\config\ usrMmuInit.c 文件中
通过函数usrMmuInit使地址映射生效
4、 实现映射:
如你定义flash地址为0x04000000开始的8Mbyte地址,则可以如下进行地址映射
{
(void *) 0x04000000,
(void *) 0x04000000,
0x00800000, /* 8 m - Flash window 1 */
VM_STATE_MASK_VALID | VM_STATE_MASK_WRITABLE,
VM_STATE_VALID | VM_STATE_WRITABLE
},
5、 注意
地址映射最小单位为1页,4K大小,所以len值最小为:0x00001000。
汽车的“手机互联”“映射”是什么意思?
就是你购买了车载gps定位器后,你可以在gps监控系统后台进行车辆的行驶区域设置。比如博实结科技的gps车辆监控系统,支持矩形、圆形及多边形区域,你设置了围栏报警后,如果车辆驶出你设置的可行驶区域,那它就会产生报警,报警信息在平台上会有显示,如果你手机下载博云车联APP,那手机上也会有提示报警。
手机互联:
手机互联网可定义为用手机登陆互联网,完成只有用电脑才可以完成的操作。手机互联网的下属又可以分为移动办公和手机上网等。
e:实际初始化的地址状态:有如下状态:#define VM_STATE_VALID 0x01#define VM_STATE_VALID_NOT 0x00#define VM_STATE_WRITABLE 0x04#define VM_S
_MASK_WRITABLE |VM_STATE_MASK_CACHEABLE | VM_STATE_MASK_GUARDED,VM_STATE_VALID | VM_STATE_WRITABLE | VM_STATE_CACHEABLE_NOT |VM_STATE_GUARDED},{(void
00001000。地址映射分类:地址映射也可以成为地址重定位或地址变换,可以分为以下两类:静态重定位当用户程序被装入内存时,一次性实现逻辑地址到物理地址的转换,以后不再转换(一般在装入内存时由软
。PDH(准同步数字传输)是早期的传输体制。SDH(同步数字传输体制)现在通信行业广泛使用的传输体制。当然现在各家通信行业或运营商的网络体制多半是PDH和SDH共存的这个局面。SDH较之PDH的优点有:更快的传输速率(最大10G),更大的容量(40G