С днём рождения, Linux! Вспомним ядро 1.0

в 10:02, , рубрики: linux, SLS, Блог компании RUVDS.com, день рождения, история, системное администрирование

Недавно мы делились с вами материалом об эволюции Linux. Сегодня, в честь недавнего 26-го дня рождения ядра операционной системы, публикуем рассказ о том, с чего всё начиналось.

image


Впервые я установил Linux в 1993-м году. Тогда я работал в MS-DOS, но мне очень нравились системы на Unix, которые стояли в институтском компьютерном зале, где я, студент, сидел целыми днями. Когда я услышал о Linux, бесплатной версии Unix, которую можно было запустить на моём домашнем 386-м, я немедленно захотел её попробовать. Моим первым дистрибутивом Linux была Softlanding Linux System (SLS) 1.03 с ядром Linux 0.99 alpha, уровень патча 11. Системе нужно было целых 2 Мб памяти, или 4 — если вы хотели компилировать программы, или 8 — для запуска оконной системы X.

Я думал, что Linux, по сравнению с MS-DOS — это огромный шаг вперёд. Хотя Linux и недоставало такого же разнообразия программ и игр, какое присутствовало в MS-DOS, я обнаружил, что Linux — система гораздо более гибкая. В отличие от MS-DOS, теперь ОС могла работать в настоящем многозадачном режиме, выполняя одновременно несколько программ. Кроме того, в Linux было множество инструментов, включая компилятор C, который я мог использовать для создания собственных программ.

Годом позже я обновился до SLS 1.05, которая могла похвастаться новейшим ядром Linux 1.0. Но, что важнее, в Linux 1.0 появилась поддержка модулей ядра. Благодаря модулям теперь не нужно было перекомпилировать ядро для поддержки нового аппаратного обеспечения. Вместо этого можно было загрузить подходящий из 63-х имеющихся модулей. В README к SLS 1.05 можно было найти следующее примечание о модулях:

Модуляризация ядра направлена на сокращение, и, в конечном счёте, устранение потребности в перекомпиляции ядра, что было необходимо для замены или модификации драйверов устройств, либо для организации динамического доступа к редко требующимся драйверам. Что важнее, вероятно, усилия отдельных рабочих групп больше не должны быть направлены на разработку ядра. Всё идёт к возможности бинарных выпусков ядра.

25-го августа ядро Linux отмечает 26-летний юбилей. Празднуя это событие, я снова установил SLS 1.05 для того, чтобы напомнить себе о том, каким было ядро Linux 1.0 и лучше увидеть тот огромный путь, который Linux прошла с начала 1990-х. Присоединяйтесь ко мне в этом путешествии по волнам памяти!

Установка

Softlanding Linux System была первым настоящим «дистрибутивом», который включал в себя программу для установки системы. Хотя этот процесс был не таким простым, как в наши дни. Вместо загрузки с CD-ROM, мне нужно было загрузить систему с установочного гибкого диска, а затем запустить инсталлятор из приглашения командной строки.

С днём рождения, Linux! Вспомним ядро 1.0 - 2
Запуск установки SLS 1.05 из командной строки

Приятной мелочью, которая появилась в SLS 1.05, была поддержка цветного текстового инсталлятора. Когда я выбрал цветной режим, экран установщика стал светло-синим, буквы выводились чёрным. Всё-таки, это симпатичнее примитивного чёрного экрана с белым текстом

С днём рождения, Linux! Вспомним ядро 1.0 - 3
Цветной текстовый экран установки в SLS 1.05

Установщик SLS устроен просто, перед нами — только текст, возникающий в нижней части экрана, однако своё дело он делает. Ответив на несколько несложных вопросов, я смог создать раздел для Linux, отформатировать его в файловой системе ext2, и установить систему. Установка SLS 1.05, включая X и инструменты разработки, потребовала 85 Мб дискового пространства. По современным стандартам это очень мало, но когда вышло ядро Linux 1.0, всё ещё были в ходу диски на 120 Мб.

С днём рождения, Linux! Вспомним ядро 1.0 - 4
Создание раздела, форматирование в ext2 и установка Linux

С днём рождения, Linux! Вспомним ядро 1.0 - 5
Первая загрузка

Система

Когда я впервые загрузил только что установленную Linux, в памяти всплыли некоторые детали об этой ранней версии системы. Для начала — Linux не занимает слишком много памяти. После загрузки ОС и испытания нескольких утилит, Linux заняла меньше 4 Мб. На системе с 16 Мб памяти это означало, что для запуска программ ещё осталось достаточно места.

С днём рождения, Linux! Вспомним ядро 1.0 - 6
Проверка файловой системы и свободного места на диске

В Linux 1.0 уже существует знакомая нам файловая система /proc, хотя она и не предоставляет столько же полезных сведений, сколько можно увидеть в современных версиях ОС. В Linux 1.0 /proc включает в себя интерфейсы к базовым средствам получения сведений о системе, таким, как meminfo и stat.

С днём рождения, Linux! Вспомним ядро 1.0 - 7
Файловая система /proc

Директория /etc в этой системе довольно-таки пустынна. Интересно отметить, что SLS 1.05 заимствует скрипты rc из BSD Unix для управления запуском системы. Всё запускается с помощью rc скриптов, с изменениями локальной системы, заданными в файле rc.local. Позднее большинство дистрибутивов Linux будут использовать более знакомые скрипты init из Unix System V, затем — систему инициализации systemd.

С днём рождения, Linux! Вспомним ядро 1.0 - 8
Папка /etc

Работа

После того, как система загрузилась, пришло время приниматься за работу. Итак, что можно сделать с помощью этой ранней ОС, основанной на ядре Linux?

Начнём с управления файлами. Каждый раз, когда вы входите в систему, SLS напоминает об оболочке Softlanding (Softlanding menu shell, MESH) — программе для работы с файлами, которую современные пользователи могут счесть похожей на Midnight Commander. Пользователи в 1990-х сравнили бы MESH с Norton Commander, вероятно, самым популярным файловым менеджером стороннего разработчика для MS-DOS.

С днём рождения, Linux! Вспомним ядро 1.0 - 9
MESH

Помимо MESH, в SLS 1.05 включено не так уж и много полноэкранных приложений. Однако, тут можно найти знакомые инструменты, такие, как почтовый клиент Elm, программируемый редактор GNU Emacs и почтенный Vim.

С днём рождения, Linux! Вспомним ядро 1.0 - 10
Почтовый клиент Elm

С днём рождения, Linux! Вспомним ядро 1.0 - 11
Редактор GNU Emacs

В SLS 1.05 есть даже тетрис, играть можно прямо в терминале.

С днём рождения, Linux! Вспомним ядро 1.0 - 12
Тетрис

В 1990-е самым распространённым способом доступа в интернет было модемное соединение, поэтому в SLS 1.05 было включено приложение Minicom для работы с модемом. Minicom обеспечивало прямое соединение с модемом и требовало от пользователя вводить AT-команды для того, чтобы, например, набрать номер или разорвать соединение. Приложение, кроме того, поддерживало макросы и другие удобные возможности, которые облегчали подключение к модемному пулу местного провайдера.

С днём рождения, Linux! Вспомним ядро 1.0 - 13
Приложение Minicom для работы с модемом

Поговорим теперь о работе с документами. SLS появилась задолго до чего-то вроде LibreOffice или OpenOffice. В Linux в начале 1990-х ничего такого не было. Вместо этого, если вам нужен был текстовый процессор, то вы, вероятнее всего, загрузили бы MS-DOS и запустили бы нечто вроде WordPerfect или шароварного GalaxyWrite.

Однако, все системы на Unix включали в себя набор простых утилит для форматирования текста — nroff и troff. В Linux они были собраны в пакет GNU groff, этот пакет имелся и в SLS 1.05. Одно из испытаний, которому я подверг SLS 1.05, заключалось в создании простого текстового документа с использованием nroff.

С днём рождения, Linux! Вспомним ядро 1.0 - 14
Простой текстовый документ в nroff

С днём рождения, Linux! Вспомним ядро 1.0 - 15
Текст, отформатированный с помощью nroff

Оконная система X

Для того, чтобы заставить систему работать в графическом режиме с использованием оконной системы X, пришлось приложить больше усилий, чем можно было ожидать, почитав документацию к SLS:

Запуск оконной системы X на вашем компьютере может слегка осложниться, преимущественно из-за того, что существует множество типов видеокарт. Linux X11 поддерживает только видеокарты VGA, но существует множество таких карт, а полностью поддерживаются лишь некоторые из них. SLS поставляется с двумя серверами оконной системы X.

Первый, полноцветный XFree86, поддерживает, полностью или частично, такие карты как, ET3000, ET4000, PVGA1, GVGA, Trident, S3, 8514, видеокарты с ускорением графики, ATI plus, и другие.

Второй сервер, XF86_Mono, должен работать практически со всеми VGA-картами, однако, лишь в монохромном режиме. Соответственно, он использует меньше памяти и должен быть быстрее, чем цветной. Однако, он, конечно, выглядит не так приятно.

Основная конфигурационная информация оконной системы X хранится в директории /usr/X386/lib/X11/. В частности, файл Xconfig задаёт тайминги для монитора и видеокарты. По умолчанию оконная система X настроена на использование цветного сервера, но вы можете перейти на монохромный сервер x386mono, если цветной не работает нормально, так как в монохромном режиме система должна заработать с любой стандартной VGA-картой. В целом, это означает назначение в качестве ссылки на текущий X сервер /usr/X386/bin/X.

Просто отредактируйте файл Xconfig, задав тип мыши и тайминги, и введите команду startx.
Всё это звучит не слишком обнадёживающе, и, надо отметить, что то так оно и есть. Ручная настройка оконной системы X, и вправду, эксперимент не из самых простых. К счастью, в SLS 1.05 включена программа syssetup, которая помогает задавать различные системные параметры, включая настройки экрана для оконной системы X. После нескольких ответов на вопросы и экспериментов с настройками, я наконец смог запустить X!

С днём рождения, Linux! Вспомним ядро 1.0 - 16
Программа syssetup

Однако, стоит помнить, что перед нами X из 1994-го года, тогда даже ещё не существовало концепции рабочего стола. Среди доступных мне вариантов были FVVM и TWM. TWM было несложно настроить, он обеспечил простое, но функциональное графическое окружение.

С днём рождения, Linux! Вспомним ядро 1.0 - 17
TWM

Завершение работы

Как ни приятно было мне вспоминать о том, с чего всё начиналось, пришло время возвращаться к моему современному рабочему столу. Моя первая Linux работала на 32-х битном 386-м компьютере с 8 Мб памяти и с жёстким диском на 120 Мб. Сегодня моя машина не в пример мощнее. На ней я могу сделать куда больше, чем в былые времена. Тут к моим услугам 64-битный Intel Core i5, 4 Гб памяти и SSD-диск на 128 Гб. На всём этом работает ядро Linux 4.11.11.

После того, как мои эксперименты с SLS 1.05 окончились, настало время прощаться.

С днём рождения, Linux! Вспомним ядро 1.0 - 18
Выключение компьютера

До встречи, ядро Linux 1.0. Приятно видеть, как далеко ты продвинулось за эти годы.

Уважаемые читатели! А как вы отпраздновали день рождения ядра Linux?

Автор: ru_vds

Источник

Поделиться

* - обязательные к заполнению поля