妩媚汽车

文章
5
资源
0
加入时间
2年10月21天

由unix文件I/O引出的原子操作

第二遍看APUE,打算把知识点总结一下。问题提出:当两个独立进程A、B同时对一个文件进行追加写操作时(假设这里打开时没有使用O_APPEND参数,即没有从文件尾打开),如果此时进程A调用lseek对该文件偏移量设为100(文件尾),同时内核切换为进程B,B将偏移量也设为100,然后B调用write函数使得B偏移量增加到110。之后内核切换为A,此时如果A调用write的话,还是会从100处开始写入,