20得票5回答
为什么Windows要保留1GB(或2GB)作为系统地址空间?

众所周知,在32位系统上,Windows应用程序通常有2Gb的私有地址空间。使用/3GB开关可以将此空间扩展为3Gb。 操作系统保留了剩下的4Gb。 我的问题是为什么? 运行在内核模式中(例如设备驱动程序代码)的代码具有自己的地址空间。那么,在独占的4Gb地址空间之上,为什么操作系统仍然...

20得票3回答
x86-64规范地址是什么?

在阅读英特尔手册时,我看到了以下内容: 在支持 Intel 64 架构的处理器上,IA32_SYSENTER_ESP 字段和 IA32_SYSENTER_EIP 字段必须分别包含规范地址。 什么是“规范地址”?

20得票3回答
如何通过C代码从绝对地址读取值

我想读取一个已知绝对地址中存储的值。 我想知道如何实现这一点。 例如, 如果一个值存储在0xff73000处。 那么是否可以通过C代码获取存储在此处的值。 提前感谢。

20得票5回答
在 Linux 中设置可用的物理内存总量限制

我知道应该设置mem = 内存限制。但是我不知道在运行时还是在引导时去哪里以便限制操作系统控制的总物理内存。 我正在运行I/O基准测试,并希望限制可用的总物理内存量。

19得票3回答
在GNU GAS汇编中,是否有代表当前地址的符号?

我想知道是否有特殊的GAS语法可以实现与NASM示例相同的功能:SECTION .data msg: db "Hello World",10,0 ; the 0-terminated string. len: equ $-msg ...

18得票4回答
指针中的星号(*)到底有什么作用?

我是编程新手,正在努力理解“指针”的概念。 int main() { int x = 5; int *pointerToInteger = & x; cout<<pointerToInteger; } 为什么当我使用 cout << ...

18得票4回答
如何在Linux中解码/proc/pid/pagemap条目?

我正在尝试理解如何使用/proc/pid/pagemap获取给定页的物理地址。假设从/proc/pid/maps中,我得到了虚拟地址afa2d000-afa42000,它对应于堆。我的问题是如何使用这些信息遍历pagemap文件并找到与地址afa2d000-afa42000相对应的物理页面帧。...

18得票4回答
逻辑地址的目的是什么?

逻辑地址的目的是什么?为什么CPU需要生成逻辑地址?它可以直接访问可重定位寄存器基地址和限制以执行进程。为什么MMU需要在逻辑地址和物理地址之间进行映射?

17得票5回答
在C++中访问直接内存地址并获取值

我想知道是否能够使用C/C++访问内存的直接块并获取值。例如:int i = 15; int *p = &i; cout << &i; 如果我在这里获取打印值,那么将会给我变量i的地址,它包含值15。对于这个示例,我只会说它打印出0x0ff9c1。如果我有一个单独的...

16得票7回答
如何通过给定的地址范围计算内存大小?

我有一个练习,但是我无法解决它, 我有3个内存范围: First @ Last @ 范围1:FD00 0000到FDFF FFFF 范围2:D000 0000到DFFF FFFF 范围3:FA00 0000到FBFF FFFF 问题是:每个范围的内存大小是多少(以兆...