- 博客(7)
- 资源 (1)
- 收藏
- 关注
转载 linux块设备读写流程
原文链接 http://blog.chinaunix.net/uid-9543173-id-1989006.html在学习块设备原理的时候,我最关系块设备的数据流程,从应用程序调用Read或者Write开始,数据在内核中到底是如何流通、处理的呢?然后又如何抵达具体的物理设备的呢?下面对一个带Cache功能的块设备数据流程进行分析。1、 用户态程序通过open()打开指定的块设
2017-03-27 17:20:28
1729
原创 linux文件打开和读写流程代码解析
打开文件流程:系统调用fd=open("/dev/pcie_ssd",O_RDWR);代码定位fs: open.c文件里SYSCALL_DEFINE3(open, const char __user *, filename, int, flags, umode_t, mode){if (force_o_largefile())flags |= O_LARGE
2017-03-27 09:44:05
3598
转载 BIO
部分转自http://blog.chinaunix.net/xmlrpc.php?r=blog/article&uid=30282771&id=5144166 一个BIO所请求的数据在块设备中是连续的,对于不连续的数据块需要放到多个BIO中。一个BIO所携带的数据大小是有上限的,该上限值由bi_max_vecs间接指定,超过上限的数据块必须放到多个BIO中。bio_v
2017-03-12 18:15:06
380
转载 静态存储区、堆区和栈区
转自 http://blog.youkuaiyun.com/u010977122/article/details/53099425内存分配有三种:静态存储区、堆区和栈区。他们的功能不同,对他们使用方式也就不同。静态存储区:内存在程序编译的时候就已经分配好,这块内存在程序的整个运行期间都存在。它主要存放静态数据、全局数据和常量。栈区:在执行函数时,函数(包括main函数)内局部变量的存储单
2017-02-25 15:34:23
263
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人