!ndx.loadavg 数据错误:unsigned long 类型适配修复

在做!ndx.loadavg扩展命令时,读取一个数组的时候出现数据错误。
内核中的定义类型为unsigned long

实现扩展命令的代码中的定义也为unsigned long,并且没有出现读取错误的打印

经分析,这一现象源于内核与 Windows 系统在数据类型长度上的差异
Windows(LLP64 模型):long long 和指针类型为 8 字节,long 类型为 4 字节;
Linux/Unix(LP64 模型):long 类型和指针类型均为 8 字节

因此,只需将unsigned long修改为ULONG64 或者unsigned long long,即可解决读取大小不匹配的问题。

作者:郭建程  创建时间:2025-09-11 15:47
最后编辑:郭建程  更新时间:2025-09-11 16:05