Хакер - Спецвыпуск журнала «Хакер» #47, октябрь 2004 г.
И вот, наконец, добрались мы и до всеми нами любимой Linux. История этой операционки, надо сказать, не менее навороченная и интересная, чем история UNIX. За гораздо меньшее время, чем прошло для UNIX, эта ось успела обрасти не меньшим количеством всевозможных клонов. Сама ОС Linux появилась в начале 90-х прошлого века, но история ее берет начало еще в 1987 году. В то время некий датский профессор Эндрю Танненбаум написал книгу «Операционные системы», в качестве учебного пособия к которой прилагался исходник маленькой операционки размером всего 12 000 строк кода – Minix. Это было нечто похожее на UNIX. Ось предназначалась для работы на компьютерах с процессором 8086. Книжка приобрела большую популярность и попала в 1991 году в руки никому еще не известному студенту второго курса и хакеру-любителю Линусу Торвальдсу из Хельсинки. Испробовав Minix, он решил, что система вполне даже интересная, но требует доработки, и приступил к разработке собственной операционки. А в это время некий Ричард Столлмен занимался своим проектом GNU, создавая бесплатное программное обеспечение. Он даже разработал собственный вариант компилятора языка С. Но тогда не было подходящей ОС для его работы. То, что сделал на тот момент Торвальдс, привлекло внимание Столлмена, и они решили объединить усилия. С этого момента началась славная эпопея Linux.
В сентябре 1991 появилась Linux 0.01. В нее были портированы gcc и bash (Born Again Shell). А к октябрю появилась и версия 0.02. Уже тогда все это распространялось бесплатно, вместе с исходниками и документацией, так же, как и в наши дни. Но пока что Linux все же оставался любительской осью.
Почти каждый месяц появлялись более доработанные версии Linux, но до 0.10 версии все они поддерживали только AT-винчестеры, загружались сразу в bash и не имели функции логина пользователей. В 0.11 версии появилась поддержка мультиязычных клавиатур, флоппи-дисководов, VGA– и EGA-дисплеев.
Совсем скоро начали появляться различные варианты Linux, собранные энтузиастами и профессионалами по всему миру. Появились всем известные Red Hat, Debian, Caldera, а также различный софт и утилиты. Еще больше внимания к этой оси привлекло появление в ней графического интерфейса X-Window и KDE.
Позднее Linux был портирован на карманные устройства Palm и PocketPC, а также на Mac (MacOS X). Кроме этого, были добавлены утилиты и эмуляторы для запуска приложений от других операционок. Например, в наше время в Linux с помощью таких утилит можно запускать такие программы, как 1C-Бухгалтерия, и некоторые компьютерные игрушки. В современные дистрибутивы уже входит огромный набор софта и утилит на все случаи жизни: от web-серверов и средств разработки до аналогов клиента ICQ и проигрывателя WinAmp, остается только выбрать при установке, что тебе нужно поставить прямо сейчас. Но главное – это, конечно, как и у всех UNIX-подобных, открытый код и возможность настроить систему под свое железо и свои требования или изменить ее до неузнаваемости – были бы необходимость, желание и умение программировать. Не менее важна, так как Linux развивается быстро и постоянно выходят новые дистрибутивы, возможность обновления и изменения ядра системы, безо всяких переустановок системы или программ (не то что Винда!).
В наше время Linux продолжает успешно развиваться и привлекает к себе внимание все новых и новых пользователей. Именно эта ось, а также FreeBSD, стали основным выбором администраторов web-серверов и корпоративных систем. Понятие «UNIX» давно уже не означает какую-то конкретную стандартную ось, а объединяет все операционки этого семейства, отвечающие определенным требованиям. В сетке всегда можно найти кучу софта и драйверов под всевозможные устройства, а в многочисленных форумах и конференциях – задать любой вопрос, на который обязательно ответят. Добро пожаловать в мир Open Source! :)
История операционных систем1957 – первая операционная система для собственного вычислительного центра Bell Labs – BESYS.
1960 – первые версии DOS от IBM, а также системы GECOS и CTSS.
1965 – разработка операционной системы Multics компаниями Bell Labs и General Electric.
1969 – появление UNICS (позднее – UNIX).
1970 – официальное начало «эры UNIX», появление отечественных осей – ИПМ и Дубна.
1971 – появление отечественного аналога DOS – ДОС ЕС, выпуск второй редакции UNIX, переписанной с Ассемблера на B.
1972 – третья редакция UNIX, появление языка С, появление VM (VM/370).
1973 – четвертая редакция UNIX, полностью переписанная на С.
1974 – пятая редакция UNIX, бесплатное распространение исходников и то самое время, когда UNIX пошел в массы.
1975 – шестая редакция UNIX (UNIX V6), начало коммерческого распространения.
1976 – появление BSD.
1977 – UNIX V/32, появление третьей редакции BSD, в основу которой лег UNIX V/32.
1978 – очередная отечественная операционка – ВК 1010.
1980 – начало бесплатного распространения BSD (позднее – FreeBSD), появление операционки QDOS.
1981 – появление первой версии PC-DOS.
1982 – появление SunOS (позднее – Solaris), выход UNIX System III, появление MS-DOS, появление отечественной операционки – СВМ.
1983 – появление SuperDOS, а поздней, операционной системы Novell NetWare.
1984 – выпуск второго релиза UNIX System V, появление Xenix, появление MacOS.
1985 – появление MS Windows 1.0.
1986 – появление операционки Apple Desctop (по некоторым возможностям сравнима с Windows 95!).
1987 – третий релиз UNIX System V, выход OS/2, выход MS Windows 2.0, появление отечественной оси с графическим интерфейсом – ГРИС, появление простой UNIX-подобной оси Minix как учебного пособия с открытым кодом.
1988 – появление GeOS (клон MacOS, и предок BeOS!).
1990 – появление Windows 3.0.
1991 – выпуск первой официальной версии Linux.
1993 – появление 32-разрядной OS/2 (2.1), появление очередного клона MacOS – оси GsOS.
1994 – появление OS/2 Warp 3.
1995 – появление MS Windows 95 и NT 4.0.
1996 – появление BeOS.
1998 – выход MS Windows 98.
2000 – выход MS Windows 2000.
2001 – выход первого отечественного дистрибутива Linux – ALT-Linux, выход MS Windows XP.
Основные особенности UNIX-систем:– эффективная реализация многозадачности (вытесняющая многозадачность);
– многопользовательский режим;
– наличие встроенных средств защиты информации;
– виртуальная память и свопинг;
– единая иерархическая файловая система, имеющая древовидную структуру независимо от количества и типа физических носителей информации, установленных в системе (каждый носитель является каталогом); в Linux даже другие файловые системы, имеющиеся на машине, являются отдельными каталогами;
– унификация операций ввода/вывода;
– переносимость системы благодаря использованию языка С;
– кэширование физического диска для увеличения скорости доступа к данным;
– разнообразные средства взаимодействия процессов;
– мощный и гибкий пользовательский интерфейс;
– мощный командный язык;
– открытый код как самой системы, так и большинства программ для нее;
– бесплатное распространение большинства UNIX-систем;
– большое количество бесплатного и качественного софта.
В 1996 году в лаборатории Лос Аламос был произведен эксперимент по расчетам ядерного взрыва, в ходе которого соединили 68 компов с Linux в одну систему, чтобы они работали как один большой многопроцессорный суперкомпьютер. Скорость вычислений этой системы достигла 19 миллиардов действий в секунду.
От Multics UNIX унаследовал иерархическую древовидную структуру файловой системы, концепцию файла и процесса, командный интерпретатор для пользователя, многопользовательский режим работы…
Новые редакции UNIX рождались очень часто. Всего за период с 1971 года по 1979 год появилось 11 редакций!
Даже мелкомягкие оставили свой след в развитии UNIX! XENIX – совместный продукт SCO и Microsoft!
Меньше чем через полгода после своего появления, к версии 0.96, Linux распространился уже далеко за пределами Финляндии.
Отец демона и пингвина / Особенности архитектуры UNIX
Vint ( [email protected])
«Linux в массы!», «FreeBSD на рабочий стол!» – эти лозунги все чаще можно увидеть в интернете. Народ захотел Open Source на свои домашние машины. Но что же объединяет Linux и BSD? Этого многие не понимают. По сути, Linux и все возможные клоны BSD происходят от одной системы – UNIX. Давай рассмотрим архитектуру этой ОС более подробно.
Когда мы были молодые, а компьютеры – большиеНа дворе 1969 год. К компьютерам имеют доступ лишь избранные профессора крупнейших университетов. Время работы у терминала строго ограничено, и за каждой минутой загрузки машины ведется строгий учет. Стоимость одного вычислительного центра приближается к бюджету небольшой страны. Именно на такой машине, называвшейся PDP-7, программисты Денис Ритчи (Dennis Ritchie), Радд Кенедей (Rudd Canaday), Дуг Макилрой (Doug McIlroy) и Кен Томпсон (Ken Thompson) в течение месяца написали ОС, оболочку, ассемблер и редактор.