Linux отмечает 35 лет (дополнение)
Придётся дополнить тему GNU\Linux чтобы не казалось что моё недовольство этой
системой основано лишь на мелких неудобствах. Поправьте меня, если я что‑то перепутаю.
Начнём с того что Линус Торвальдс создавал свою систему похожей на MINIX, которую
Эндрю Таненабаум начал разрабатывать как учебное пособие к книге «Операционные
системы: Разработка и реализация», в далёком 1987 году.
Разработка самого GNU\Linux началась с 1991 года.
Интересно что и MINIX, и GNU\Linux являются «unix‑подобными», то есть в своей основе
исходят из архитектуры BSD Unix, разработанной ещё в 1978 году.
Вообще здесь важно не то, как давно были начаты разработки, а то насколько изменялась
внутренняя архитектура ядра за прошедшие годы, даже десятилетия. То есть, вероятно
изменений почти не было. Ядро линукс скорее только обрастало новыми функциями. К
которым, например, можно отнести драйверы файловых систем.
Примерно в то же время — точнее с 1981 по 1993 годы — была разработана, ставшая
популярной, MS-DOS от Microsoft. Я не предлагаю спорить — была ли DOS лучше или хуже.
Но лично у меня сложилось впечатление что DOS была более удобна в своей простоте управления. Другими словами Microsoft создавала систему для рядовых пользователей, а
разработчики unix-подобных систем ориентировались на расширяющиеся задачи
администрирования серверных ОС. И прямо скажем удобство использования у них отошло
сильно на задний план.
Вообще здесь можно припомнить старые, очень старые, компьютерные игры, в которых
разработчики сильно завышали сложность просто потому что им самим играть становилось
слишком просто. С линукс примерно так же: «я придумал, я умею этим управлять, значит и
все научатся, потому что для меня это очень просто, понятно и очевидно».
Ну и упомянув Microsoft следует сказать и о их детище — Windows, разработка которой
началась в 1985 году. Со временем «окна» переросли в полноценную операционную систему
и пережили несколько, так скажем, перерождений. Хотя я не уверен что все изменения были
так уж необходимы.
Даже если я в чём-то ошибаюсь пересказывая хронологию тех событий, на вывод это не
влияет:
Архитектурные решения положенные в основу unix-подобных систем тридцать-сорок лет
назад, наверное были прорывными. Но они не проходят проверку временем. Чтобы это
понять, достаточно вспомнить: В то время считалось что «640 Кб должно быть достаточно
для каждого».
То есть, перспективу развития операционных систем вряд ли кто-то мог предугадать. И со
временем сформировалось два два подхода к разработке:
1. Unix-модель: мы тут придумали и больше изобретать ничего не нужно (и так сойдёт!);
2. Microsoft: мы готовы отбрасывать устаревшие решения, но внедряя новые подходы
слишком увлеклись личными выгодами (выкинули простое и нагородили многое что пользователям и не нужно).
В общем, в сфере разработки операционных систем просматривается определённый
застой. Microsoft, словно сговорившись с производителями «железа», делают свою ОС всё
более прожорливой к ресурсам компьютера. Ну а для линукс вообще не стали
пересматривать архитектуру; если когда нибудь и меняли, то широкой публике об этом мало
известно. Вероятно потому что этот «клубок» с годами стал таким запутанным что изменить
какую-то часть кода вообще не представляется возможным.
Но больше всего меня умиляет информация о стоимости переразработки систем на основе
GNU\Linux, которая возрастает с каждым исследованием на сотни миллионов долларов
США.
Это просто не серьёзно. Есть несколько причин не доверять этим исследованиям.
Например, советский автомобиль «Жигули» («LADA») в общем был скопирован с
итальянского «Fiat 124». Причём «фиат» был удостоен титула «автомобиль года», в своё
время. А «копейка» — т. е. улучшенный итальянец — стала более популярной.
Так что и в сфере операционных систем есть на что посмотреть и сделать лучше.
В случае с линукс действительно будет проще написать весь код «с нуля», а не пытаться
улучшить существующую реализацию.
Даже на изучение исходников придётся потратить много времени чтобы в итоге только
вникнуть в структуру алгоритмов. Столько же времени, а может и меньше, понадобится для
того чтобы поставить задачу и написать новые алгоритмы исходя из цели, а не пути.
В общем, больше нет смысла перебирать достоинства и недостатки unix-подобных систем. Хотя бы потому что перенимая накопленный у них опыт, всё равно придётся возвращаться к анализу и
оценке тех или иных компонентов.
И ещё: Не помню кому точно принадлежит фраза «всё есть файл», но вроде бы сказано это
было в отношении концепции линукс.
Однако существует более мудрое выражение: «если у тебя в руках молоток, то всё вокруг
кажется гвоздями». Иначе говоря, если ты хорошо освоил управление файлами, то всё в
системе начинает казаться файлами.
И только спустя много лет может прийти понимание что начальная идея была не самой лучшей.
KioskNews shows a cleaned-up reading view extracted from the publisher’s page — the original always lives on their site, not ours.