посоны, мне тут эта, рассказали байку. подтвердите или опровергнете¹ штоле.
в общем, кулсторя начинается с того что узер делает write (или writev) в
файловый дескриптор. фабула в том, что знающие люди утверждают, что вовсе не
обязательно делать flush на случай сегфолта и прочих неприятных моментов.
перипетия, видите ли, в том, что write запишет данные в системный буфер,
который не позже чем через пять секунд² будет таки записан на диск. да, от
внезапного отказа оборудования, типа сдыхания диска или отключения питания, это
не спасёт, но в этом случае на консистентности данных в системе всё равно можно
ставить крест.
в общем, дайте, пожалуйста, почитать чего по этой теме³
----
¹ бля, я хуй знает какая там буква, но буду благодарен за
обоснование, а то там небось какая-нибудь хуита со спряжениями, которые я
ниасилил
² кто-нить, скажите, где таймаут можно настроить?
³ kernel.org не предлагать
hirthwork
20.07.2012 17:37 mcabber133F5802
Do you really want to delete ?
нуэ, после возврата из write(2) данные уже в ядре, потому даже в случае сегфолта ядро должно бы их записать на диск. Про таймаут ничего не знаю, по-идее это зависит от применяемой политики кеширования. И да, zfs успешно переживает выключения питания без потери консистентности за счёт CoW
я про то и бачу. что мне про это же говорили
могу порекомендовать POSIX почитать по этому поводу разве что. или просто подумать.