![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
操作系统
文章平均质量分 91
you_are_the_one
献给一直坚持努力的自己
展开
-
学懂IO必备的操作系统知识(二)
接上一篇文章:学懂IO必备的操作系统知识(一)该篇文章是依赖于第一篇,直接看可能会有很多疑问,请先查看第一篇。1、pagecache上一篇提到了pagecache,这里再补充下。在计算机中应用第一次加载某个文件,会产生缺页,这个时候需要kernel从磁盘加载数据到pagecache中、多个应用操作同一个文件数据只会在在pagecach加载一次每个应用通过fd找到自己的文件指针操作文件、内存管理单元维护线性内存和物理内存的关系线性内存是逻辑上连续的物理内存是不连续的会产生碎片page原创 2021-03-01 17:53:33 · 154 阅读 · 3 评论 -
深层次详解同步IO、异步IO、阻塞IO、非阻塞IO
POSIX同步IO、异步IO、阻塞IO、非阻塞IO,这几个词常见于网络相关的文章之中,但是还是不清楚其意义。POSIX(可移植操作系统接口)把同步IO操作定义为导致进程阻塞直到IO完成的操作,反之则是异步IO按POSIX的描述似乎把同步和阻塞划等号,异步和非阻塞划等号,但是为什么有的人说同步IO不等于阻塞IO呢?先来说说几种常见的IO模型吧。IO模型io模型:阻塞,非阻塞,IO多路复用,异步这里统一使用Linux下的系统调用recv作为例子,它用于从套接字上接收一个消息,因为是一个系统调用,所以原创 2021-02-24 16:53:11 · 226 阅读 · 0 评论 -
Linux 的世界,一切皆文件
Linux 的世界,一切皆文件在linux的世界中,它会把一切都看作是文件,包括普通文件、目录文件、字符设备(键盘、鼠标等)、块设备(硬盘、光驱等)、socket、epoll、socket、管道、终端等等,所有一切都抽象成了文件,提供了统一的接口,用于程序调用。文件描述符linux 把一切视为文件,那我们写的程序是怎么找到具体的某个文件呢?文件描述符(file description FD)即为文件的一个标识,程序通过操作fd来操作文件。当应用程序请求内核打开、新建一个文件时,内核就会返回一.原创 2021-02-22 15:53:00 · 283 阅读 · 0 评论 -
学懂IO必备的操作系统知识(一)
很多非计算机专业的学生学习java编程时,一上来就接触各种IO:BIO、NIO、AIO,同步io、阻塞io,可能直接傻掉了,what‘s the hell! 接下来我们就从操作系统层面一点点的解开IO的面纱,让你一睹真容,其实它就是个普普通通的“人”。原创 2021-02-20 18:05:25 · 281 阅读 · 0 评论