
LinuxIPC通信
文章平均质量分 68
天才小C
从事服务器、交换机行业
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Linux 串口编程
串行接口串行接口 (Serial Interface) 是指数据一位一位地顺序传送,其特点是通信线路简单,只要一对传输线就可以实现双向通信,从而大大降低了成本,特别适用于远距离通信,但传送速度较慢。一条信息的各位数据被逐位按顺序传送的通讯方式称为串行通讯。串行通讯的特点是:数据位的传送,按位顺序进行,最少只需一根传输线即可完成;成本低但传送速度慢。串行通讯的距离可以从几米到几千米;根据信息的传送方向,串行通讯可以进一步分为单工、半双工和全双工三种。同步串行接口(SynchronousSer...原创 2020-08-13 10:24:04 · 1267 阅读 · 1 评论 -
LinuxIPC通信之信号(C+Python实现)
Linux信号通俗的来说也就是软中断,一个进程收到一个信号与处理器收到一个中断请求可以说是一样的。信号是异步的,一个进程不必通过任何操作来等待信号的到达,事实上,进程也不知道信号到底什么时候到达。在linux中信号有下面这64个,其中信号有两种分类:(1)可靠性方面:可靠信号与不可靠信号信号值位于SIGRTMIN及SIGRTMAX之间不可靠信号是信号值小于SIGRTMIN的信号...原创 2018-12-26 22:40:46 · 452 阅读 · 0 评论 -
LinuxIPC通信之内存共享(C实现)
共享内存就是映射一段能被其他进程所访问的内存,这段共享内存由一个进程创建,但多个进程都可以访问。共享内存是最快的 IPC 方式,它是针对其他进程间通信方式运行效率低而专门设计的。它往往与其他通信机制,如信号,配合使用,来实现进程间的同步和通信。C:相关函数:shmget函数:用于开辟或指向一块共享内存,返回获得共享内存区域的ID,如果不存在指定的共享区域就创建相应的区域。 ...原创 2018-12-27 14:13:12 · 879 阅读 · 0 评论 -
LinuxIPC通信消息队列(C+Python实现)
消息队列是SystemV版本中三种进程通信机制之一,另外两种是信号量和共享存储段。消息队列提供了进程间发送数据块的方法,而且每个数据块都有一个类型标识。消息队列是基于消息的,而管道是基于字节流。创建的消息队列,生命周期随内核,只有内核重启或用户主动去删除,才可以真正关闭消息队列。 一个或多个进程可向消息队列写入消息,而一个或多个进程可从消息队列中读取消息,这种进程间通讯机制通常使用在客户/服...原创 2018-12-28 16:49:57 · 1592 阅读 · 0 评论 -
LinuxIPC通信之匿名管道(C+Python实现)
进程通信是指在进程间传输数据(交换信息)。进程通信根据交换信息量的多少和效率的高低,分为低级通信(只能传递状态和整数值)和高级通信(提高信号通信的效率,传递大量数据,减轻程序编制的复杂度)。其中高级进程通信分为三种方式:共享内存模式、消息传递模式、共享文件模式。在别人博客看到的这段话,也不知道那个抄那个的哈哈linux下的进程通信手段基本上是从Unix平台上的进程通信手段继承而来的。而对U...原创 2018-12-24 16:46:25 · 584 阅读 · 0 评论 -
LinuxIPC通信信号量(C+Python实现)
信号量(Semaphore),有时被称为信号灯,是在多线程环境下使用的一种设施,是可以用来保证两个或多个关键代码段不被并发调用。在进入一个关键代码段之前,线程必须获取一个信号量;一旦该关键代码段完成了,那么该线程必须释放信号量。其它想进入该关键代码段的线程必须等待直到第一个线程释放信号量。以一个停车场的运作为例。简单起见,假设停车场只有三个车位,一开始三个车位都是空的。这时如果同时来了五辆车,...原创 2018-12-31 18:32:07 · 551 阅读 · 0 评论 -
LinuxIPC通信之命名管道(C+Python实现)
命名管道与上一篇讲到的匿名管道很像,但是命名管道没有血缘关系的限制。mkfifo创建命名管道文件,文件的大小永远为0,表示不占用磁盘的大小,它是用一个名字代表内核上的一块缓存,没有亲缘关系的进程可以通过名字拿到内核上的这块缓存,值得注意的是要写的时候读写管道必须同时打开Python实现:if os.access(path,os.F_OK): print("/tmp/py...原创 2018-12-25 23:34:34 · 491 阅读 · 0 评论 -
LinuxIPC通信socket(C)
Internet-“冷战”的产物 1957年10月和11月,前苏联先后有两颗“Sputnik”卫星上天 1958年美国总统艾森豪威尔向美国国会提出建立DARPA (Defense Advanced Research Project Agency),即国防部高级研究计划署,简称ARPA 1968年6月DARPA提出“资源共享计算机网络” (Resource Sharing Computer Netw...原创 2019-01-03 14:05:20 · 791 阅读 · 0 评论 -
LinuxC网络通信API汇总
创建套接字:接口声明:int socket(int domain, int type, int protocol);参数:domain:域。AF_INET/PF_INET:网际协议AF_UNIX/PF_UNIX:本地协议,可写成AF_LOCAL/PF_LOCALtype:类型。SOCK_STREAM:流式套接字SOCK_DGRAM:数据报套接字protoco...原创 2019-01-02 15:24:21 · 587 阅读 · 0 评论