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

相关文章

MySQL 内存使用率常用分析语句

《MySQL内存使用率常用分析语句》用户整理了MySQL内存占用过高的分析方法,涵盖操作系统层确认及数据库层bufferpool、内存模块差值、线程状态、performance_schema性能数据... 目录一、 OS层二、 DB层1. 全局情况2. 内存占js用详情最近连续遇到mysql内存占用过高导致

Linux如何查看文件权限的命令

《Linux如何查看文件权限的命令》Linux中使用ls-R命令递归查看指定目录及子目录下所有文件和文件夹的权限信息,以列表形式展示权限位、所有者、组等详细内容... 目录linux China编程查看文件权限命令输出结果示例这里是查看tomcat文件夹总结Linux 查看文件权限命令ls -l 文件或文件夹

最新Spring Security的基于内存用户认证方式

《最新SpringSecurity的基于内存用户认证方式》本文讲解SpringSecurity内存认证配置,适用于开发、测试等场景,通过代码创建用户及权限管理,支持密码加密,虽简单但不持久化,生产环... 目录1. 前言2. 因何选择内存认证?3. 基础配置实战❶ 创建Spring Security配置文件

java内存泄漏排查过程及解决

《java内存泄漏排查过程及解决》公司某服务内存持续增长,疑似内存泄漏,未触发OOM,排查方法包括检查JVM配置、分析GC执行状态、导出堆内存快照并用IDEAProfiler工具定位大对象及代码... 目录内存泄漏内存问题排查1.查看JVM内存配置2.分析gc是否正常执行3.导出 dump 各种工具分析4.

Mysql实现范围分区表(新增、删除、重组、查看)

《Mysql实现范围分区表(新增、删除、重组、查看)》MySQL分区表的四种类型(范围、哈希、列表、键值),主要介绍了范围分区的创建、查询、添加、删除及重组织操作,具有一定的参考价值,感兴趣的可以了解... 目录一、mysql分区表分类二、范围分区(Range Partitioning1、新建分区表:2、分

怎样通过分析GC日志来定位Java进程的内存问题

《怎样通过分析GC日志来定位Java进程的内存问题》:本文主要介绍怎样通过分析GC日志来定位Java进程的内存问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、GC 日志基础配置1. 启用详细 GC 日志2. 不同收集器的日志格式二、关键指标与分析维度1.

Java内存分配与JVM参数详解(推荐)

《Java内存分配与JVM参数详解(推荐)》本文详解JVM内存结构与参数调整,涵盖堆分代、元空间、GC选择及优化策略,帮助开发者提升性能、避免内存泄漏,本文给大家介绍Java内存分配与JVM参数详解,... 目录引言JVM内存结构JVM参数概述堆内存分配年轻代与老年代调整堆内存大小调整年轻代与老年代比例元空

SQL Server修改数据库名及物理数据文件名操作步骤

《SQLServer修改数据库名及物理数据文件名操作步骤》在SQLServer中重命名数据库是一个常见的操作,但需要确保用户具有足够的权限来执行此操作,:本文主要介绍SQLServer修改数据... 目录一、背景介绍二、操作步骤2.1 设置为单用户模式(断开连接)2.2 修改数据库名称2.3 查找逻辑文件名

C++高效内存池实现减少动态分配开销的解决方案

《C++高效内存池实现减少动态分配开销的解决方案》C++动态内存分配存在系统调用开销、碎片化和锁竞争等性能问题,内存池通过预分配、分块管理和缓存复用解决这些问题,下面就来了解一下... 目录一、C++内存分配的性能挑战二、内存池技术的核心原理三、主流内存池实现:TCMalloc与Jemalloc1. TCM

Windows的CMD窗口如何查看并杀死nginx进程

《Windows的CMD窗口如何查看并杀死nginx进程》:本文主要介绍Windows的CMD窗口如何查看并杀死nginx进程问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地... 目录Windows的CMD窗口查看并杀死nginx进程开启nginx查看nginx进程停止nginx服务