gpt4 book ai didi

memory-management - 内存调试 : How to get locked pages information in user space/kernel space in linux

转载 作者:行者123 更新时间:2023-12-05 05:11:53 25 4
gpt4 key购买 nike

有没有办法在linux中获取用户空间/内核空间的锁页(虚拟内存页)信息。

我想知道详细信息,例如:谁锁定了页面?有多少页被锁定?锁定页面的进程名称?

也让我知道内核空间和用户空间的内存调试技术。

最佳答案

内存中的每个页面都分配了 is 标志,虚拟内存页面使用 mlockmlockall() 等 API 锁定,它分配了 VM_LOCKED 标记到页面。

了解锁定页面详细信息的两个选项:

  1. 使用 cat /sys/kernel/debug/page_owner >> page_owner.txt 启用调试:kernel menuconfig PAGE_OWNER=y"page_owner=on" 添加到启动 cmdline。 cat/sys/kernel/debug/page_owner >> page_owner.txt

  2. 在linux源代码中输入:/tool/vm/page-types.c,然后 编译它并遍历 /proc/ 中的所有 pid 条目,并使用以下选项进行应用: ./test -p $PID -L >> test_output.txt。 它会为您提供带有标志的所有页面详细信息,然后您可以在内存中找到锁定的页面。

关于memory-management - 内存调试 : How to get locked pages information in user space/kernel space in linux,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54984296/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com