| RSS



Меню

Bookmark and Share


Календарь
«  Апрель 2009  »
Пн Вт Ср Чт Пт Сб Вс
  12345
6789101112
13141516171819
20212223242526
27282930

Статистика
Ваш IP: 216.73.217.114
Вы используете: v





Сейчас на сайте:

Тех поддержка ->

Облако тэгов
ОС своя операционная система видио Обратная Tor сторона антенна для php эксплоит обзор популярных связок эксплоиту рознь Windows Server 2008 VoIP-телефония QIP Virtual openvz Tune sysctl proc kernel freeBSD monitoring Bluetooth GEO game Video DirectX emulator Shell Python армия спама червь Conficker вирус троян лаборатория касперского пиратство Apple iPhone Microsoft twitter социальная сеть анонимность лицензия Open Source уязвимость MySQL база данных Закон Франция Пират Skype мобильный Deutsche Telekom хакер trend micro кибератака Германия робот Персональные данные Ноутбук Интернет китай цензура windows vista acer Linux патент браузер Firefox Internet Explorer Opera Safari Intel цахал патч Oracle Банкомат IBM США прокси-сервер Dell контроль кибербезопасность приговор Mozilla Chrome безопасность Госдума СМИ Windows 8 взлом Пентагон Украина Facebook Cisco Windows XP нетбук торрент музыка Биометрический обама Nokia Password ФБР IP-адрес sms RSA java Google Captcha Symantec Спам Антивирус тест Windows 7 операционная система windows провайдер авторское право rapidshare UNIX свиной грипп ГИБДД шантаж Дети копирайт McAfee HTTPS администратор icann студент Норвегия New York Times YouTube Warner Music КНДР Ubuntu AMD касперский Россия РФ Патриоты сервер хостинг Wi-Fi суд пароль логин блог фишинг одноклассники Медведев контрафакт мошенник sony Gps по Росгосстрах JavaScript Хакеры Yahoo фас компьютер софт Минкомсвязи Сбой мошенничество Доктор ВЕб Вконтакте Террорист Италия исходный код судья МВД фильтр порнография свобода слова казахстан сисадмин Autodesk Gmail кредитная карта LiveJournal шифрование банк Нанотехнологии wikipedia выборы DNS KaZaA Android Simple атака Mac OS X домен ФСБ прокуратура уголовное дело ICQ Sophos ошибка DARPA военные сайт текст турция конференция спамер Полиция Koobface Великобритания IRC модем белоруссия Грузия Европа Билл Гейтс спецслужбы Royal Bank of Scotland смартфон F-Secure Symbian фильм инновации Новая Зеландия Adobe Австралия вымогатель IDC новости Internet Explorer 9 iPad должник Рунет Ирландия поиск киркоров МТС Реклама слежка минобороны Zeus личные данные eset защита виртуализация Черный список BlackBerry Solaris льготы индия Москва социальные сети flash player paypal BitDefender сертификат Молдавия honda VoIP Anonymous церковь Тюмень технологии наркотик OpenOffice облачный сервис Ассанж передача данных Оптоволокно арест Samsung Иск Apache учетная запись разработка Timeline iTunes Телевидение исследование Санкт-Петербург OpenStreetMap SOPA PIPA тендер запрос Megaupload беспилотник отчет Web-камера приложение магистраль соглашение Инвестиции платформа товарный знак роскомнадзор

Главная » 2009 » Апрель » 7 » Торвальдс раскритиковал дизайн файловых систем
09:04
Торвальдс раскритиковал дизайн файловых систем
В виду последних событий, когда многие люди обнаружили пропадание и обнуление файлов в файловой системе ext4 после краха ОС, создатели ext4 высказались за идею включения в ядро новых системных вызовов, которые бы позволили безопасно работать с файлами.

Линус Торвальдс в списке рассылки ядра жестоко раскритиковал эти предложения и заявил, что большинство программистов никогда не будут этими новыми системными вызовами пользоваться, что они будут нестабильными и плохо оттестированными.

Цитата: "Поэтому вместо того, чтобы придумывать новые системные вызовы, которые никто не будет использовать, разработчики файловых систем должны стараться обеспечить нормальную работу даже плохого кода. Потому что, хотите вы этого или нет, 99% программ именно так и написаны.

Тот неоспоримый факт, что люди не проверяют ошибки, которые возвращает системный вызов close() (закрытие файла и сброс "грязных" данных из кэша на диск) должен означать, что, например, при отложенной записи на диск нужно обязательно проверять ситуацию переполнения диска. Если ваша файловая система возвращает ENOSPC при закрытии файла через вызов close(), а не при записи в него через write(), значит, что вы потеряли обработку ошибок переполнения диска у 90% приложений. Вот так всё просто.

Жаловаться на то, что ошибка в приложении - это всё равно, что жаловаться на скорость света: вы должны иметь дело с реальным миром, а не с тем, каким бы вы хотели его видеть. То же самое относится к идее, что "люди должны писать во временный файл, вызывать функцию fsync для него и переименовывать его вместо оригинала". Вы думаете, что так должно быть, но в реалии программисты пишут open(filename, O_TRUNC | O_CREAT, 0666). Это неправильно, я знаю. Но в конечном итоге, даже разработчики хорошо написанного приложения могут решить, что fsync() не стоит тех потерь в производительности. В git, например, где мы обычно пытаемся быть очень, очень и очень аккуратными, fsync() в объектных файлах по умолчанию выключен.

Почему? Потому что его включение вызывает неприемлемое поведение ext3. Сейчас, надо сказать, дизайн git'a рассчитан на то, что потеря нового БД файла не фатальна, но потенциально это очень беспокоит и смущает - вам, возможно, придётся откатить изменения назад и переделать некоторые операции вручную.

К чему я всё это говорю ? Иногда те разработчики файловых систем, которые говорят "вы должны использовать fsync(), чтобы получить предсказуемые результаты" - это те же люди, которые испортили всё это до такого безобразия, что fsync'ом абсолютно нереально пользоваться.

Теория и практика иногда сталкиваются. Когда это случается, теория проигрывает. Всегда."

Категория: | Просмотров: 1906 | Добавил: aka_kludge | Теги: Торвальдс, ядро Linux | Рейтинг: 0.0/0
Всего комментариев: 0
Главная
...
На службе : дней

09:03
Обновить


Пользователи
aka_kludge
qwerty
LeadyTOR
aka_Atlantis
AdHErENt
mAss
Sissutr
hiss
DrBio
tHick

Поиск

Архив записей


Copyright tHR - TeAM 2026 г. admin: aka_kludge (ICQ:334449009) Moderator's: LeadyTOR, ... Яндекс.Метрика