Сейчас на сайте
Сейчас на сайте 0 пользователей и 0 гостей.

Краткая история системы Linux

Система UNIX стала одной из наиболее популярных операционных систем во всем мире благодаря тому, что она поддерживает большое количество платформ и, кроме того, активно распространяется. Начало ее созданию было положено в компании AT&T в 70-е годы, где она разрабатывалась как многозадачная операционная система для миникомпьютеров и так называемых "больших машин" тех лет. С тех пор, несмотря на несколько запутанный интерфейс и отсутствие единой стандартизации, система UNIX выросла в одну из наиболее распространенных операционных систем во всем мире.

Многие фанатики компьютерных изысканий (hackers) полагают, что "UNIX -- это Вещь" и что это "действительно Настоящая Операционная Система", с большой буквы. Этим и объясняется развитие и распространение системы Linux силами все более расширяющейся группы UNIX-хакеров, которые хотят приобщиться к созданию той системы, на которой сами работают.

Модификации системы UNIX существуют для многих типов компьютеров, от персональных и до суперкомпьютеров типа Cray Y-MP. Большинство версий системы UNIX для персональных компьютеров весьма дороги и громоздки. На момент написания исходной версии этой книги (февраль 1998 г.) версия UNIX System V для компьютера с процессором 386 стоила около 1500 долларов США.

Linux является бесплатной версией системы UNIX, изначально разработанной Линусом Торвальдсом (Linus Torvalds) в университете в Хельсинки. Через Интернет ему помогали многочисленные программисты и знатоки системы UNIX. В принципе, любой сообразительный человек с навыками программирования имеет шанс модифицировать или изменить данную систему. Ядро системы Linux не использует никаких программных разработок, созданных компанией AT&T или кем-либо еще, кто может предъявить свои права на интеллектуальную собственность. Значительная часть приложений для системы Linux разработана в рамках проекта GNU, осуществляемого в компании Free Software Foundation, Cambridge, Massachusetts, U.S.A. Тем не менее, программисты всего света вносили свой вклад в постоянно растущий фонд Linux-приложений.

В начале Linux разрабатывался Линусом Торвальдсом как хобби. Линус Торвальдс был вдохновлен системой Minix, другим клоном системы UNIX, разработанным Энди Таненбаумом (Andy Tanenbaum). Первые обсуждения системы Linux проводились в телеконференции Usenet, которая называлась comp.os.minix. Предметом обсуждения была в основном идея создания на основе системы UNIX небольшой учебной операционной системы для тех пользователей системы Minix, которые хотели от нее большего.

На начальном этапе разработки системы Linux в основном создавались средства переключения задач для защищенного режима (protected-mode) процессора 80386. Этот этап работы целиком выполнялся на Ассемблере. О том времени Линус Торвальдс пишет так:
``...А дальше вела прямая дорога: хоть это было тяжелое и скрупулезнейшее программирование, но у меня уже был доступ к некоторым устройствам, и отладка стала проще. На этой стадии я стал использовать язык C, что определенно ускорило процесс. Именно тогда я стал серьезно подумывать об этой своей идее создать "создать Minix, который будет лучше, чем Minix". От этой идеи веяло гигантоманией, однако я надеялся, что в один прекрасный день я смогу перекомпилировать gcc в системе Linux...''

``Два месяца потрачены на основную конфигурацию, и затем весьма скоро у меня уже был драйвер жесткого диска (он иногда давал серьезные сбои, но на моем компьютере он счастливым образом мог работать). Примерно в это же время (конец августа 1991 года) я открыл доступ к версии 0.01: она не была сколько-нибудь совершенной, в ней не было драйвера гибких дисков, и у нее было совсем немного возможностей. Я не думаю, что кто-либо хоть раз откомпилировал эту версию. Но к тому времени я уже серьезно погряз в эту историю, и я не намерен был останавливаться до тех пор, пока я не покорю Minix.''

Никакого сообщения о выходе версии 0.01 системы Linux не было сделано. Исходные тексты версии 0.01 даже не могли быть собраны в единую работающую систему. В них содержались лишь изолированные обрывки исходных текстов ядра системы; предполагалось, что у пользователя есть доступ к системе Minix, в которой эти тексты можно было компилировать, чтобы затем иметь возможность экспериментировать с системой Linux.

5 октября 1991 года Линус Торвальдс объявил о создании первой "официальной" версии системы Linux (эта система носила номер 0.02). К тому времени автор мог запускать на ней bash (GNU Bourne Again Shell) и gcc (GNU C compiler), однако почти ничего помимо этого. Это все еще была система для хакеров. Усилия всегда направлялись в первую очередь на создание ядра системы, а поддержке пользователей, документированию и распространению системы внимание почти не уделялось. И по сей день, похоже, сообщество разработчиков системы Linux считает эти вопросы вторичными, уступающими по важности "истинному программированию" (т.е. развитию ядра системы).

Линус Торвальдс в телеконференции comp.os.minix писал об этом так.
``Не тоскуете ли вы о славном времени системы Minix-1.1, времени славных людей, самостоятельно писавших себе драйверы устройств? Не нужен ли вам проект, достойный вас? Нет ли у вас смертельного желания поломать себе зубы о задачу создания операционной системы, которую вы могли бы видоизменять под свои потребности? Не разочаровывает ли вас то, что все в системе Minix нормально работает? Если да, то это сообщение -- для вас.''

``Как я уже сообщал месяц назад, я работаю над свободной версией -- копией системы Minix -- для компьютеров AT-386. Работа наконец достигла той стадии, когда систему уже можно использовать (либо нельзя -- в зависимости от того, чего вы хотите). Я хотел бы открыть доступ к исходным текстам для широкого распространения. Это всего лишь версия 0.02 ... но я уже успешно запускал в ней bash, gcc, gnu-make, gnu-sed, compress и т.д.''

Благодаря тому, что над системой теперь работал уже не один человек, следующей после версии 0.03 Линус Торвальдс смог присвоить сразу номер 0.10. После нескольких последующих доработок этот номер был увеличен в марте 1992 года до 0.95, что указывало на близость (по мнению авторов) выхода в свет "официальной" версии системы (вообще говоря, номер 1.0 не присваивается до тех пор, пока система либо программа не написана полностью и не избавлена от всех ошибок, хотя бы теоретически). Почти полтора года спустя (в конце декабря 1993 года) версия ядра системы Linux все еще носила номер 0.99.pl14 (pl обозначает patchlevel -- здесь: порядковый номер исправлений, правки), "асимптотически" приближаясь к 1.0. На момент написания исходной версии этой книги (февраль 1998 г.) имеется стабильная версия 2.0.pl33 системы Linux, а ядра, имеющие номер версии 2.1, являются экспериментальными.

Большинство основных некоммерческих программ, разработанных для системы UNIX, адаптированы под Linux. Имеются и коммерческие программные продукты. В настоящее время поддерживается больше аппаратных средств, чем это было в исходной версии ядра системы Linux. Так, неожиданно для всех, "маленький" клон семейства UNIX вырос и завоевал весь мир персональных компьютеров.