C++ 如何获得任务管理器中核心内存的分页数和未分页数 (NTQUERYSYSTEMINFORMATION)

六月心悸 2015-02-09 01:34:12
我想通过下面这个函数获得分页 和 非分页
typedef struct _SYSTEM_PERFORMANCE_INFORMATION
{
LARGE_INTEGER IdleTime;//CPU空闲时间;
LARGE_INTEGER ReadTransferCount;//I/O读操作数目;
LARGE_INTEGER WriteTransferCount;//I/O写操作数目;
LARGE_INTEGER OtherTransferCount;//I/O其他操作数目;
ULONG ReadOperationCount;//I/O读数据数目;
ULONG WriteOperationCount;//I/O写数据数目;
ULONG OtherOperationCount;//I/O其他操作数据数目;
ULONG AvailablePages;//可获得的页数目;
ULONG TotalCommittedPages;//总共提交页数目;
ULONG TotalCommitLimit;//已提交页数目;
ULONG PeakCommitment;//页提交峰值;
ULONG PageFaults; //页故障数目;
ULONG WriteCopyFaults;//Copy-On-Write故障数目;
ULONG TransitionFaults; //软页故障数目;
ULONG Reserved1;
ULONG DemandZeroFaults;//需求0故障数;
ULONG PagesRead;//读页数目;
ULONG PageReadIos;//读页I/O操作数;
ULONG Reserved2[2];
ULONG PagefilePagesWritten;//已写页文件页数;
ULONG PagefilePageWriteIos;//已写页文件操作数;
ULONG MappedFilePagesWritten;//已写映射文件页数;
ULONG MappedFileWriteIos; //已写映射文件操作数;
ULONG PagedPoolUsage;//分页池使用;
ULONG NonPagedPoolUsage; //非分页池使用;
ULONG PagedPoolAllocs;//分页池分配情况;
ULONG PagedPoolFrees;//分页池释放情况;
ULONG NonPagedPoolAllocs;//非分页池分配情况;
ULONG NonPagedPoolFress; //非分页池释放情况;
ULONG TotalFreeSystemPtes;//系统页表项释放总数;
ULONG SystemCodePage; //操作系统代码页数;
ULONG TotalSystemDriverPages;//可分页驱动程序页数;
ULONG TotalSystemCodePages;//操作系统代码页总数;
ULONG SmallNonPagedLookasideListAllocateHits; //小非分页侧视列表分配次数;
ULONG SmallPagedLookasideListAllocateHits;//小分页侧视列表分配次数;
//ULONG Reserved3;    
ULONG MmSystemCachePage;//系统缓存页数;
ULONG PagedPoolPage;//分页池页数;
ULONG SystemDriverPage; //可分页驱动页数;
ULONG FastReadNoWait;//异步快速读数目;
ULONG FastReadWait;//同步快速读数目;
ULONG FastReadResourceMiss;//快速读资源冲突数;
ULONG FastReadNotPossible;//快速读失败数;
ULONG FastMdlReadNoWait;//异步MDL快速读数目;
ULONG FastMdlReadWait;//同步MDL快速读数目;
ULONG FastMdlReadResourceMiss;//MDL读资源冲突数;
ULONG FastMdlReadNotPossible;//MDL读失败数;
ULONG MapDataNoWait;//异步映射数据次数;
ULONG MapDataWait;//同步映射数据次数;
ULONG MapDataNoWaitMiss;//异步映射数据冲突次数;
ULONG MapDataWaitMiss;//同步映射数据冲突次数;
ULONG PinMappedDataCount;//牵制映射数据数目;
ULONG PinReadNoWait;//牵制异步读数目;
ULONG PinReadWait;//牵制同步读数目;
ULONG PinReadNoWaitMiss;//牵制异步读冲突数目;
ULONG PinReadWaitMiss;//牵制同步读冲突数目;
ULONG CopyReadNoWait;//异步拷贝读次数;
ULONG CopyReadWait; //同步拷贝读次数;
ULONG CopyReadNoWaitMiss;//异步拷贝读故障次数;
ULONG CopyReadWaitMiss; //同步拷贝读故障次数;
ULONG MdlReadNoWait;//异步MDL读次数;
ULONG MdlReadWait;//同步MDL读次数;
ULONG MdlReadNoWaitMiss;//异步MDL读故障次数;
ULONG MdlReadWaitMiss;//同步MDL读故障次数;
ULONG ReadAheadIos; //向前读操作数目;
ULONG LazyWriteIos; //LAZY写操作数目;
ULONG LazyWritePages;//LAZY写页文件数目;
ULONG DataFlushes;//缓存刷新次数;
ULONG DataPages;//缓存刷新页数;
ULONG ContextSwitches;//环境切换数目;
ULONG FirstLevelTbFills;//第一层缓冲区填充次数;
ULONG SecondLevelTbFills;//第二层缓冲区填充次数;
ULONG SystemCall;//系统调用次数;
}SYSTEM_PERFORMANCE_INFORMATION,*PSYSTEM_PERFORMANCE_INFORMATION;

可获得的PagedPoolPage 的值 与系统自带的任务管理器 显示的分页 值有很大区别
不知道为什么?网上这方面的资料很少
...全文
363 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
六月心悸 2015-02-12
  • 打赏
  • 举报
回复
引用 1 楼 grf9527 的回复:
如果我没有猜错。是不是单位转换的时候,你用的是1000,而不是1024.
没有呀 我用的是1024进行换算呀
grf9527 2015-02-11
  • 打赏
  • 举报
回复
如果我没有猜错。是不是单位转换的时候,你用的是1000,而不是1024.
内容概要:本文围绕“非线性流量的据驱动Koopman模型预测控制研究”展开,提出一种基于据驱动的Koopman算子理论方法,用于构建非线性系统的线性化状态空间模型,并结合模型预测控制(MPC)实现对复杂非线性系统的高效控制。研究通过引入扩展动态模态分解(EDMD)等观测函,将非线性动力学映射至高维特征空间,在该空间实现近似线性化表征,进而融合线性MPC框架进行优化求解。全文系统阐述了Koopman算子的学基础、隐式线性化机制及在非线性流量控制的建模流程,并通过Matlab代码完成了算法实现与仿真实验,验证了该方法在处理无精确物理模型、强非线性、时变动态系统的有效性与鲁棒性,尤其适用于工业流程控制、能源系统调度等实际工程场景。; 适合人群:具备自动控制理论、非线性系统分析基础,熟悉Matlab编程,从事控制工程、系统辨识、智能优化、能源系统建模等方向的研究生、科研人员及工程技术人员。; 使用场景及目标:①应用于难以建立精确学模型的复杂非线性系统(如流体动力系统、电力电子系统、机器人动力学等)的建模与实时控制;②实现据驱动下的模型预测控制,提升系统响应速度与控制精度;③为先进控制策略(如MPC)提供一种可行的线性化建模范式,推动现代控制理论与据科学、机器学习的深度融合。; 阅读建议:建议读者结合提供的Matlab代码深入理解Koopman方法的具体实现过程,重点关注观测函构造、核函选择、矩阵逼近、降维处理及MPC控制器设计等关键技术环节,并尝试将其迁移至其他非线性系统进行复现实验与性能对比,以全面掌握其适用范围与局限性。
内容概要:本文详细介绍了一种基于Simulink的光伏储能单相逆变器并网仿真模型,系统涵盖了光伏阵列、储能单元、DC-AC单相逆变器及并网接口的完整结构,重点实现了储能环节的能量管理与逆变器并网控制策略的建模仿真。通过Simulink平台构建系统模型,验证了逆变器输出电能质量、并网稳定性以及控制系统的动态响应性能,采用SPWM调制、PI闭环控制等关键技术,确保并网电流与电网电压同频同相,满足并网电能质量要求。该模型不仅可用于分布式能源系统的仿真研究,还可作为新能源并网技术的教学与工程实践工具。; 适合人群:电气工程、自动化、新能源科学与工程等相关专业的高校本科生、研究生、科研人员,以及从事光伏发电系统设计、储能控制与并网技术研发的工程技术人员。; 使用场景及目标:①深入理解光伏储能系统能量转换、存储与并网控制的整体工作原理;②支持课程设计、毕业设计或科研项目对单相逆变器控制策略(如SPWM、PI调节、锁相技术等)的仿真验证与参优化;③为后续研究更复杂的控制算法(如MPPT、低电压穿越、谐波抑制等)提供可扩展的仿真基础平台。; 阅读建议:建议结合MATLAB/Simulink环境动手搭建与调试模型,逐步理解各模块(如光伏建模、储能充放电控制、逆变器驱动、锁相环、PI调节器等)的功能与交互关系,重点关注控制系统的设计逻辑与参整定过程,并可通过修改负载条件或电网参测试系统鲁棒性,为进一步拓展至三相系统或多机并网场景奠定基础。

16,550

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Creator Browser
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧