摘要:
server.c #include <sys/socket.h> #include <netinet/in.h> #include <strings.h> #include <stdio.h> #define SERVER_PORT 3333 void main(){ //创建标识 int serv 阅读全文
摘要:
server.c #include <sys/socket.h> #include <netinet/in.h> #include <strings.h> #include <stdio.h> #define SERVER_PORT 3333 void main(){ //创建标识 int serv 阅读全文
摘要:
编程模型 Socket的实质就是一个接口,利用该接口,用户在使用不同的网络协议时,操作函数得以统一。而针对不同协议的差异性操作,则交给了Socket去自行解决。 TCP编程模型 UDP编程模型 阅读全文
摘要:
网络模型 OSI参考模型: 物理层、数据链路层 | 网络层 | 传输层 | 会话层、表示层、应用层 TCP/IP参考模型: 网络接口层 | 网络层 | 传输层 | 应用层 网络协议要素 1.协议规则 2.数据格式 协议架构 以太网协议格式 IP协议格式 TCP协议格式 UDP协议格式 阅读全文
摘要:
线程同步 多个线程按照规定的顺序来执行,即为线程同步。 threadSync1.c #include <pthread.h> #include <stdio.h> #include <unistd.h> pthread_mutex_t mutex; int task = 0; void *threa 阅读全文
摘要:
线程概念 1.线程就是轻量级的进程。 2.线程与创建它的进程共享代码段和数据段。 3.线程拥有自己独立的栈。 线程特点 线程可以和进程做相同或不同的工作,但是与进程共享资源。 线程互斥 在实际应用中,多个线程往往会访问同一个数据或资源,为避免线程之间相互影响,需要引入线程互斥机制,而互斥锁(mute 阅读全文
摘要:
消息队列 消息队列就是一个消息的链表。而一条消息则可以看作一个记录,具有特定的格式。进程可以向中按照一定的规则添加新消息;另一些进程则可以从消息队列中读走消息。 消息格式 每一条消息都有固定的格式。格式如下: struct msgbuf { long mtype; /* message type, 阅读全文
摘要:
共享内存 共享内存是IPC机制中的一种,它允许两个相关的进程访问同一段内存,这是传递数据的一种有效的方式。 A.c #include <sys/types.h> #include <sys/ipc.h> #include <sys/shm.h> #include <stdio.h> #include 阅读全文
摘要:
进程同步 一组并发进程进行相互合作、相互等待,使得各进程按一定的顺序执行的过程称为进程间的同步。 进程同步与进程互斥 进程同步问题的关键在于生产者不需要获取信号量,消费者不需要释放信号量,所以信号量的初值设置为0。但是进程互斥问题中双方都需要获取和释放信号量,所以信号量的初值至少为1。 produc 阅读全文
摘要:
信号量分类 1.二值信号量:信号量的值只能或0或1。 2.计数信号量:信号量的初始值大于1。 什么是键值 1.文件通过文件名来打开文件,从而得到文件的标示符;信号量通过键值来打开信号量,从而得到信号量的标示符。 2.在创建信号量的时候指定键值。 指定键值 1.选择任意数值 2.通过函数构造,例如:k 阅读全文