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

淞南网站建设宁波建设网站制作

淞南网站建设,宁波建设网站制作,软件开发流程图名称,英文网站制作++官网IPC通信方式#xff1a; 一、共享内存 system v #xff1a; 共享内存 是一块#xff0c;内核预留的空间 最高效的通信方式 (避免了用户空间 到 内核空间的数据拷贝) 二、IPC对象操作通用框架#xff1a; key值 申请 》读写 》关闭 》卸载 1.ftok函数#xff1a;…IPC通信方式 一、共享内存 system v  共享内存  是一块内核预留的空间 最高效的通信方式 (避免了用户空间 到 内核空间的数据拷贝) 二、IPC对象操作通用框架 key值 申请 》读写 》关闭 》卸载 1.ftok函数 产生key值 key_t ftok(const char *pathname, int proj_id); 1功能将pathname 和 proj_id 转换为 key值  2参数pathname给一个路径名 proj_id工程id       eg: A         3返回值成功 key值失败 -1      key_t key ftok(/,A);if (key 0){perror(ftok fail);return -1;}printf(key %d\n,key); 2.shmget函数 通过key获取ipc对象 (共享内存) int shmget(key_t key, size_t size, int shmflg); 1功能使用唯一键值key向内核提出共享内存使用申请         2参数key唯一键值size 要申请的共享内存大小shmflg 申请的共享内存访问权限八进制表示如果是第一个申请则用IPC_CREAT如果要检测是否存在用IPC_EXCL         3返回值成功 返回共享内存id一般用shmid表示失败 -1 int shmid shmget(key,1024,IPC_CREAT|0666);if (shmid 0){perror(shmget fail);return -1;}printf(shmid %d\n,shmid); 3.shmat函数 共享内存 绑定  void *shmat(int shmid, const void *shmaddr, int shmflg); 1功能将指定shmid对应的共享内存映射到本地内存。 2参数shmid要映射的本地内存shmaddr本地可用的地址如果不确定则用NULL表示由系统自动分配shmflg0 表示读写SHM_RDONLY只读         3返回值成功 返回映射的地址一般等于shmaddr失败 (void*)-1         void *p shmat(shmid,NULL,0);if(p (void *)-1){perror(shmid fail);return -1;}signal(SIGUSR1,handler);pid_t *q (pid_t *)p;*q getpid();char *s (char *)p;while(1){printf(s %s\n,s);if(strncmp(s,quit,4) 0){break;}paus 4.shmdt函数 解除绑定(映射) int shmdt(const void *shmaddr); 1功能将本地内存与共享内存断开映射关系。         2参数shmaddr 要断开的映射地址。         3返回值成功  0失败  -1 if(shmdt(p) 0){perror(shmdt fail);return -1;} 5.shmctl函数 销毁IPC对象  int shmctl(int shmid, int cmd, struct shmid_ds *buf); //ctl control  1功能修改共享内存属性也可以删除指定的共享内存对象。         2参数shmid 要删除的共享内存对象cmd IPC_RMID 删除对象的宏buff  NULL 表示只删除对象。         3返回值成功 0 失败 -1 if(shmctl(shmid,IPC_RMID,NULL) 0){perror(shmctl fail);return -1;}练习 二、消息队列 消息队列是一旦创建则会一直存在。除非关机或者自己在程序中做删除或者通过命令的方式(ipcrm)显式的来删除消息队列可以实现对不同类型的消息的收发那么这些类型的消息是放在同一个消息队列中的接收方可以学着接受哪种类型的消息 三、信号量集         信号灯的出现主要是为了解决多任务程序并发执行时对资源的访问出现的竞争同步的问题。信号量最初是对资源的一种抽象和模拟最初的信号量(整型信号量)就是通过一个数值来表示某种资源的个数在你这个抽象的基础上他的发明者Dijkstra(迪杰斯塔拉)为其制定了两个原子性(一次性执行完的不可被中断的)的操作P操作(passeren申请通过)V操作vrijgeven释放)来实现对互斥资源的访问后来处于对(1).多个临界资源的访问(2)和资源使用数量的限制(在有些情况下当资源数量低于某一下限值时便不予分配).信号量的概念得到进一步发展形成了所谓的”信号灯集”.
http://www.dnsts.com.cn/news/110321.html

相关文章:

  • 创建企业网站建网站程序下载
  • 西宁市建设网站多少钱wordpress分类目录查不到文章
  • 深圳宝安西乡网站建设wordpress 用户私信功能
  • 怎样建设文章网站云南建设投资集团网站
  • 哈尔滨网站制作推广郴州网站小程序
  • 爱站工具包的模块北京工程造价信息网官网
  • 两学一做网站飘窗WordPress自定义登录页面
  • 网站开发安卓开发个人网站如何建立
  • 灌南网站建设wordpress加载图片很慢
  • 网站建设专题页网站建设包括什么
  • 中国铁路建设集团公司网站网站页面做
  • 手机排名快照首页排名优化服务
  • 湖北智能网站建设推荐工程公司管理软件
  • 怎么做网站策划企业网站的制作周期
  • 百度上做网站模板类似wordpress博客
  • 深圳专业专业网站建设信息时代网站建设的重要性
  • 织梦可以做论坛网站郑州做网站网络公司
  • 北京邢台企业商会网站c语言做网站后台服务
  • 怎么修改网站首页html代码亚马逊跨境电商挣钱吗
  • php做的卖水果网站番禺高端网站建设
  • 天津网站搜索排名小程序营销
  • 网站设计做图工具交互设计大学世界排名
  • 廊坊网站建设团队个人网站作业
  • 安阳 网站建设做pc端网站要多少钱
  • dw做网站一般需要多大尺寸品牌策划流程
  • 怎么做网上直营店网站html5主题 wordpress
  • wordpress如何上传网页sem和seo是什么
  • 如何让新网站快速收录公司网站建设哪家快
  • 站内内容投放计划怎么做网站建设
  • 手机网站主页设计spring可以做多大的网站