关闭

2006-06-05 (1)共享内存 mmap

650人阅读 评论(0) 收藏 举报

#include <sys/mman.h>
#include <sys/types.h>
#include <fcntl.h>
#include <unistd.h>

 

 fd=open(FilenamePTR,O_CREAT|O_RDWR|O_TRUNC,00777);
 lseek(fd,sizeof(STRUCTOFDATA)*n-1,SEEK_SET);
 write(fd,"",1);//定义文件的大小,但并不妨碍在内存中的访问大小,

//取决于页面的大小pagesize = sysconf(_SC_PAGESIZE);
 
 STRUCTOFDATA s_map = (STRUCTOFDATA*) mmap( NULL,sizeof(people)*10,PROT_READ|PROT_WRITE,MAP_SHARED,fd,0 );
 close( fd );//并不妨碍对共享内存的访问

  memcpy( ( *(s_map ) ).data1, &des,N );


 sleep(10);

 munmap( s_map, sizeof(STRUCTOFDATA)*n );

 

 

 

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:308706次
    • 积分:4965
    • 等级:
    • 排名:第5912名
    • 原创:181篇
    • 转载:0篇
    • 译文:0篇
    • 评论:21条
    文章分类