szhan46

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

2013年10月25日

摘要: 先来点概念:http://blog.csdn.net/fudan_abc/archive/2007/07/28/1713976.aspx无聊的it玩家们创建了有一个词,叫做scatter/gather,她是一种用于高性能IO的标准技术.她通常意味着一种DMA传输方式,对于一个给定的数据块,她老人家可能在内存中存在于一些离散的缓冲区,换言之,就是说一些不连续的内存缓冲区一起保存一个数据块,如果没有scatter/gather呢,那么当我们要建立一个从内存到磁盘的传输,那么操作系统通常会为每一个buffer做一次传输,或者干脆就是把这些不连续的buffer里边的冬冬全都移动到另一个很大的buffe 阅读全文
posted @ 2013-10-25 17:16 szhan46 阅读(1671) 评论(0) 推荐(1) 编辑

摘要: https://www.kernel.org/doc/gorman/html/understand/understand012.html 阅读全文
posted @ 2013-10-25 17:12 szhan46 阅读(100) 评论(0) 推荐(0) 编辑

摘要: 在 IA-32 系统中,物理内存最开始的1GB 被称为“低端内存”,1GB 以上的部分称为“高端内存”。先前的Linux 核心版本要求通往存储设备的数据缓存必须放在物理RAM 的低端内存区域,即使是应用程序可以同时使用高端内存和低端内存也存在同样状况。这样,来自低端内存区域数据缓存的I/O 请求可以直接进行内存存取操作。但是,当应用程序发出一个I/O 请求,其中包含位于高端内存的数据缓存时,核心将强制在低端内存中分配一个临时数据缓存,并将位于高端内存的应用程序缓存数据复制到此处,这个数据缓存相当于一个跳转的buffer。例如一些老设备只能访问16M以下的内存,但DMA的目的地址却在16M以上时 阅读全文
posted @ 2013-10-25 17:12 szhan46 阅读(696) 评论(0) 推荐(0) 编辑

摘要: 17.10. The Socket BuffersWe've now coveredmost of the issues related to network interfaces. What's still missing is some more detailed discussion of thesk_buffstructure. The structure is at the core of the network subsystem of the Linux kernel, and we now introduce both the main fields of th 阅读全文
posted @ 2013-10-25 16:58 szhan46 阅读(360) 评论(0) 推荐(0) 编辑