0
以下のコードは、単にファイルの書き込みに要した時間を計算しています。write()とread()sys呼び出しの間の混乱
#include<time.h>
void main()
{
int fp;
long a,b;
char *str = "Life is like that only";
fp = open("tmp.txt",O_WRONLY,0666);
time(&a);
write(fp,str);
time(&b);
/*(b-a) should be the time taken to write
* the file tmp.txt.
*/
close(fp);
return;
}
私の質問は、私たちは、単一のCPUを持っているならば、(B-A)にかかる時間が正確だろうか、それが並列に実行している他のプロセスの実行によって影響を受けることができるかどうかということです。 ここでは、write()とread()は原子システムのように扱えますが、成功しないかのようにEINTRが設定されています。その実行は他のすべてのプロセスが保留中です。
データの量は私の心配ではありません。正確なものであるか間違いを起こす可能性があるのは時間です。 –