有个朋友问我说写的挺好,但是不知道怎么实践。我本来说看看Sqlite源码,但想想对于新手直接看源码还不现实的。和几个朋友讨论了下这个问题,发现了一个野鸡网站,里面有一个关于I/O存储的题。看了下题目设计和评测规则,挺靠谱的,新手去写写这个题对I/O优化很应该能有很大提升。这里是链接,大家可以去看看,感觉这题好好做做再去看Sqlite,就没有那么困难了。
相信每个程序员都往磁盘写过数据,然而写磁盘的过程到底发生了什么呢?这次我就来带领大家来一次大冒险。
示例代码
这段代码的作用就是往一个data
文件中写入Hello, World!
。我们就以这段C代码和Linux系统(内核版本4.X)为例子来讲解。
#include <stdio.h>
int main() {
FILE* f = fopen("data", "w+");
fputs("Hello, World!", f);
fclose(f);
}