如何通过虚拟寻址区域中的指针获取物理寻址区域中的地址
How can I get address in physical addressing area by pointer in virtual addressing area?
如果我在当前进程的虚拟寻址区域中有一个指向固定(页面锁定)内存的地址(指针),那么如何使用 POSIX 获取该内存区域的物理寻址区域中的地址(指针)?
- 处理器: x86
- 操作系统: Linux 2.6 和 Windows 7/8(服务器 2008R2)
您无法访问用户空间中的物理地址。您所做的一切都会通过 MMU 和页表。即使固定页面,内核仍可能在物理内存中移动它。
即使你得到了它,它会为你做什么?用户空间进程无法通过物理访问直接访问内存。只有内核模式可以。
如果你真的需要这个功能(虽然我仍然无法想象任何使用信息的方式),你必须编写一个内核模式驱动程序。
相关文章:
- 从结构寻址时,MMAP变量的行为很奇怪
- 字节真的是最小可寻址单元吗
- 具有两个间接寻址运算符 (C++) 的函数参数的用途
- imread() 仍然返回空垫子,尽管在 openCV 4.0.0 中寻址正确
- 在具有开放寻址的哈希表中插入节点 [优化逻辑]
- 如何像在 C++ 中处理数组一样对 .txt 文件中的字符进行寻址?
- C++11右值引用寻址
- 对堆栈增长和寻址的困惑
- C++ std::find() 寻址返回向量的类函数时的意外行为
- 间接寻址运算符如何返回带有运算符重载的指针地址
- Adafruit NeoPixel库在寻址超过7个LED灯条时不起作用
- 在模板 SFINAE 约束中使用间接寻址级别会导致硬错误
- 错误:使用索引寻址和 Clang 的指令的操作数无效
- 是否可以寻址另一个网络中的服务器/客户端套接字?(C++)
- C++中的字节寻址算法
- 指针声明和间接寻址之间的区别
- 仅在使用间接寻址时调用虚函数 — 经典的早期绑定问题?
- C++ std::map 不同的键寻址同一索引
- Valgrind 错误:系统调用参数 epoll_pwait(sigmask) 指向不可寻址的字节
- 如何通过虚拟寻址区域中的指针获取物理寻址区域中的地址