【问题标题】:Why does Process Explorer require debug symbols to show kernel memory limits?为什么 Process Explorer 需要调试符号来显示内核内存限制?
【发布时间】:2020-12-06 05:12:16
【问题描述】:

Process Explorer(又名procexp)需要调试符号来显示内核内存限制和提供读取它们的 API 的库。正如我所发现的,仅需要当前运行内核的符号(ntoskrln*),并从中读取变量MmSizeOfPagedPoolInBytesMmSizeOfNonPagedPoolInBytes。可以直接从内核获取它们。
那么为什么需要调试符号呢?它们是否包含一些无法从操作系统本身获取的信息?

【问题讨论】:

    标签: windows memory kernel limit symbols


    【解决方案1】:

    因为 Process Explorer 需要知道这些变量在内核内存中的位置,并且每个版本的 Windows 之间可能不同,所以符号是获取该位置的正确方法。微软发布公共符号。

    并非所有内核信息都可以从用户空间轻松访问。

    【讨论】:

      猜你喜欢
      • 2020-03-14
      • 1970-01-01
      • 2019-04-21
      • 2012-10-04
      • 1970-01-01
      • 1970-01-01
      • 2013-01-10
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多