网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
I/O过程
I/O
介绍
I/O
通常有内存
IO
、网络
I/O
、磁盘
I/O
等,但我们通常说的是网络
I/O
以及磁盘
I/O
。网络
I/O
:本质是
socket
读取
每次
I/O
请求,都会有两个阶段组成:
第一步:等待数据,即数据从磁盘到内核内存;将数据从磁盘文件先加载到
内核内存空间(缓冲区),等待数据准备完成,时间较长。第二步:复制数据,即数据内核内存到进程内存;将数
据从内核缓冲复制到用户空间的进程内存中,时间较短。
Web
请求处理过程
客户端发起情况到服务器网卡
服务器网卡接受到请求后转交给内核处理
内核根据请求对应的套接字,将请求交给工作在用户空间的
Web
服务器进程
4.Web
服务器进程根据用户请求,向内核进行系统调用,申请获取相应资源(如:客户端获取图片)
内核发现
Web
服务器进程请求的是一个存放在本地硬盘上的资源,因此通过驱动程序连接磁盘
内核调用磁盘,获取需要的资源
内核将资源存放在自己的缓存区中,并通知
Web
服务器进程
8.Web
服务器进程通过系统调用取得资源,并将其复制到进程自己的缓冲区中
9.Web
服务器进程形成响应,通过系统调用再次发给内核以响应请求
内核将响应发送至网卡
网卡发送响应给用户
通过这样的一个复杂过程,一次请求就完成了
简单来说就是:
用户请求
——
》送达用户空间
——
〉系统调用
最后的话
最近很多小伙伴找我要Linux学习资料,于是我翻箱倒柜,整理了一些优质资源,涵盖视频、电子书、PPT等共享给大家!
资料预览
给大家整理的视频资料:
给大家整理的电子书资料:
如果本文对你有帮助,欢迎点赞、收藏、转发给朋友,让我有持续创作的动力!
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
ps://bbs.csdn.net/topics/618542503)**
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!