- 1、本文档共5页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
视频笔记
5-27笔记 (通道)
memset() 函数常用于内存空间初始化。如:char str[100];memset(str,0,100);Pipe(int fds[2]]) fd[0]用于读 fd[1]用于写 关闭:close(fd[0]||fd[1])
父进程-创建管道-fork创建子进程-子进程继承管道 则子进程可以通过读取父进程写的
有名管道:
O_NONBLOCK:非阻塞标志,不使用,则当进程不满足运行条件是,进程阻塞,使用则返回错误
mkfifo(文件名,属性)
5-30 笔记 (信号)
常见信号:SIGHUP:终端上发出的结束信号
SIGINT:来自键盘的中断信号(CTRL+C)
SIGKILL:结束接受信号的进程的信号
SIGTERM:KILL命令发出的信号
SIGCHLD:子进程停止或者结束的信号
SIGSTOP:来自键盘(CTRL+Z)或者调试程序的停止执行信号
信号出现,则进行如下三种处理方式:1:忽略信号(SIGKILL和SIGSTOP不能忽略)
2:执行用户希望的动作
3:系统默认的处理方式
发送信号的函数;KILL和RAISE
Int kill(pid_t pid,int signo)
pid0,信号发送给ID为pid的进程
pid=0,信号发给自身
pid0,信号发给同组的ID等于pid绝对值的进程
pid=1,信号发送给所有进程
Int raise(int signo)
Alarm: unsigned int alarm(unsigned int seconds) 在多少秒后产生一个SIGALRM,不捕捉这信号,则默认终止此进程
Pause:int pause(void) 函数会使进程挂起,直到收到信号
Signal: signal(int signnum,*fun()) 在收到signnum信号后,就执行fun()函数
Linux命令:ps aux 获取所有进程信息
5-30 笔记 (共享内存)
创建共享内存:使用shmget(key_t key,int size,int shmflg)函数 key=IPC_PRIVATE:(服务者可以指定关键字IPC_PRIVATE创建一个新IPC结构,将返回的标识符存放在某处(例如一个文件)以便客户取用。关键字IPC_PRIVATE保证服务者创建一个 新IPC结构。这种技术的缺点是;服务者要将整型标识符写到文件中,然后客户在 此后又要读文件取得此标识符。 IPC_PRIVATE关键字也可用于父、子关系进程。父进程指定IPC_PRIVATE创建一个新 IPC结构,所返回的标识符在fork后可由子进程使用。子进程可将此标识符作为ex
ec函数的一个参数传给一个新程序。strncpy(char *dest, char *src, size_t n);当srcdesk时,当把src的值复制进desk后,desk中的后续的字符将置为NULL“文件名”,”项目名”) //返回对应文件键值
msgget(key,IPC_CREAT|0666) //创建消息队列,标志使用IPC_CREAT和IPC_EXCL时,当消息队列已存在,则报错,返回值为key对应的消息队列描述字,=-1,为错误
struct msg_buf
{
int mtype; //消息类型,在下面读取消息时,可以设置为某数值,则指读取对应的消息
char data[255];
};
发送消息
msgsnd(msgid, //往哪个消息队列发送消息,由msgget()函数返回值得到
msgbuf, //要发送的消息的指针
sizeof(msgbuf.data), //要发送的大小
IPC_NOWAIT) //没有阻塞
接收消息
msgrcv(msgid, //从哪个消息队列获取消息
msgbuf, //把消息从消息队列取出来后放在哪里
sizeof(msgbuf.data), //大小
msgtyp //获取消息的类型
IPC_NOWAIT); //标志,0为默认
成功了读取一条消息后,队列中的消息将被删除
6-10笔记
您可能关注的文档
最近下载
- 气动技术论文.docx VIP
- GB/T 22081-2024网络安全技术 信息安全控制.pdf
- DISC性格测试题完整版(附:详细分析).doc VIP
- YYT 0661-2017 外科植入物 半结晶型聚丙交酯聚合物和共聚物树脂.docx VIP
- SUNTEX上泰仪表-在线PH-ORP变送器PC100和PC110操作说明书.pdf
- 物业企业安全风险管控责任清单.pdf VIP
- D5865-19 煤和焦炭总热值的标准试验方法.pdf
- Q_572288222.1-2018含N-P笼型大分子膨胀型阻燃剂.pdf
- 2025湖南高考物理试卷(真题含答案解析).docx
- 危化品企业20项重大隐患判定标准.docx VIP
文档评论(0)