Vxworks 的查看修改内存

2024-04-09 02:58
文章标签 查看 内存 修改 vxworks

本文主要是介绍Vxworks 的查看修改内存,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

Vxworks 的查看修改内存

 

查看全局变量 如定义变量 UINT32 gDebugLevel, shell 模式下直接输入该变量 :

%gDebugLevel = 0x26c61e8: value = 2 = 0x2

 

查看结构体变量

StatusPortInfo 的结构体定义为:该结构共有 9 32 位整型

typedef struct

{

     UINT32 uiFuncSlotNo;   [14]

     UINT32 uiFuncPortType;  [5]

     UINT32 uiFuncPortNo;   [1]

      

     UINT32 uiActualSlotNo;  [14]

     UINT32 uiActualPortType; [5]

     UINT32 uiActualPortNo;  [1]

     UINT32 _Tval ePortStatus; [3]

     UINT32 uiNotReport; [0]

     UINT32 uiUsed;     [1]

 

}PACK StatusPortInfo;

gstPortInfo 变量定义为:

StatusPortInfo gstPortInfo [126];

查看 gstPortInfo 地址:

%gstPortInfo = 0x2667b44: value = 14 = 0xe

打印该地址的内存

%d 0x2667b44

02667b40:                  0000 000e 0000 0005 0000 0001   *..........*     

02667b50:  0000 000e 0000 0005 0000 0001 0000 0003   *................*

02667b60:  0000 0000 0000 0001 0000 000e 0000 0005   *................*

02667b70:  0000 0002 0000 000e 0000 0005 0000 0002   *................*

02667b80:  0000 0001 0000 0000 0000 0001 0000 000e   *................*

02667b90:  0000 0005 0000 0003 0000 000e 0000 0005   *................*

02667ba0:  0000 0003 0000 0001 0000 0000 0000 0001   *................*

02667bb0:  0000 000e 0000 0005 0000 0004 0000 000e   *................*

02667bc0:  0000 0005 0000 0004 0000 0001 0000 0000   *................*

02667bd0:  0000 0001 0000 000e 0000 0005 0000 0005   *................*

02667be0:  0000 000e 0000 0005 0000 0005 0000 0003   *................*

02667bf0:  0000 0000 0000 0001 0000 000e 0000 0005   *................*

02667c 00:  0000 0006 0000 000e 0000 0005 0000 0006   *................*

02667c 10:  0000 0001 0000 0000 0000 0001 0000 000e   *................*

02667c 20:  0000 0005 0000 0007 0000 000e 0000 0005   *................*

02667c 30:  0000 0007 0000 0001 0000 0000 0000 0001   *................*

02667c 40:  0000 000e                              *................*

该内存是 16 进制进行表示 所以一个 16 进制可以表示 4bit, 两个 16 进制可以表示一个 Byte.

1 [0000] 表示 2 Byte 内容,所以第一个变量 uiFuncSlotNo[4Byte] 需要两个表示,即

0000 000e 即值为 14. 由于该 CPU Power PC 数据的低字节放在高地址处。所以 14 表示为 0000 000e.

红色的表示数组 gstPortInfo[0]

修改 32 位变量值 [ uiFuncSlotNo ] ----0x12345678

write32 0x2667b44 0x12345678

修改后显示

%d 0x2667b44

02667b40:                   1234 5678 0000 0005 0000 0001   *4Vx........*

02667b50:  0000 000e 0000 0005 0000 0001 0000 0003   *................*

02667b60:  0000 0000 0000 0001

这篇关于Vxworks 的查看修改内存的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/887017

相关文章

Docker镜像修改hosts及dockerfile修改hosts文件的实现方式

《Docker镜像修改hosts及dockerfile修改hosts文件的实现方式》:本文主要介绍Docker镜像修改hosts及dockerfile修改hosts文件的实现方式,具有很好的参考价... 目录docker镜像修改hosts及dockerfile修改hosts文件准备 dockerfile 文

Python如何使用__slots__实现节省内存和性能优化

《Python如何使用__slots__实现节省内存和性能优化》你有想过,一个小小的__slots__能让你的Python类内存消耗直接减半吗,没错,今天咱们要聊的就是这个让人眼前一亮的技巧,感兴趣的... 目录背景:内存吃得满满的类__slots__:你的内存管理小助手举个大概的例子:看看效果如何?1.

Python实现无痛修改第三方库源码的方法详解

《Python实现无痛修改第三方库源码的方法详解》很多时候,我们下载的第三方库是不会有需求不满足的情况,但也有极少的情况,第三方库没有兼顾到需求,本文将介绍几个修改源码的操作,大家可以根据需求进行选择... 目录需求不符合模拟示例 1. 修改源文件2. 继承修改3. 猴子补丁4. 追踪局部变量需求不符合很

mysql如何查看当前连接数

《mysql如何查看当前连接数》:本文主要介绍mysql如何查看当前连接数问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录mysql查看当前连接数查看mysql数据库允许最大连接数总结mysql查看当前连接数查看当前连接数SHOW STATUS LIKE

Linux修改pip和conda缓存路径的几种方法

《Linux修改pip和conda缓存路径的几种方法》在Python生态中,pip和conda是两种常见的软件包管理工具,它们在安装、更新和卸载软件包时都会使用缓存来提高效率,适当地修改它们的缓存路径... 目录一、pip 和 conda 的缓存机制1. pip 的缓存机制默认缓存路径2. conda 的缓

Linux修改pip临时目录方法的详解

《Linux修改pip临时目录方法的详解》在Linux系统中,pip在安装Python包时会使用临时目录(TMPDIR),但默认的临时目录可能会受到存储空间不足或权限问题的影响,所以本文将详细介绍如何... 目录引言一、为什么要修改 pip 的临时目录?1. 解决存储空间不足的问题2. 解决权限问题3. 提

查看Oracle数据库中UNDO表空间的使用情况(最新推荐)

《查看Oracle数据库中UNDO表空间的使用情况(最新推荐)》Oracle数据库中查看UNDO表空间使用情况的4种方法:DBA_TABLESPACES和DBA_DATA_FILES提供基本信息,V$... 目录1. 通过 DBjavascriptA_TABLESPACES 和 DBA_DATA_FILES

Python如何查看数据的类型

《Python如何查看数据的类型》:本文主要介绍Python如何查看数据的类型方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录python查看数据的类型1. 使用 type()2. 使用 isinstance()3. 检查对象的 __class__ 属性4.

Linux文件名修改方法大全

《Linux文件名修改方法大全》在Linux系统中,文件名修改是一个常见且重要的操作,文件名修改可以更好地管理文件和文件夹,使其更具可读性和有序性,本文将介绍三种在Linux系统下常用的文件名修改方法... 目录一、引言二、使用mv命令修改文件名三、使用rename命令修改文件名四、mv命令和rename命

mybatis-plus 实现查询表名动态修改的示例代码

《mybatis-plus实现查询表名动态修改的示例代码》通过MyBatis-Plus实现表名的动态替换,根据配置或入参选择不同的表,本文主要介绍了mybatis-plus实现查询表名动态修改的示... 目录实现数据库初始化依赖包配置读取类设置 myBATis-plus 插件测试通过 mybatis-plu