The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



"Линус Торвальдс выступил с критикой дизайна файловых систем"
Версия для распечатки Пред. тема | След. тема
Форум Разговоры, обсуждение новостей
Исходное сообщение [ Отслеживать ]
Присылайте удачные настройки в раздел примеров файлов конфигурации на WIKI.opennet.ru.
. "Линус Торвальдс выступил с критикой дизайна файловых систем" +/
Сообщение от nuclight (ok), 27-Мрт-09, 11:41 
>>Та да. А где POSIX-семантика предусматривает потерю данных? Ткните пальцем в стандарт,
>>что ли.
>>Понимаете ли, надежность приложений НЕ ДОЛЖНА зависеть от типа нижележащей fs, потому
>>что интерфейс - един.
>>Нефиг, проме того, плодить интерфейсы, если нужную семантику для понимающих (скажем, включить
>>delayed allocation для конкретного файла) приложений можно встроить в существующий интерфейс.
>>По дефолту всё должно быть надежно.
>
>Да вы долбанулись - вы сами приказали ФС открыть файл СО СТИРАНИЕМ
>ДАННЫХ. open(name, O_CREAT | O_TRUNC, 0666)

Ой, какой феерический бред. Приведенные флаги - означают, что создается новый файл, и если на его месте что-то уже было, стереть его. Но и только. Это вовсе не означает, что вновь создаваемый файл после этой точки - будет стёрт.

>Поскольку транзакций в POSIX тоже нет, то нет и их комитта. А
>потому ФС имеет полное право проводить с файлом изменения согласно выполняемой
>программе, т.е. стереть данные.

Вы б внимательнее и новость почитали, и маны. В том же open(2) есть флаг открытия файла в синхронном режиме, когда write() не будет возвращаться без реальной записи. А в rename(2) есть вот  такое:

     The rename() system call guarantees that if to already exists, an
     instance of to will always exist, even if the system should crash in the
     middle of the operation.

STANDARDS
     The rename() system call is expected to conform to ISO/IEC 9945-1:1996
     (``POSIX.1'').

Так что та необходимая атомарность и надежность, о которой говорит и Линус - в POSIX есть. Поверх этого можно и транзакционный интерфейс прикрутить, если приложению хочется, но - уже самому себе в юзерлэнде, ядро не обязано.

Ответить | Правка | Наверх | Cообщить модератору

Оглавление
Линус Торвальдс выступил с критикой дизайна файловых систем, opennews, 26-Мрт-09, 13:34  [смотреть все]
Форумы | Темы | Пред. тема | След. тема



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру