| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 系统运维 -> linux和?络基础面试题整理 -> 正文阅读 |
|
[系统运维]linux和?络基础面试题整理 |
linux系统内核态和用户态是什么,有什么区别?用户空间,指的是用户可以操作和访问的空间,这个空间通常存放我们用户自己写的数据等。 内核空间,是系统内核来操作的一块空间,这块空间里面存放系统内核的函数、接口等。 在用户空间下执行,我们把此时运行的程序的这种状态称为用户态,而当这段程序在内核的空间执行时,这种状态称为内核态。 用户态和内核态的转换系统调用 异常 外围设备的中断 聊聊BIO、NIO、AIO分别都是啥?有什么区别?BIO:Block IO 同步阻塞式 IO,就是我们平常使用的传统 IO,它的特点是模式简单使用方便,并发处理能力低。 NIO:Non IO 同步非阻塞 IO,是传统 IO 的升级,客户端和服务器端通过 Channel(通道)通讯,实现了多路复用。 AIO:Asynchronous IO 是 NIO 的升级,也叫 NIO2,实现了异步非堵塞 IO ,异步 IO 的操作基于事件和回调机制。 BIO是一个连接一个线程。 NIO是一个请求一个线程。 AIO是一个有效请求一个线程。 BIO:同步并阻塞,服务器实现模式为一个连接一个线程,即客户端有连接请求时服务器端就需要启动一个线程进行处理,如果这个连接不做任何事情会造成不必要的线程开销,当然可以通过线程池机制改善。 NIO:同步非阻塞,服务器实现模式为一个请求一个线程,即客户端发送的连接请求都会注册到多路复用器上,多路复用器轮询到连接有I/O请求时才启动一个线程进行处理。 AIO:异步非阻塞,服务器实现模式为一个有效请求一个线程,客户端的I/O请求都是由OS先完成了再通知服务器应用去启动线程进行处理。 TCP和UDP的区别?tcp向上层提供面向连接的可靠服务,udp向上层提供无连接不可靠服务。虽然udp并没有tcp传输来的准确,但是也能在很多实时性要求高的地方有所作为,对数据准确性要求高,速度可以相对较慢的,可以选用tcp TCP三次握手?1.客户端发送syn=1,seq=x(客户端初始化序列)给服务端。 2.服务端返回syn=1,ACK=1,seq=y(服务单初始化序列),ack=x+1给客户端。 3.客户端发送ACK=1,seq=x+1,ack=y+1给服务端。 为什么要进行第三次握手?1、为了保证服务端能够接收到客户端的信息并能做出正确的应答而进行1、2两次握手。为了保证客户端能够接收到服务端的信息并能进行正确的应答而进行2、3两次握手。 2、为了防止无效的连接请求报文到达服务器而引起错误。(TCP发起建立连接的一方不会一直等待对方的回复,如果超时,他再次发起这个请求,上一个作废。) rpc和http的区别,你知道的rpc框架?
https与http
|
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/15 20:26:10- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |