傻大方


首页 > 人文 >

coding|原来 8 张图,就可以搞懂“零拷贝”了!



按关键词阅读:

coding|原来 8 张图,就可以搞懂“零拷贝”了!
本文图片

作者 | 小林coding
来源 | 小林coding(ID:CodingLin)
头图 |CSDN 下载自视觉中国
前言
磁盘可以说是计算机系统最慢的硬件之一 , 读写速度相差内存 10 倍以上 , 所以针对优化磁盘的技术非常的多 , 比如零拷贝、直接 I/O、异步 I/O 等等 , 这些优化的目的就是为了提高系统的吞吐量 , 另外操作系统内核中的磁盘高速缓存区 , 可以有效的减少磁盘的访问次数 。
这次 , 我们就以「文件传输」作为切入点 , 来分析 I/O 工作方式 , 以及如何优化传输文件的性能 。
coding|原来 8 张图,就可以搞懂“零拷贝”了!
本文图片

为什么要有 DMA 技术?
在没有 DMA 技术前 , I/O 的过程是这样的:
CPU 发出对应的指令给磁盘控制器 , 然后返回;
磁盘控制器收到指令后 , 于是就开始准备数据 , 会把数据放入到磁盘控制器的内部缓冲区中 , 然后产生一个中断;
CPU 收到中断信号后 , 停下手头的工作 , 接着把磁盘控制器的缓冲区的数据一次一个字节地读进自己的寄存器 , 然后再把寄存器里的数据写入到内存 , 而在数据传输的期间 CPU 是无法执行其他任务的 。
为了方便你理解 , 我画了一副图:
coding|原来 8 张图,就可以搞懂“零拷贝”了!
本文图片

可以看到 , 整个数据的传输过程 , 都要需要 CPU 亲自参与搬运数据的过程 , 而且这个过程 , CPU 是不能做其他事情的 。
简单的搬运几个字符数据那没问题 , 但是如果我们用千兆网卡或者硬盘传输大量数据的时候 , 都用 CPU 来搬运的话 , 肯定忙不过来 。
计算机科学家们发现了事情的严重性后 , 于是就发明了 DMA 技术 , 也就是直接内存访问(Direct Memory Access)技术 。
什么是 DMA 技术?简单理解就是 , 在进行 I/O 设备和内存的数据传输的时候 , 数据搬运的工作全部交给 DMA 控制器 , 而 CPU 不再参与任何与数据搬运相关的事情 , 这样 CPU 就可以去处理别的事务 。
那使用 DMA 控制器进行数据传输的过程究竟是什么样的呢?下面我们来具体看看 。
coding|原来 8 张图,就可以搞懂“零拷贝”了!
本文图片

具体过程:
用户进程调用 read 方法 , 向操作系统发出 I/O 请求 , 请求读取数据到自己的内存缓冲区中 , 进程进入阻塞状态;
操作系统收到请求后 , 进一步将 I/O 请求发送 DMA , 然后让 CPU 执行其他任务;
DMA 进一步将 I/O 请求发送给磁盘;
磁盘收到 DMA 的 I/O 请求 , 把数据从磁盘读取到磁盘控制器的缓冲区中 , 当磁盘控制器的缓冲区被读满后 , 向 DMA 发起中断信号 , 告知自己缓冲区已满;
DMA 收到磁盘的信号 , 将磁盘控制器缓冲区中的数据拷贝到内核缓冲区中 , 此时不占用 CPU , CPU 可以执行其他任务;
当 DMA 读取了足够多的数据 , 就会发送中断信号给 CPU;
CPU 收到 DMA 的信号 , 知道数据已经准备好 , 于是将数据从内核拷贝到用户空间 , 系统调用返回;
可以看到 ,整个数据传输的过程 , CPU 不再参与数据搬运的工作 , 而是全程由 DMA 完成 , 但是 CPU 在这个过程中也是必不可少的 , 因为传输什么数据 , 从哪里传输到哪里 , 都需要 CPU 来告诉 DMA 控制器 。
早期 DMA 只存在在主板上 , 如今由于 I/O 设备越来越多 , 数据传输的需求也不尽相同 , 所以每个 I/O 设备里面都有自己的 DMA 控制器 。


稿源:(CSDN)

【】网址:http://www.shadafang.com/c/hn10049531C2020.html

标题:coding|原来 8 张图,就可以搞懂“零拷贝”了!


上一篇:荣耀v40|荣耀V40已经在路上,曲面屏+双扬声器,国行2599元有戏!

下一篇:苹果|苹果开始自寻“后路”,转移生产线到印度,郭台铭发言说明了一切


人文

格萨尔|《藏地奇兵》石渠开机 穿越藏地最后秘境热血探险

阅读(15)

由沃星影业、拉近影业、拉近沃星影业出品,成都影视硅谷集团、青岛东望影业联合出品的电影《藏地奇兵》于10月12日在四川石渠正式开机。该片由著名演员秦岚担任出品人兼艺术总监,张楚晗担任总制片人,张著麟、李希杰、温子迅执导,魏千翔、屈菁菁、邢瀚卿、吴...

人文

怪我碍你|十月再见,十一月你好,释然过往,砥砺向前

阅读(12)

逝去的时光中,总有一些东西会在心中成为永恒,那么,就铭记那些美好吧,心中有阳光,充满正能量,微笑着面对生活;也会有些事情成为遗憾,有些心愿没能实现,但也不要气馁,更不要抱怨,笑看过往,努力过好当下和明天,不胡思乱想,不执着于过去。愿所有的真...

人文

年薪制| 年薪制要来了吗?事业单位职工收入或将有大变化!

阅读(22)

近日,人社部组织实施人才服务专项行动,推进高校、科研院所薪酬制度改革。落实高层次人才工资分配激励政策,鼓励事业单位对高层次人才实行年薪制、协议工资制、项目工资等灵活多样的分配形式。鼓励事业单位对高层次人才实行年薪制、协议工资制、项目工资等灵...

人文

社会【观点】医改进程迟缓的原因及破解之策

阅读(20)

1供给侧改革进展迟缓大年夜实际来看,医疗供给侧改革在社会办医、医务人员自由执业、公立病院去行政化三个方面并没有太多本质性的进展,这也是我国医改未能有大年夜冲破的重要原因。1.1社会办医成长迟缓成长社会办医,不仅是实际须要,也是一种策略。在公立病...

人文

时尚探究社成都街拍:图集分享

阅读(43)

这个夏天阴阳色也太好看了吧~又个性,又显白的发色,就算搭配学院风也一点都不突兀。一看就是经常健身的小姐姐,这个身材曲线真的羡慕了~不要太美~...

人文

#quot#六旬男子足底黑痣会长大 检查发现是恶性肿瘤

阅读(10)

本年60 岁的陈师长教师比来有些忧?。本来,三年前他的左脚底足跟邻近长了一颗黄豆大年夜小、凸起的黑" 痣"。一年前开端,这颗" 痣" 有逐渐长大年夜之势,伴有些许压痛,于是陈师长教师按期到家邻近的修脚店把这颗" 痣" 磨平,...

人文

凤眼看房长沙|长三角多市出台调控政策 房企拿地热情不减

阅读(17)

回望过去一段时间,不仅是宁波,整个长三角已是房企必争之地。今年融资环境稍有宽松后,大小房企集体携金杀往长三角,土拍市场屡现高溢价,即便多地出手调控,仍有地王出现。楼市也在市场情绪助推下迅速反弹。“近年来三四线城市房产饱和、风险积聚,标杆企业...

人文

午间时刻《欢喜猎人》要播了吗?包贝尔贾玲再次合作,携手《欢喜密探》原班人马回归

阅读(35)

网剧《欢乐密探》就是一部不错的喜剧作品,而《欢乐猎人》是《欢乐密探》原班人马打造的第二部影视作品,所以有很多人都等着可以早点看到这部剧,然则在《欢乐猎人》拍了两年今后,一向没有播出,大年夜家也都等得异常焦急。不过,有传言说《欢乐猎人》这部电...

人文

Tina|卫衣 + 半裙,照着穿好看爆了 !

阅读(21)

卫衣+半裙的搭配,属实是显胖王者,它要是称第二,那也是太谦虚了。当你挑选的裙子也很宽松时,穿上它就是灾难本身,转过身去看背后,Tina都想落泪,这五五分的身材是真实存在的吗?明明是同款卫衣,却比旁边穿裤子的look,腿长短了好多!不过小可爱们不用害...