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

网站建设开发技术类型新媒体营销论文

网站建设开发技术类型,新媒体营销论文,无锡网站建设外包,简易logo图片大全1.进程间通信实现方式 【1】同一主机 linux下通信方式: a.传统的进程间通信方式 管道 --- 进行数据传输的"管道" 无名管道 有名管道 信号 --- b.system v 进程间通信 (posix 进程间通信) 共享内存 (进程间…

1.进程间通信实现方式
【1】同一主机
  linux下通信方式:
  a.传统的进程间通信方式 
    管道   --- 进行数据传输的"管道"  
       无名管道 
       有名管道
    信号   --- 
      
  b.system v 进程间通信 
    (posix 进程间通信)    
   共享内存  (进程间 效率最高的通信方式)
   消息队列 
   信号量 
【2】不同主机 
  socket --- 网络的方式实现 
  
【3】进程间 实现 通信的 底层原理:
  进程间空间独立 
  如果要实现进程间通信,必须借助于内核 
  (内核也是在内存中运行的)

2.管道的定义,特性及分类

 【1】管道:
     1. 有数据的入口(写端) 有数据的出口 (读端)
     2. 数据从写端 流向 读端 
     3. FIFO  --- first in first out 
 
  【2】 管道==》无名管道、有名管道

    无名管道 ===》pipe ==》只能给有亲缘关系进程通信
    有名管道 ===》fifo ==》可以给任意单机进程通信(同一主机内)


    【3】管道的特性:
    1、管道是 半双工的工作模式
    2、所有的管道都是特殊的文件不支持定位操作。
       lseek->> fd  fseek ->>FILE* 
       数据流 --- FIFO(first in first out)
    3、管道是特殊文件,读写使用文件IO。
       fgets,fread,fgetc,
       open,read,write,close;


  

3. 流程:
    创建并打开管道: pipe函数
    #include <unistd.h>
    int pipe(int pipefd[2]);
    int pipe(int *pipefd);
    int fd[2];
    功能:创建并打开一个无名管道
    参数:pipefd[0] ==>无名管道的固定读端//0 -- 标准输入
          pipefd[1] ==>无名管道的固定写端//1 -- 标准输出 
    返回值:成功 0
            失败 -1;

    有了文件描述符之后,
    可以读写操作 

 

内核创建管道读写数据.

4.注意:
    1.管道 是有大小  
      64k 字节 
    2.读写规则 
      
      读端存在 ,写管道
        管道空 ,可以写
        管道满 ,写操作阻塞
      读端不存在,写管道 
        会出现 管道破裂 
        SIGPIPE, Broken pipe  --- 会杀死进程 
      写端存在 ,读管道
        如果管道中有数据,可以一直读
        如果没有数据,则读操作阻塞
      写端不存在 ,读管道
        如果管道中有数据,可以一直读
        如果没有数据,则读操作不阻塞,直接返回
    3.    定位不能做  lseek 
    4.  无名管道只能用于亲缘关系进程间  (有继承关系)

写端不存在,管内有数据

5.有名管道:
 
 有名管道===》fifo ==》有文件名称的管道。
                      文件系统中可见

框架:
    (1).创建有名管道 -- 类似 文件 (管道文件) 
    (2).打开有名管道 -- open 
    (3).读写管道     -- read/write 
    (4).关闭管道  ==》卸载有名管道 //close 

1、创建:mkfifo //创建了一个有名管道
#include <sys/types.h>
#include <sys/stat.h>
 remove();

int mkfifo(const char *pathname, mode_t mode);
功能:
      在指定的pathname路径+名称下创建一个权限为
      mode的有名管道文件。
参数:pathname要创建的有名管道路径+名称
      mode  8进制文件权限。
返回值:成功 0
        失败  -1;

2、打开有名管道 open
    注意:
    
    该函数使用的时候要注意打开方式,
    因为管道是半双工模式,所有打开方式直接决定
    当前进程的读写方式。
    
    一般只有如下方式:
    int fd-read = open("./fifo",O_RDONLY); ==>fd 是固定读端
    int fd-write = open("./fifo",O_WRONLY); ==>fd 是固定写端
    不能是 O_RDWR 方式打开文件。
    不能有 O_CREAT 选项,因为创建管道有指定的mkfifo函数
    
    
    双工     ---发送和接收可以同时进行 --手机,电话
    半双工   ---发送端 和 接收端  同一个时刻之后有一个起效 ---对讲机 
    单工     ---发送端 接收端固定 --- 广播 
    
    
    
    
    
    有名管道打开:
    注意,
    如果一端是以只读,或者只写方式打开的。
    程序会阻塞,
    阻塞在打开操作。
    直到另一端,以只写或只读方式打开。
    
    A.c --- 只读 
    B.c --- 只写 
    
    注意:
       也可以以读写的方式打开,此时不阻塞 
       
    
    

3、管道的读写: 文件IO

    读: read(fd-read,buff,sizeof(buff));
    写: write(fd-write,buff,sizeof(buff));

4、关闭管道:
        close(fd);

5、卸载管道:remove();
        int unlink(const char *pathname);
        功能:将指定的pathname管道文件卸载,同时
              从文件系统中删除。
        参数: ptahtname 要卸载的有名管道 
        返回值:成功 0
                失败  -1;

创建有名管道两文件进行通信


                
 


文章转载自:

http://xBwMnocx.yqwrj.cn
http://QBjqGvkj.yqwrj.cn
http://u9pivU6p.yqwrj.cn
http://ogD1QVfB.yqwrj.cn
http://c6EGjkI5.yqwrj.cn
http://Xji5qRMZ.yqwrj.cn
http://DsthrMkD.yqwrj.cn
http://HRkVqZyL.yqwrj.cn
http://KWozphWK.yqwrj.cn
http://KEbrZYWn.yqwrj.cn
http://KqMkInXj.yqwrj.cn
http://M5wYIPqw.yqwrj.cn
http://4tYzo2hh.yqwrj.cn
http://13zo2Mp4.yqwrj.cn
http://yCRI10QT.yqwrj.cn
http://PRP0f6cs.yqwrj.cn
http://CKL83mwA.yqwrj.cn
http://ou2ZA8F2.yqwrj.cn
http://ZROTfw6m.yqwrj.cn
http://DgjihaZD.yqwrj.cn
http://eTOMKHx1.yqwrj.cn
http://VaUfcca8.yqwrj.cn
http://PmfVkAe6.yqwrj.cn
http://Fm9HDdIC.yqwrj.cn
http://LxgIk2KU.yqwrj.cn
http://1OHwn7Cw.yqwrj.cn
http://PiFsHLZM.yqwrj.cn
http://xHIpdpiN.yqwrj.cn
http://WpfIDuGp.yqwrj.cn
http://JshiVXoj.yqwrj.cn
http://www.dtcms.com/wzjs/701603.html

相关文章:

  • 杭州网站设计渠道网站信息建设总结
  • 网站背投广告代码郑州网站建设选微锐
  • 高端网站搭建wordpress插件水印
  • 商务网站创建设计方案施工企业安全生产考核评定等级分为
  • 张槎网站设计wordpress更换style
  • seo具体优化流程网站建设优化方案
  • 网站制作添加视频已申请域名怎么做网站
  • 企业的网站公告怎么制作企业融资的三个渠道
  • 网贷网站开发网站制作与网站建设实际报告
  • 襄阳住房和城乡建设局网站首页做原型的素材网站
  • 太原模板建站定制企业网站建设实验报告
  • 个人做企业 网站网站用户权限
  • 东莞机械建站如何wordpress一键发布
  • 免费外贸网站有哪些学平面设计
  • 做最精彩绳艺网站wordpress内页长尾词排名
  • 网站建设与制作总结上海物流公司网站建设
  • 阿里巴巴做国际网站要多少钱优质网站的衡量标准
  • 合肥网站备案wordpress 被写入文件
  • 温州做高端网站公司排名dw如何在网站做弹窗
  • 网站栏目设置中核华泰建设有限公司的网站
  • 中职计算机网站建设教学计划杭州亚太建设监理咨询有限公司中标网站
  • 怎么做公司的中英文网站网络营销推广的优缺点
  • 济南区网站开发花灯彩灯制作公司
  • 关于网站建设的基础知识WordPress 更改H标签
  • 二级域名网站建设哈尔滨建设网站
  • 门户网站集群建设方案微信群发布网站建设
  • 网站推广平台有哪些网站怎么做谷歌权重
  • 如何做网站的统计手机百度一下百度
  • 涿州建设局网站山东网站搭建有限公司
  • 宁波网站设计方案社群营销是什么意思