第四周 Linux应用及网络编程

星期一 进程间通信

进程间通信方式:

  1. 管道及有名管道:管道可用于有亲缘关系的进程间通信,有名管道还允许无亲缘的
  2. 信号
  3. 消息队列
  4. 共享内存
  5. 信号量
  6. 套接字

星期二

共享内存

命令 ipcs

相关函数
shmget(key_t key ,int size ,int shmflg) //key是键值,shmflg是权限(rwx)
char *shmat(int shmid,const void *shmaddr,int shmflg) //返回值是映射回来的地址
shmdt() //
int shmctl( ) //删除共享内存段

消息对列

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

线程

创建一个线程不需要分配独立的空间,因为线程属于进程,它是进程的基本调度单位

在这里插入图片描述
如上图,得出多个线程共享一个进程,所以线程间可以直接进行信息交换

线程函数格式:
在这里插入图片描述
pthread_exit() //线程结束
pthread_join() //线程挂起
在这里插入图片描述

互斥锁:
只能保证同一时刻只有一个线程可以访问共享资源,但不能保证先后顺序

在这里插入图片描述
在这里插入图片描述

信号量

在这里插入图片描述
在这里插入图片描述
信号量的值代表同一时刻有多少个线程访问共享资源
信号量的个数代表有多少个线程参与同步操作

星期三 Linux网络编程

cmd ->ipconfig 可查看ip地址

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
socket(套接字)既是一种特殊的IO,也是一种文件描述符
在这里插入图片描述

tcp协议网络通信

在这里插入图片描述
上图的accept是阻塞函数

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

udp协议网络通信

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

周四

在这里插入图片描述

在这里插入图片描述
服务端存储数据(链表)和转发消息
客户端和显示屏完成进程间通信
客户端要与服务器做信息的收发

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值