当前位置: 首页 > news >正文

有没有专业做二维码连接网站在商标注册的官方网

有没有专业做二维码连接网站在,商标注册的官方网,网站建设 推广全流程,网站建设销售专业术语mmap内存映射 内存共享定义 内存映射#xff0c;简而言之就是将用户空间的一段内存区域映射到内核空间#xff0c;映射成功后#xff0c;用户对这段内存区域的修改可以直接反映到内核空间#xff0c;同样#xff0c;内核空间对这段区域的修改也直接反映用户空间。那么对…mmap内存映射 内存共享定义 内存映射简而言之就是将用户空间的一段内存区域映射到内核空间映射成功后用户对这段内存区域的修改可以直接反映到内核空间同样内核空间对这段区域的修改也直接反映用户空间。那么对于内核空间----用户空间两者之间需要大量数据传输等操作的话效率是非常高的。 以下是一个把普遍文件映射到用户空间的内存区域的示意图 mmap内存映射方法 mmap是一种内存映射文件的方法即将一个文件或者其它对象映射到进程的地址空间实现文件磁盘地址和进程虚拟地址空间中一段虚拟地址的一一对映关系。 实现这样的映射关系后进程就可以采用指针的方式读写操作这一段虚拟内存而系统会自动回写到对应的文件磁盘上即完成了对文件的操作而不必再调用read,write等系统调用函数。 相反内核空间对这段区域的修改也直接反映用户空间从而可以实现不同进程间的文件共享。如下图所示 void *mmap(void *start, size_t length, int prot, int flags, int fd, off_t offset);参数说明 参数start指向欲映射的内存起始地址通常设为 NULL代表让系统自动选定地址映射成功后返回该地址。 参数length代表将文件中多大的部分映射到内存。 参数prot映射区域的保护方式。可以为以下几种方式的组合 PROT_READ可读 PROT_WRITE可写 PROT_EXEC可执行 PROT_NONE不可访问 参数flags由以下几个常值指定 MAP_SHARED共享的 MAP_PRIVATE私有的 MAP_FIXED表示必须使用 start 参数作为开始地址如果失败不进行修正 其中MAP_SHARED , MAP_PRIVATE必选其一而 MAP_FIXED 则不推荐使用。MAP_ANONYMOUS匿名映射用于血缘关系进程间通信 参数fd表示要映射的文件句柄。如果匿名映射写-1。 参数offset表示映射文件的偏移量一般设置为 0 表示从文件头部开始映射。offset必须是分页大小的整数倍一般是4096的整数倍。 写共享文件 #includestdio.h #includeunistd.h #includestring.h #includefcntl.h #includesys/mman.h #includesys/stat.h #includestdlib.h #includesys/types.h int main(int agrc,char* agrv[]) {int len;int fd;void* map;fd open(1.txt,O_RDWR);if(fd0){perror(open);return -1;}len lseek(fd, 0, SEEK_END); printf(%d\n,len);map mmap(NULL,len,PROT_WRITE,MAP_SHARED,fd,0);if(map MAP_FAILED){perror(mmap);return -1;}for(int i0;i5;i){memcpy(map, b, 1);}return 0; }读共享文件 #includestdio.h #includeunistd.h #includestring.h #includefcntl.h #includesys/mman.h #includesys/stat.h #includestdlib.h #includesys/types.h int main(int agrc,char* agrv[]) {int len;int fd;void* map;fd open(1.txt,O_RDWR);if(fd0){perror(open);return -1;}len lseek(fd, 0, SEEK_END); map mmap(NULL,len,PROT_READ,MAP_SHARED,fd,0);if(map MAP_FAILED){perror(mmap);return -1;}while (1) {printf(%s\n,(char*)map);}return 0; }mmap内存映射注意事项 1 创建映射区的过程中隐含着一次对映射文件的读操作将文件内容读取到映射区。 2 当MAP_SHARED时要求映射区的权限应 文件打开的权限(出于对映射区的保护)如果不满足报非法参数Invalid argument错误。 当MAP_PRIVATE时候mmap中的权限是对内存的限制只需要文件有读权限即可操作只在内存有效不会写到物理磁盘且不能在进程间共享。 3 映射区的释放与文件关闭无关只要映射建立成功文件可以立即关闭。 4 用于映射的文件大小必须0当映射文件大小为0时指定非0大小创建映射区访问映射地址会报总线错误指定0大小创建映射区报非法参数错误Invalid argument 5 文件偏移量必须为0或者4096的整数倍不是会报非法参数Invalid argument错误. 6映射大小可以大于文件大小但只能访问文件page的内存地址否则报总线错误 超出映射的内存大小报段错误. system V共享内存 使用system V共享内存的步骤 1、创建/打开共享内存。 2、映射共享内存即把指定的共享内存映射到进程的地址空间用于访问。 3、读写共享内存。 4、撤销共享内存映射。 5、删除共享内存对象。 相关API //共享内存创建 int shmget(key_t key, int size, int shmflg); //共享内存映射 void *shmat(int shmid, const void *shmaddr, int shmflg); //共享内存撤销撤销后内存地址不可再访问 int shmdt(void *shmaddr); //共享内存控制 int shmctl(int shmid, int cmd, struct shmid_ds *buf); shmctl(shmid, IPC_RMID, NULL);删除共享内存写数据 #includestdio.h #includestdlib.h #includeunistd.h #includesys/types.h #includestring.h #includesys/stat.h #includesys/shm.h #includesys/ipc.h int main(int agrc,char* agrv[]) {key_t key;int shimd;void* shmaddr;key ftok(2.txt, 100);printf(key %d\n,key);if(key -1){perror(key);return -1;}shimd shmget(key, 512, IPC_CREAT|0666);printf(shimd %d\n,shimd);if(shimd -1){perror(get);return -1;}shmaddr shmat(shimd, NULL, 0);strcpy(shmaddr, hello,world!);sleep(1);return 0; }读数据 #includestdio.h #includestdlib.h #includeunistd.h #includesys/types.h #includestring.h #includesys/stat.h #includesys/shm.h #includesys/ipc.h int main(int agrc,char* agrv[]) {key_t key;int shimd;void* shmaddr;key ftok(2.txt, 100);if(key -1){perror(key);return -1;}shmaddr shmat(32811, NULL, 0);printf(%s\n,(char*)shmaddr);shmdt(shmaddr);sleep(1);return 0; }
http://www.hkea.cn/news/14521996/

相关文章:

  • 如何做网站对话框国际贸易网站建设 中企动力湖北
  • 杭州网站建设市场网页设计入门知识
  • 如何做flash游戏下载网站校园门户网站系统建设
  • 网站建设营销解决方案wordpress进不去
  • 品牌建设网站规划安家堡网站建设
  • 海南建设银行官方网站智慧门店管理服务平台
  • 大连博硕网站建设做舞美的好素材网站j
  • 怎样仿制网站做网站用win2008系统
  • 做企业网站联系上海网页制作费用
  • wordpress弹框登陆百度seo快速提升排名
  • 淄博学校网站建设定制初中学校网站如何做
  • 网站项目报价单昆山室内设计学校
  • 重庆平台网站建设费用网页设计作业源码
  • 重庆营销型网站制作营销型网站建设思路
  • 网站有哪些类型和它的成功案例wordpress改地址错误
  • 松江做移动网站设计400大看免费行情的软件
  • 网站后台根据前端做吗wordpress 评论表情
  • 网站建设外文参考文献潜江哪里做网站
  • 成都网站建设v芯ee8888e招商网站的建设意义
  • 做网站的什么公司最好小程序平台登陆
  • 高新区网站建设 意义网络规划设计师教材
  • 做视频卖给视频网站wordpress后台ftp
  • 直播网站开发计划书软文案例500字
  • 网站添加百度统计代码吗响应式网站解决方案
  • wordpress分享视频网站住房城乡住房和城乡建设部网站
  • 电影网站建设推广网站建设可视化工具
  • 校园网站建设可行性分析大数据抓取客户软件
  • 社交网站做强徐州网站建设方案开发
  • 政务公开网站建设管理现在装宽带多少钱
  • 阿里云网站备案入口蓝天使网站建设推广