上一页 1 ··· 8 9 10 11 12 13 14 15 16 ··· 42 下一页
摘要: 网络数据在内核中的流转,最终要服务于网络收发功能,所以先来了解下具体的网络发收过程,然后了解lwIP的网络收发。 具体的网络发收过程 理解软件的设计思想,最重要的是先理解需求,而内核中的数据流转也只是为了满足网络收发的需求而设计的。 发送过程总览 下面来看下应用程序通过网络发送数据的全过程。 应用程 阅读全文
posted @ 2022-06-16 00:00 牛犁heart 阅读(524) 评论(0) 推荐(0)
摘要: 本节作为网络篇的开始,将从一个面试高频出现的问题切入,梳理从输入URL到网卡的网络数据流动过程中都发生了什么事。 从一道经典面试题说起 输入 URL,从一个请求到响应都发生了什么事? 先概括一下全过程,让你有个整体印象。 1.常规的网络交互过程是从客户端发起网络请求,用户态的应用程序(浏览器)会生成 阅读全文
posted @ 2022-06-15 22:26 牛犁heart 阅读(449) 评论(0) 推荐(0)
摘要: 本节来瞧下Linux是如何管理文件,也验证下Linux那句口号:一切皆文件 为此,我们需要首先搞清楚什么是 VFS,接着理清为了实现 VFS 所用到的数据结构,然后看看一个文件的打开、读写、关闭的过程,最后我们还要亲自动手实践,在 VFS 下实现一个“小”且“能跑”的文件系统。 什么是 VFS VF 阅读全文
posted @ 2022-06-12 23:18 牛犁heart 阅读(619) 评论(0) 推荐(0)
摘要: 上节我们已经建立了仓库,并对仓库进行了划分,就是文件系统的格式化,有了仓库就需要往里面存取东西了,对于我们的仓库来说,就是存取应用程序的文件。 所以本节要给仓库增加一些相关的操作,这些操作主要用于新建、打开、关闭、读写文件,它们也是文件系统的标准功能,自然即使我们这个最小的文件系统,也必须要支持。 阅读全文
posted @ 2022-06-12 21:53 牛犁heart 阅读(864) 评论(0) 推荐(0)
摘要: 上节课,已经设计好了文件系统数据结构,相当于建好了仓库的基本结构。 本节将来探索仓库的划分,即什么地方存放仓库的管理信息,什么地方存放进程的“劳动成果”(也就是文件),对应于文件系统的格式化操作。 先来实现文件系统设备驱动,接着建立文件系统超级块,然后建立根目录,最后建立文件系统的位图 文件系统设备 阅读全文
posted @ 2022-06-12 21:03 牛犁heart 阅读(791) 评论(0) 推荐(0)
摘要: 进程加工处理的数据就是进程的劳动成果,这个“劳动成果”如何表示、如实组织、又放在哪里呢?这些问题都会在讲解文件系统的过程中得到解答 先来搞清楚什么是文件系统,然后解决文件系统如何组织文件,最后对文件系统进行设计并抽象成数据结构。 什么是文件系统 我们经常在计算机上听 APE 音乐、看 4K 视频、阅 阅读全文
posted @ 2022-06-12 18:04 牛犁heart 阅读(1544) 评论(0) 推荐(0)
摘要: 本节了解下Linux是如何管理设备的,将从Linux如何组织设备开始,然后研究设备相关的数据结构,最后写一个Linux设备驱动实例。 感受一下Linux下的设备信息 Linux的设计哲学是一起皆是文件,各种设备在Linux系统下都是一个个文件,但这个文件并不对应磁盘上的数据文件,而是对应存在内存当中 阅读全文
posted @ 2022-06-11 19:47 牛犁heart 阅读(3102) 评论(0) 推荐(0)
摘要: 操作系统:设备I/O -- 设备如何处理内核I/O包 上一讲实现了建立设备的接口,相当于制定了部门的相关法规,只要遵循这些法规就能建立一个部门。一个部门的职责不难确定,它应该能对上级下发的任务作出响应,并完成相关工作,而这对应到设备,就是如何处理内核的I/O包。 首先,需要搞清楚什么是I/O包,然后实现内核向设备发送I/O包的工作,最后完成一个驱动实例 阅读全文
posted @ 2022-06-11 18:34 牛犁heart 阅读(123) 评论(0) 推荐(0)
摘要: 在上节课里,我们对设备进行了分类,建立了设备与驱动的数据结构,同时也规定了一个驱动程序应该提供哪些标准操作方法,供操作系统内核调用。这相当于设计了行政部门的规章制度,一个部门叫什么,应该干什么,这些就确定好了。 本节继续探索部门的建立,也就是设备在内核中是如何注册的。我们先从全局了解一下设备的注册流 阅读全文
posted @ 2022-06-11 09:59 牛犁heart 阅读(364) 评论(0) 推荐(0)
摘要: 计算机的结构 计算机结构示意图: 主板上的各种芯片并非独立存在,而是以总线为基础连接在一起的,各自完成自己的工作,又能相互打配合,共同实现用户要求的功能。 如何管理设备 前面的学习中宏,实现了管理内存和进程,其实进程从正面看它是管理应用程序的,反过来看它也是管理CPU的,它能使CPU的使用率达到最大 阅读全文
posted @ 2022-06-10 07:48 牛犁heart 阅读(446) 评论(0) 推荐(0)
上一页 1 ··· 8 9 10 11 12 13 14 15 16 ··· 42 下一页