![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
fs
我就没事闲溜溜
这个作者很懒,什么都没留下…
展开
-
IO的常识和相关优化
常识 HDD的是机械盘,当跨磁道操作的时候需要机械式地寻道,平均延时很大,一般认为在10ms左右。而对于旋转延时,一般不需要太在意,因为转速都很大,相比寻道延时带来的延时比较小。 Disk以sector为IO的基本单元。这意味着即使写某个sector的一个字节,也是写一个sector,sector大小一般是512B。而对于文件系统来说,目前ext4默认是4K为一个IO单元。 Disk有一个默认的...原创 2020-01-19 11:26:37 · 504 阅读 · 0 评论 -
文件删除/打开的一点知识
linux ext4 一个文件有两个引用计数:打开的文件描述符引用计数和硬链接引用计数。当unlink一个软连接时,软连接当即被删除,文件还在。当unlink一个硬链接时,文件的硬链接引用计数减一。 如果硬链接引用计数为0了,则文件系统中看不到这个文件了(无法再打开)。 如果文件描述符引用计数不为0,则当前正打开的文件描述符依然有效,并且文件系统上的空间不会被回收直到文件描述符引用计数为0了...原创 2018-05-11 16:22:49 · 228 阅读 · 0 评论 -
File system IO可靠性
怎么能写出可靠地数据持久化引擎?假如你是基于VFS来做,那么下面这几点posix规范下的问题点很重要。 保证持久化的话,需要调用fsync。但也不是百分百OK,fsync只能保证数据到达了disk,由于disk有缓存,如果是write back(写缓存异步刷)而非write through(直写持久化)的策略,断电是不一定持久化了的。但企业硬盘特别是RAID卡一般都有备用保护电池。另外,也有指令...原创 2019-09-02 13:39:32 · 246 阅读 · 0 评论