为什么用户流程负责从操作系统请求内存?
堆分配器负责主动请求从操作系统的内存来生长堆,例如, brk 或 mmap 。访问未分配的内存会导致Segfaults。 我可以设计一个不同的OS-USER界面,用户可…
在C中使用随机整数对MMMAPAPE进行排序
我正在尝试创建一个C程序,该程序使用随机整数创建TXT文件,然后 MMAP 上述文件和 QSort IT。创建TXT和映射顺利进行,但是我无法弄清楚为什么 QSort …
如何在Mac OSX上使用虚拟内存/实现Realloc?
我正在Mac上玩汇编。在Linux上,我使用MMAP/MREMAP/MUNMAP实现了REALLOC,但Mac上似乎没有MREMAP。如何在汇编中使用虚拟内存实现Realloc?我需要什么…
覆盖全局变量的内存分配
我需要为每个全局对象分配一个唯一的虚拟页面。对于堆积的对象,我可以覆盖 malloc/new 调用并使用 mmap 适当。但是 static struct {...} instance1; …
如果我的MMAP虚拟内存超过我的计算机RAM怎么办?
背景和用例 我拥有大约30 GB的数据,这些数据从未改变,具体来说,每个语言的每个字典。 客户要求查看单词的定义,我只是对此进行了回复。 在每个请求…
Cygwin上的映射文件仍会继续引起Sigbus
我正在尝试将页面大小的文件mmap mmap到大于文件大小的区域,并在其中一个刻度页面引起sigbus时将其ftrunce ftruncate,以使Sigbus不再发生。 这在Lin…
驱动程序 - 供应vm_operations_struct.fault方法与页面缓存的交互
https://manyybutfinite.com/post/page/page/page/page/page/page/page/page/page/page/page -cache-the-the-affair-betewewement-memory and-files/…
有什么方法可以查看内核空间中通过直接I/O(O_Direct)读取的读取数据?
我正在使用NVME SSD和NVME驱动程序。我的应用程序通过直接I/O读取(O_Direct)从设备读取数据。 我想检查(通过 printk 或其他内容)在NVME驱动程序代…
关于在2个不同过程之间共享mmmapper区域的问题
我正在尝试在两个过程中共享MMAPPED区域。 在我的程序中,我创建memory_update()process和memory_read()process。 此MONEME_UPDATE()进程更新MM…
OS可以自动生长一个MMAP备份文件吗?
mmap 有很多用途,但是我主要使用 mmap 以两种方式: mmap读取整个文件 mmap以创建共享内存。 在共享内存的情况下,如果我希望它得到文件支持,我会…
使用map_private vs map_shared时,mmap'
我在任何地方都没有明确看过这个,所以我只是想澄清一下。这一切都是在单个螺纹程序的上下文中:说使用 mmap ,使用 map_private 选项时,我们有一个1…
使用Buffer-Overflow执行一些简单的说明失败 - (Segfaults)
我正在尝试缓冲溢出并使使系统执行 mmap 分配的地址,这将是某些简单说明的函数,即 mov $0x1, %rax ret opCode数组的 \ x48 \ xc7 \ xc7 \ xc0 \ x01…
命名MMAP没有磁盘io
我想使用POSIX标准MMAP,就好像SHMAT具有ID一样,它们共享相同的共享内存。 使用MAP_ANON时,MMAP似乎通常使用FD = -1,在这种情况下,据说从子过程继…