读写普通文件和设备文件过程的区别?
时间:2010-07-15
来源:互联网
请教下:我的系统将flash划出一块作为设备进行读写操作,那么读写这个设备文件和读写普通文件时,从应用层的系统调用如read,write,经过内核,再到驱动,这个过程中,函数调用的步骤,哪些相同,哪些不同呢??能够详解解释下?另外设备文件通过只读文件系统为啥也可以写呢?
作者: hnzpzg 发布时间: 2010-07-15
首先读写文件的过程确实是一个复杂漫长的过程,LZ有时间分析一下LINUX虚拟文件系统VFS,,
一般来说设备文件是虚拟文件,也就是说它只存在于内存中,,不过普通文件 比如在硬盘上的文件或
其他存储介质的文件就是实实在在的文件了。
一般来说设备文件是虚拟文件,也就是说它只存在于内存中,,不过普通文件 比如在硬盘上的文件或
其他存储介质的文件就是实实在在的文件了。
作者: wmmy2008 发布时间: 2010-07-15
LZ可以看看《 情景分析》一书, 里面有调用过程解析
作者: openspace 发布时间: 2010-07-15
假设有一个块设备 /dev/sda2 文件系统是ext3 里面有很多文件
如果dd if=/dev/sda2 of=sda.raw bs=1024 count=1024 这是从sda2这个块设备拷贝
1M字节放在sda.raw这个文件 这个过程是不经过文件系统层的
而如果通过open一个文件 然后操作这个read write这个文件 是要经过文件系统层的
愚见 不代表正确
如果dd if=/dev/sda2 of=sda.raw bs=1024 count=1024 这是从sda2这个块设备拷贝
1M字节放在sda.raw这个文件 这个过程是不经过文件系统层的
而如果通过open一个文件 然后操作这个read write这个文件 是要经过文件系统层的
愚见 不代表正确
作者: 木叉叉木大 发布时间: 2010-07-16
在应用层调用两种普通文件和设备文件都一样,没什么区别
作者: linux初学三月 发布时间: 2010-07-16
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28