作业-day-240523

思维导图

知识点问答

1、IO多路复用的原理

1、创建一个检测文件描述符的容器 fd_set fds;
2、将需要检测的文件描述符放入容器中 FD_SET(文件描述符,&fds);
3、通过一个阻塞函数阻塞等待容器中是否有事件产生,如果有一个或多个事件产生,则解除阻塞,并将未产生事件的描述符从容器中删除。
4、根据阻塞函数的返回值,解除使用对应文件描述符函数的阻塞。

2、实现IO多讨论复用的函数?select和poll函数的区别

实现IO多讨论复用的函数:select、poll、epoll

select和poll函数的区别:

1、select是检测不同文件描述符的集合。poll是将要检测的文件描述符放入一个结构体数组中。
2、select解除阻塞时,会将集合中未触发事件的描述符删除。poll解除阻塞时不会删除未触发的文件描述符。
3、超时参数不同。select是值传递,poll是地址传递。
4、select在检查文件描述符集合时有大小限制,poll没有。

3、UDP通信中能否使用connect函数?有什么好处?

可以使用。UDP服务器端一旦使用connect和某一客户端建立了连接,就不再接收其他客户端的信息。设置客户端结构体的sin.family=AF_UNSPES,再调用次connect函数即可取消连接。
使用好处:
1、可以实现数据的稳定传输,不至于在跟某端点通信时,被其他端点打断。
2、能够提高传输效率。
未连接读取操作流程:内核中填充对端地址信息-->读取消息-->清空内核-->内核中填充对端地址信息-->读取消息-->清空内核-->...
已连接读取操作流程:内核中填充对端地址信息-->读取消息-->读取消息-->读取消息-->...

4、ARP、HTTP、TFTP、IP、UDP、TCP分别是什么协议?用途?在TCP/IP协议族的哪一层?

ARP:地址解析协议。通过IP地址获取对分mac地址。链路层。

HTTP:超文本传输协议。万维网通信的基础。应用层

TFTP:简单文件传输协议。网络上进行文件传输的一套标准协议,使用UDP传输。应用层。

IP:网际互连协议。能够在不同网络间实现信息传递的协议。网络层

UDP:用户数据报协议。是一种无连接、不可靠、快速传输的协议。传输层。

TCP:传输控制协议。是一种面向连接、可靠的、基于字节流的传输协议。传输层。

5、默认子网掩码

A类网络IP地址范围:[1.0.0.0~~127.255.255.255]        子网掩码:255.0.0.0

B类网络IP地址范围:[128.0.0.0~~191.255.255.255]        子网掩码:255.255.0.0

C类网络IP地址范围:[192.0.0.0~~223.255.255.255]        子网掩码:255.255.255.0

D类网络IP地址范围:[224.0.0.0~~239.255.255.255]        无子网掩码

E类网络IP地址范围:[240.0.0.0~~255.255.255.255]        无子网掩码

6、顺序表和链表的区别

1.内存:顺序表只要定义出来不能增加长度,链表长度不受限
2.空间利用率:
  a.从已经分配了的空间的使用角度:顺序表空间使用率比链表低
  b.从内存角度:顺序表的空间利用率比链表高(顺序表是连续申请空间,链表是每个结点分配空间(会造成中间有很多碎片空间))
3.存储结构:顺序表--->顺序存储     链表--->链式存储
4.操作:
  a.顺序表插入和删除需要移动大量元素(O(n)),链表不需要,时间复杂度是O(1)
  b.顺序表查找和更改操作时间复杂度是O(1),链表查找和更改操作事件复杂度是O(n)

7、进程和线程的区别

1、内存管理有区别
进程:

父进程创建子进程之后,子进程完全拷贝父进程的内存空间。子进程和父进程之间,内存是独立的,互不干涉。

线程:
主线程创建子线程之后,子线程只会额外的开销8k的内存空间,这8k内存用来存放线程属性,内存的起始位置,终止位置,线程 id等等线程相关的数据。子线程的内存空间,和主线程之间是共享的。
2、进程是资源的获取单位,线程是资源的分配运行单位
3、多进程之间的切换,切换效率要低于多线程之间的切换
4、多进程之间的运行互不影响。父进程结束运行,不影响子进程的运行。同理子进程结束运行,也不影响父进程的运行
但是多线程之间,他们的运行不是完全独立。主线程结束运行,所有线程都得结束运行(因为主线程是主函数,主函数结束了,进程就结束了)。其他线程结束运行,互相之间不影响。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/635993.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

vscode 插件开发指南

1安装nodejs、vscode 2安装插件脚手架 npm install -g yo generator-code 3使用命令创建插件项目 yo code 4在vscode中打开项目 5运行调试,按F5键 6在新打开的窗口中按shiftctrlp 然后执行命令 7配置右键菜单命令 遇到问题: 1.package.json中vsc…

科大讯飞Nano+耳机套装登场:智能录音转写,办公充电新方案

目录 一、科大讯飞Nano会议耳机:专业会议助手 二、会议狗Kit:即插即用,智能会议新体验 三、努比亚65W氮化镓充电头:全能快充,一充多用 四、产品总结 在这个快节奏的数字化时代,高效沟通与信息处理能力成…

Koupleless 单进程多应用如何解决兼容问题

文|苟振东(花名:盛知) Koupleless 项目 committer 蚂蚁集团技术专家 本文 5789 字 阅读 12 分钟 本篇文章属于 Koupleless 进阶系列文章第二篇,默认读者对 Koupleless 的基础概念、能力都已经了解,如果还…

【VTKExamples::Texture】第六期 TextureThreshold

很高兴在雪易的CSDN遇见你 VTK技术爱好者 QQ:870202403 公众号:VTK忠粉 前言 本文分享VTK样例TextureThreshold,并解析接口vtkTexture,希望对各位小伙伴有所帮助! 感谢各位小伙伴的点赞+关注,小易会继续努力分享,一起进步! 你的点赞就是我的动力(^U^)ノ~Y…

ImportError: urllib3 v2.0 only supports OpenSSL 1.1.1+解决方案

大家好,我是爱编程的喵喵。双985硕士毕业,现担任全栈工程师一职,热衷于将数据思维应用到工作与生活中。从事机器学习以及相关的前后端开发工作。曾在阿里云、科大讯飞、CCF等比赛获得多次Top名次。现为CSDN博客专家、人工智能领域优质创作者。喜欢通过博客创作的方式对所学的…

网络空间资产梳理

网络空间资产梳理 网络安全建设的实质是对风险的管理,古人云:知己知彼百战不殆。所谓知己,就是要了解自己的资产以及这些资产的脆弱性,知彼就是了解外部威胁及威胁所使用的手段。要做到知己,首先就要对自身的资产进行梳…

虚拟局域网VLAN

前面的是ip地址,后面的子网掩码 hr和财务是俩网段,hr部门发的广播包财务部门也能收到,那么怎么把不同的网段隔离在不同的广播域里呢 如果只有俩部门就用路由器隔离就行了,但是部门一多每一个都用交换机就浪费钱了 可以通过虚拟…

在MySQL数据库中的视图和事务。

视图 view 临时表 作用:优化多表查询的效率 可以将经常使用的连接查询结果使用视图进行保存,避免多次重复的笛卡尔积运算 MySQL数据库在多表查询的时候会自动进行笛卡尔积运算。 如果将来经常要用到某一个多表查询的结果就可以使用视图将这个结果…

代码随想录——路径总和(Leetcode112)需要回顾

题目链接 递归 递归函数什么时候需要返回值? 如果需要搜索整棵二叉树且不需要处理递归返回值,递归函数不要返回值如果需要搜索整棵二叉树且需要处理递归返回值,递归函数需要返回值如果搜索其中一条条件的路径,递归一定需要返回值…

iOS App上架全流程及审核避坑指南

App Store作为苹果官方的应用商店,审核严格周期长一直让用户头疼不已,很多app都“死”在了审核这一关,那我们就要放弃iOS用户了吗?当然不是!本期我们从iOS app上架流程开始梳理,详细了解下iOS app上架的那些…

升级版网创教程wordpress插件自动采集并发布

主要功能: wordpress 插件主题系列支持自动采集并发布。 主要采集: 福缘,中创,冒泡 自动采集各大项目网进行整合发布到自己个人网站 插件话更新,减少网络请求,提升稳定性 代码完美开源 傻瓜式操作,一…

计算机SCI期刊,中科院2区,收稿范围非常广泛!

一、期刊名称 Journal of Web Semantics 二、期刊简介概况 期刊类型:SCI 学科领域:计算机科学 影响因子:2.5 中科院分区:2区 出版方式:开放出版 版面费:$1600 三、期刊征稿范围 《网络语义学杂志》…

Redis实现热点数据排行榜或游戏积分排行榜

数据库中的某张表中存储着文章的浏览量,或者点赞数等,或者游戏积分等数据...... 这些数据的更新在redis中完成,并定时同步到mysql数据库中。 而如果要对这些数据进行排序的话: Redis中的Sorted Set(有序集合)非常适合用于实现排…

ZEDmini使用完全指南

ZEDmini使用 ZED stereolabs 开箱测评 使用说明 ubuntu18.04nvidiacuda10 ubuntu18.04ZED SDK安装和使用 Ubuntu16.04安装NVIDIA显卡驱动 查看显卡信息 redwallredwall-G3-3500:~/catkin_ws$ lspci | grep VGA 00:02.0 VGA compatible controller: Intel Corporation Device …

成功案例(IF=7.4)| 代谢组+16s联合分析助力房颤代谢重构的潜在机制研究

研究背景 心房颤动(AF)是临床上最常见的持续性心律失常,具有显著的发病率和死亡率。高龄是房颤发病率、患病率和进展最显著的危险因素。与年龄在50-59岁之间的参与者相比,80-89岁之间的参与者患房颤的风险增加了9.33倍。目前尚不…

IEEE Transactions on Neural Networks and Learning Systems神经网络和学习系统TNNLS论文投稿须知

一、TNNLS介绍 IEEE Transactions on Neural Networks and Learning Systems作为控制领域的TOP期刊,2024年5月影响因子为10.4,虽然有些下降,之前五年平均影响因子为11.2,但依然是该领域王牌期刊,接收关于神经网络和相…

【软考中级 软件设计师】计算机网络和安全

计算机网络和安全是软件设计师(软考中级)考试中的重要组成部分,它涵盖了网络基础、网络协议、网络架构、网络安全等多个方面。以下是一些核心概念和要点, 计算机网络基础 OSI七层模型:物理层、数据链路层、网络层、传…

《intel开发手册卷3》读书笔记2

IA-32架构的内存管理分为两个部分:分段和分页。分段提供了一种隔离每个进程 或者任务代码、数据和栈模块的机制,保证多个进程或者任务能够在同一个处理器上运 行而不会互相干扰。分页机制实现了传统请求调页的虚拟内存系统,在这种系统中, 程序…

由于删除、修改、重装QT库引起的软件问题@FreeBSD

由于由于删除、修改、重装QT库以及snappy库等,导致很多软件出现了异常,即无法启动,逐个解决问题。 qutebrowser浏览器 报错: qutebrowser报错 No backend library found qutebrowser needs QtWebKit or QtWebEngine, but neith…

自动化测试用例结构

标准的用例结构: 用力标题前提条件用例步骤预期结果实际结果 测试用例对比: