原帖由 ehuangmy 于 2006-11-7 00:26 发表
如何将一段内存映射为一个文件,然后得到FILE *指针,用这个指针去访问内存,就像访问普通文件一样,但又不需要文件系统??
原帖由 ehuangmy 于 2006-11-7 13:05 发表
FILE *fmemopen(void *buf, size_t size, const char *mode);
这个是标准库函数,问题解决了,
太谢谢各位了,尤其是gangjh,谢谢
原帖由 chzht001 于 2006-11-7 14:31 发表
标准库函数?
我的系统就没有哎!
原帖由 langue 于 2006-11-7 21:13 发表
呃,楼主能否反过来考虑一下。先把这部分内存的内容写入一个文件,然后 mmap,用新得到的内存指针访问,同时用文件系统也可访问到
原帖由 langue 于 2006-11-8 13:01 发表
另外,能否把 glibc 里这个 fmemopen() 实现加入你的代码树,并且用条件编译,检测到是 GNU libc 并且启用了 fmemopen() 函数,就隐去函数的实现,否则编译进二进制代码
原帖由 ehuangmy 于 2006-11-8 00:15 发表
我做测试的系统前面已经有人安装了 fmemopen库,所以有
fmemopen是GNU libc 的,
在其他系统上无法编译,
所以想知道,有没有其他的方法实现这一点
欢迎光临 Chinaunix (http://bbs.chinaunix.net/) | Powered by Discuz! X3.2 |