3.19作业

本文概述了TCP通信的三次握手和四次挥手、并发与并行的区别、阻塞/非阻塞IO、同步/异步、IO多路复用、广播与组播的概念,以及套接字通信和进程间通信的方式,还介绍了线程同步互斥的基本概念和机制。
摘要由CSDN通过智能技术生成

1、思维导图

2、模拟面试题

1)TCP通信中的三次握手和四次挥手

答:三次握手

       客户端向服务器发送连接请求             

       服务器向客户端回复应答并向客户端发送连接请求

       客户端回复服务端,并建立联系

四次挥手

       进程a向进程b发送断开连接请求

       进程b回应进程a的断开请求

       进程b向进程a发送断开连接请求

       进程a回应进程b的请求,并断开连接

2)并发和并行的区别

答:并发是针对单核的,在只有一个处理器的情况下,同时运行多个进程、任务,称为多并发

并行是针对多核来说的,多个CPU同时处理多个任何称为并行

3)阻塞IO和非阻塞IO的区别

答:阻塞IO会进行等待事件的产生,如果事件没有发生,会阻塞等待,不会执行后续的任务

而非阻塞IO,如果等待的事件没有发生,会立即返回,继续后续的任务

4)同步和异步的区别

答:同步是表示任务有顺序的执行,一个任务要等到上个任务执行完成后才能进行

异步是表示多个任务执行没有先后顺序,可以并发执行

5)详细描述IO多路复用的原理

答:在没有操作系统的情况下,想要让多任务并发执行,于是就引入了IO多路复用技术

原理:将多个阻塞任务的文件描述符,统一放入到一个检测容器中,然后用一个阻塞函数进行管理,如果检测容器中有一个或多个文件描述符对应的事件产生,就会解除阻塞,进而去执行相应的函数,如此循环,实现多路复用。

6)广播的相关内容

答:1.主机之间是一对多的通信模式,网络对其中的每一台主机都会将消息进行转发

2.在当前网络下的所有主机都会收到广播消息(无论对方释放愿意接收)

3.广播的实现方式是基于UDP通信模型

4.广播地址:当前网络号 + 全是1的主机号

5.广播消息不允许穿过路由器

7)组播的相关内容

答:1.组播是实现一对多的通信机制,也就是说,加入了同一个小组的主机可以收到该组内发送的数据

2.组播也是通过UDP实现的

3.组播地址:D类网络地址【224.0.0.0 --- 239.255.255.255】

4.发送端类似于UDP客户端,接收端类似于UDP的服务端

8)在使用套接字通信时,客户端就一定不需要绑定操作吗

答:不一定,对于报式域套接字而言,如果不绑定套接字文件,系统不会自动绑定,发生数据没有问题,但是服务器不能向客户端发送消息。

9)目前学习的进程间通信方式有哪些

答:套接字,有名管道,无名管道,信号,信号灯集,消息队列,共享内存

10)线程的同步互斥机制

答:由于多线程通信时,多个线程会争抢运行临界区,即竞态,又由于线程的自然运行状态无法预测,在临界区的任何代码中都可能随时结束运行,导致代码的逻辑出现问题,所以多线程编程的核心,其实就是对处于竞态的临界区做出保护,就有了同步和互斥机制,互斥是多个线程操作拥有临界资源的临界区的时候,一旦有一个线程正在操作的时候,其他线程都不能运行这段拥有临界资源的临界区,直到第一个线程运行结束, 剩下的其他线程再去抢夺运行权,同步可以简单的理解成有顺序的互斥,通过互斥的手段,安排好每一个线程的运行顺序。

互斥可以采用互斥锁,同步可以使用信号量和条件变量

  • 4
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值