linux
菜鸟|哈
一只正在学习的菜鸟学生
展开
-
linux进程通信-FIFO
FIFO 即有名管道可以在不相关的进程进行数据交换FIFO的创建#include<sys/stat.h>int mkfifo(const char *path,mode_t mode);成功返回0,出错返回-1mode参数:与open的参数相同,表示权限,不考虑移植入,可以直接用数据表示。path:路径创建一个FIFO之后,我们要用open函数打开它。FIFO的容量是有...转载 2018-10-12 20:04:37 · 235 阅读 · 0 评论 -
linux学习-信号相关函数
未决:在信号产生和递送之间的时间间隔内,我们称信号是未决的。阻塞信号递送:如果为进程产生了一个阻塞信号,而且对该信号的动作是默认动作或捕捉该信号,则为该进程将此信号保持为未决的,直到进程对此信号解除阻塞,或者对此信号的动作更改为忽略。信号屏蔽字:每个进程都有一个信号屏蔽字,它规定了当前要阻塞递送到该进程的信号集。函数kill和raise#include&lt;signal.h&gt;in...原创 2018-10-13 16:46:20 · 370 阅读 · 0 评论 -
linux网络通信-套接字
#include&amp;lt;sys/socket.h&amp;gt;int socket(int domain,int type,int protocol)参数domain(域)确定通信的特性域描述AF_INETIPV4因特网域AF_INET6IPV6因特网域AF_UNIXUNIX域AF_UPSPEC未指定参数type确定套接字的类型原创 2018-10-18 16:21:05 · 871 阅读 · 1 评论 -
linux进程-exec函数族
补充一下exec函数族:首先回顾一下fork函数是用于创建一个子进程,该子进程几乎是父进程的副本,而有时我们希望子进程去执行另外的程序,exec函数族就提供了一个在进程中启动另一个程序执行的方法。int execl(const char *path, const char *arg, ...)int execv(const char *path, char *const argv[])in...原创 2018-10-16 10:22:17 · 165 阅读 · 0 评论 -
linux进程通信-消息队列
消息队列:是消息的链接表,可以把消息看作一个记录,具有特定的格式以及特定的优先级。对消息队列有写权限的进程可以向其中按照一定的规则添加新消息;对消息队列有读权限的进程则可以从消息队列中读走消息。msgget用于创建或打开一个队列;msgsnd用于将新消息添加到队列尾端;msgrcv用于从队列中获取消息。并不一定要以先进先出的顺序取消息,也可以按消息的类型取消息。#include&lt;s...转载 2018-10-16 17:34:32 · 125 阅读 · 0 评论 -
linux进程通信-信号量
信号量:是一个计数器,用于为多个进程提供对共享资源的访问。信号量是用来调协进程对共享资源的访问的。为了防止出现因多个程序同时访问一个共享资源而引发的一系列问题,通过生成并使用令牌来授权,在任一时刻只能有一个执行线程访问代码的临界区域。临界区域是指执行数据更新的代码需要独占式地执行,而信号量就可以提供这样的一种访问机制,让一个临界区同一时间只有一个线程在访问它。pv操作:信号量S的物理意义,S&g...转载 2018-10-19 11:55:54 · 218 阅读 · 0 评论 -
linux进程通信-共享内存
共享内存是进程间通信中最简单的方式之一。共享内存在各种进程间通信方式中具有最高的效率。因为系统内核没有对访问共享内存进行同步,您必须提供自己的同步措施。解决这些问题的常用方法是通过使用信号量进行同步。1.函数shmget我们使用函数shmget来获得一个共享内存标识符#include<key_t key,size_t size,int flag>返回值:成功返回ID,出错返回-...转载 2018-10-19 18:27:07 · 196 阅读 · 0 评论 -
linux学习-线程简介
线程概念典型的linux系统下面,一个进程看成只有一个线程:一个进程在某一时刻只能做一件事情。而加入了多个控制线程之后,在某一时刻我们就可以做不止一件事情。...转载 2018-10-22 11:06:44 · 203 阅读 · 0 评论