= Сообщение: 4013 из 8555 ========================================= RU.LINUX = От : Eugene Muzychenko 2:5000/14 06 Apr 17 08:10:55 Кому : Alexey Vissarionov 06 Apr 17 08:10:55 Тема : Совместимость ядер и ядерных модулей FGHI : area://RU.LINUX?msgid=2:5000/14+58e5a022 На : area://RU.LINUX?msgid=2:5020/545+58e5039d = Кодировка сообщения определена как: CP866 ================================== ============================================================================== Привет!
05 Apr 17 16:00, you wrote to me:
AV> Поменяли описание какой-нибудь структуры в одном заголовке - и все AV> равно получили консистентную сборку.
Если в структуре поменяли смысл какого-то члена, или удалили член - консистентной сборки уже не получить без ревизии и переделки всего, зависящего от. Если член просто добавили (а не вставили в середину) - оно останется совместимым на двоичном уровне. В чем смысл?
Hу и структуры традиционно делятся на внутренние, "только для ядра", и интерфейсные, через которые делается обмен данными в API ядра. Какой смысл сколько-нибудь регулярно менять интерфейсные структуры?
В NT ведь умудряются уже почти тридцать лет почти ничего принципиально не менять - только расширяют. И оно продолжает укладываться в принятую еще тогда парадигму.
В "особо ненадежные" структуры можно добавить номер версии.
AV> Таки да, такое возможно только в случае open-source.
Такой подход в известной мере провоцирует безответственность. "Попробуем так, а не получится - поменяем, пипл схавает". :)
Почему тогда это не применяется на уровне ABI? Ведь никому не приходит в голову внезапно поменять коды системных функций или последовательность параметров.
При желании можно было бы оформить динамический загрузчик-связчик в отдельный модуль, а его уже присоединять к ядру или загружать отдельно. Подавляющее большинство драйверов таким путем можно вынести в готовый для загрузки двоичный формат.
AV> Хм... а хотя бы одна из этих "серьезных ОС" еще дотягивает до эхотага AV> по популярности?
Дык, NT. :)
AV> И не отказались, а не могут себе позволить даже при всем желании.
Почему не могут? Hа мой взгляд - просто не хотят.
AV> Что получится, если тебе приделать хвост от бабуина? AV> Вроде оба - обезьяны... :-)
И чем гордиться-то? :) Кровь потерял - какую попало перелить нельзя, только определенных групп. Это ж не фича, а голимый баг. :)
Всего доброго! Евгений Музыченко eu-gene@muzy-chen-ko.net (все дефисы убрать)
--- GoldED+/W32-MSVC 1.1.5-b20161221 * Origin: Fox Tracks, Novosibirsk, Russia (2:5000/14)