1、vxworks内存管理基本概念
(1)内存和外部存储器的概念:一般RAM属于内存而Flash、ROM、NVRAM是嵌入式操作系统的外部存储器;
(2)操作系统的内存分配一般都在系统启动或者复位的情况下进行,在运行时尽量避免内存动态申请和释放,因为这样会带来系统的不稳定性;
(3)vxworks为用户提供了2中内存区域:一种是Region内存域,是可变长的内存区域;另一种是partition内存分区,是定长的;vxworks内核和应用程序对内存的操作都是基于内存分区进行的;
2、vxworks中的内存布局
(1)vxworks 中主要涉及到的内存单元的概念有:内存分区、内存池、内存块;
①内存池是一块连续的内存区域,包含一块或者多块内存块;这些区域由memPartAlloc和memPartFree来申请和释放;
②内存分区:包含自身的描述信息和一个或者多个内存池,描述信息保存在内存分区中而内存池就是该内存分区拥有的实际内存空间;内存分区在刚创建的时候
只有一个内存池,用户程序可以往该内存分区中增加别的内存池,操作系统和通常大部分用户对内存的操作,都发生在系统的内存池中;
(2)vxworks启动的是BootRom+vxworks方式,那么系统中先后存在2种内存布局;