Главная » Ядро Linux » Введение в ядро Linux

0

Д аже  после  трех десятилетий использования  операционная система   (ОС) Unix   все  еще  считается одной  из  самых  мощных и элегантных среди  всех существующих операционных систем.  Со  времени создания операционной системы Unix  в 1969 году, это детище  Денниса Ритчи  (Dennis Ritchie) и Кена Томпсона (Ken Thompson) стало легендарным творением, системой, принцип работы  которой

выдержал  испытание временем и имя которой оказалось почти  незапятнанным.

Операционная система  Unix выросла из Multics — многопользовательской операционной системы, проект  по созданию которой потерпел неудачу в корпорации Bell Laboratories. По  прекращении проекта Multics, сотрудники центра  Bell Laboratories Computer Sciences  Research  Center  прекратили работу  и так и не  создали  дееспособной диалоговой операционной системы. Летом  1969 года программисты корпорации Bell Labs разработали проект  файловой системы, которая в конце  концов была включена в операционную систему Unix. Томпсон осуществил реализацию операционной системы для реально не используемой платформы PDP-7. В 1971 году операционная система  Unix была перенесена на платформу PDP-11, а в 1973 году переписана с использованием языка  программирования С, что было  беспрецедентным шагом  в то время, но этот шаг стал основой для будущей  переносимости. Первая версия  операционной системы Unix, которая использовалась вне стен Bell Labs, называлась Unix System  версии  6, ее обычно  называют V6.

Другие  компании перенесли операционную систему  Unix на новые  типы  машин. Версии, полученные в результате  переноса,  содержали улучшения, которые позже привели к появлению нескольких разновидностей этой  операционной системы, В 1977  году корпорация Bell  Labs выпустила комбинацию этих  вариантов в виде одной  операционной системы Unix System III, а в 1982 году корпорация AT&T представила  версию  System  V1.

Простота устройства операционной  системы Unix, а также  тот факт, что эта система  распространялась вместе  со своим  исходным кодом, привели к тому, что дальнейшие разработки начали  проводиться в других организациях. Наиболее важным среди таких разработчиков был Калифорнийский университет в городе Беркли (University of California  at  Berkeley).

1 Как насчет  версии  System  IV? Ходят слухи,  чтo  это  внутренняя  экспериментальная  версия.

Варианты  операционной системы  Unix  из  Беркли  именовались  Berkeley Software Distributions  (BSD).  Первая  версия  операционной системы  Unix,  разработанная  в Беркли  в 1981 году, называлась  3BSD. Следом за ней появились  выпуски серии 4BSD:

4.0BSD,  4.1BSD,  4.2BSD и 4.3BSD.  В этих версиях операционной системы  Unix была добавлена  виртуальная  память,  замещение  страниц  по  требованию  (demand  paging) и стек протоколов  TCP/IP. Последней  официальной  версией  ОС  Unix  из Беркли была  4.4BSD,  выпущенная  в  1993 году,  которая  содержала  переписанную  систему управления  виртуальной  памятью.  Сейчас  разработка  линии  BSD  продолжается  в операционных системах Darwin,  Dragonfly BSD,  FreeBSD,  NetBSD  и OpenBSD.

В  1980-1990-х  годах многие  компании,  разработчики   рабочих  станций  и  серверов,  предложили  свои  коммерческие  версии  операционной системы  Unix.  Эти  операционные  системы  обычно  базировались  на реализациях  AT&T или  Беркли  и поддерживали  дополнительные  профессиональные возможности,  которые  обеспечивала соответствующая  аппаратная   платформа.  Среди  таких систем  были  Tru64 компании Digital,  HP-UX  компании  Hewlett Packard,  AIX компании  IBM,  DYNIX/ptx  компании Sequent,  IRIX компании  SGI,  Solaris компании  Sun.

Первоначальное  элегантное  устройство  операционной системы  Unix  в соединении  с  многолетними  нововведениями   и улучшениями,  которые  за ними  последовали,  сделали  систему  Unix  мощной,  устойчивой  и  стабильной.   Очень  небольшое количество  характеристик  ОС  Unix  ответственны  за  ее устойчивость.  Во-первых, операционная система  Unix проста:  в то время  как  в некоторых  операционных системах реалилованы  тысячи  системных  вызовов  и  эти системы  имеют  недостаточно ясное  назначение,  Unix-подобные операционные системы  обычно  имеют только несколько  сотен  системных  вызовов  и достаточно  четкий  дизайн.  Во-вторых,  в операционной  системе Unix все представляется в виде файлов2. Такая особенность  позволяет упростить  работу с данными  и устройствами,  а также  обеспечить  это  посредством простых  системных  вызовов:  open () ,  rea d () ,  writ e () ,  ioct l ( ) и  clos e () .  В-третьи,  ядро  и  системные  утилиты  Операционной  системы  Unix  написаны  на  языке программирования  С   это  свойство  делает Unix  удивительно  переносимой   и доступной  для широкого  круга разработчиков  операционной системой.

Для ОС Unix характерно  очень малое время  создания  нового процесса  и уникальный системный  вызов  fork() .  И наконец,  операционная система Unix предоставляет простые  и в то же  время  устойчивые  средства межпроцессного   взаимодействия, которые,  в сочетании  с быстрым  созданием  процессов,   позволяют  создавать простые утилиты, которые умеют выполнять всего одну функцию, но делают это хорошо, и могут быть связаны  вместе для выполнения  более  сложных задач.

Сегодня  Unix — современная  операционная система,  которая  поддерживает многозадачность,  многопоточность, виртуальную  память,  замещение  страниц  по требованию,  библиотеки  совместного использования, загружаемые по требованию,  и сеть TCP/IP. Многие  варианты  операционной системы  Unix поддерживают  масштабирование до сотен  процессоров,   в то время  как другие варианты  ОС Unix работают на миниатюрных  устройствах  в качестве  встраиваемых  систем.  Хотя  разработка  Unix больше  не является  исследовательским  проектом,  все же  продолжаются  разработки (с целью  получить дополнительные  преимущества)  с  использованием  возможностей

2Да, конечно ,  не  все,  но  многое  представлено  в  виде  файла.  В современных  операционных  системах,  таких как  Plan9  (наследник   Unix),   практически  все представляется  в  виде  файлом.

операционной системы Unix, которая при  этом  остается практичной операционной системой общего  назначения.

Операционная система Unix  обязана своим  успехом  простоте и элегантности построения. В основе ее  сегодняшней мощности лежат  давние идеи  Денниса Ритчи, Кена  Томпсона и других  разработчиков, обеспечившие возможность операционной системе Unix  бескомпромиссно развиваться.

Источник: Лав,  Роберт. Разработка ядра  Linux, 2-е  издание. : Пер.  с англ.  — М.  : ООО  «И.Д.  Вильяме» 2006. — 448 с. : ил. — Парал. тит. англ.

По теме:

  • Комментарии