gpt4 book ai didi

在虚拟 ramdisk 中创建 mmap

转载 作者:太空宇宙 更新时间:2023-11-04 12:39:18 28 4
gpt4 key购买 nike

如何使用 mmap 在虚拟 ramdisk 中保留内存?假设我愿意:

mkdir /mnt/ramdisk
mount -t tmpfs -o size=10m tmpfs /mnt/ramdisk

我现在有一个虚拟 ramdisk,但我如何在我的 C 程序中映射到它?

int main() {
// ....
addr = mmap(/* ramdisk address? */, size, PROT_READ_WRITE, MAP_ANONYMOUS | MAP_PRIVATE, -1, 0);

最佳答案

/mnt/ramdisk 是一个 tmpfs 的事实与您如何使用它没有任何关系。

如果您想在该设备上内存映射一个文件,您可以open() 一个文件并使用MAP_FILE(不是MAP_ANONYMOUS) 就好像它是一个普通文件一样。不要传递地址;将为您选择合适的。

关于在虚拟 ramdisk 中创建 mmap,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40727580/

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