Eu tenho um daemon prefork / fork. Por cima eu vejo, esse processo mestre geralmente consome disco:
PID TID RDDSK WRDSK WCANCL DSK CMD
16830 - 7264K 48696K 18624K 10% our daemon
De strace
, vejo que só se bifurca neste período de tempo:
%código%
Também havia
1461316357.209106 clone(child_stack=0, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD, child_tidptr=0) = 16203 <0.002074>
1461316357.211241 clone(child_stack=0, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD, child_tidptr=0) = 16204 <0.000843>
1461316387.241264 clone(child_stack=0, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD, child_tidptr=0) = 19984 <0.002144>
1461316387.243471 clone(child_stack=0, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD, child_tidptr=0) = 19985 <0.000990>
1461316388.851070 clone(child_stack=0, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD, child_tidptr=0) = 20063 <0.002046>
1461316388.853173 clone(child_stack=0, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD, child_tidptr=0) = 20064 <0.000916>
no strace, mas eles não são interessantes.
Minha pergunta é como nanosleep,waitpid,time,restart_syscall
pode causar uso de disco? E como consertar isso (esse daemon está rodando em servidores de disco, nós tentamos reduzir o uso do disco)?
Tags performance hard-drive fork