嵌入式下,内存不够用,mmap可以吗?
情形:嵌入式下,内存不够用,需要在磁盘上创建文件作为缓冲区,对用户看来,就像在内存中开辟一个buffer一样。
自然而然,想到了mmap函数。问题如下:
1.上网查到有人说,mmap只是把在文件上开辟的“内存”的地址映射到真实内存上,其实并不占用多少真实内存;不过,《UNIX环境高级编程》2th,上392页,图14-11似乎说明,文件被映射的部分有多大,内存中需要占用的空间就有多大。是这样吗?
2.mmap返回的指针,可以作为流输入的目的地址吗?还是只能用memcpy类似的操作?
3.回到用mmap的本身意图:内存不够,需要在磁盘上开辟空间当作内存使用,有没有更好的办法?
...
各路大神,求教……
能帮上的同志还会给分!