Линус Бенедикт Торвальдс

Автор работы: Пользователь скрыл имя, 17 Января 2011 в 12:08, реферат

Краткое описание

В 1989 г., когда Линус готовился поступить в университет, на конференции ассоциации Usenix в Торонто представители корпорации AT&T объявили о новой системе цен на UNIX System V: около 40 тыс. долл. в расчете на один процессор (7,5 тыс. долл. для учебных заведений). Это были очень большие деньги. Профессор Амстердамского университета Эндрю Таненбаум в ответ на это занялся написанием Minix — усеченной версии UNIX, способной работать на ПК.

Содержимое работы - 1 файл

Документ Microsoft Office Word.doc

— 155.00 Кб (Скачать файл)

* такие работы  связаны с конкретными исполнителями  и отражают их личностные качества.

     Главное достоинство новой философии — организация удаленной совместной работы больших коллективов сторонних программистов над важными проектами, где ключевую роль играют Internet и право свободно распоряжаться совместным продуктом.

     Нельзя не сказать в этой связи о бурно растущей компании VA Linux. Она ведет онлайн-репозитарий открытого ПО под названием SourceForge (http://sourceforge.net). В нем насчитывается уже несколько сотен проектов, касающихся прежде всего развития Linux. И среди них Berlin Project (графическая система) и новое поколение системы программирования языка Perl. Помимо Linux репозитарий SourceForge отслеживает проекты для Windows, Mac OS, BeOS, PalmOS. Одним из собственных проектов VA Linux является СУБД MySQL, получившая статус свободного ПО, распространяемого по лицензии GPL (General Public License, www.fsf.org/copyleft/gpl.html). В плане продвижения идеи совместного программирования VA Linux не одинока. Ее конкурентами здесь являются компании OpenAvenue и Asynchrony.

    Возвращаясь к книге Рэймонда, можно сказать, что метафоры «собора» и «базара», быть может, выбраны не вполне удачно. Но разве дело в метафорах? Вне зависимости от скептицизма критиков Linux и безудержной эйфории его почитателей эта операционная система стала заметной вехой конца 1990-х годов, определив пути развития индустрии в начале нового столетия.

     Можно ли повторить успех Linux и где таится новый технологический скачок подобного масштаба? Вот что говорит об этом Кен Томпсон: «Любое новшество станет реальностью только путем революций такого типа, которую совершила UNIX. Корпорации IBM ничто не угрожало до тех пор, пока не появилось то, что сделало ее системы непригодными. Они полностью оккупировали рынок мэйнфреймов, но я уверен — это как раз оказалось ненужным. То же самое происходит и с Microsoft: до тех пор, пока не появится нечто, способное сделать ее продукты ненужными, преодолеть ценовой порог выхода на рынок будет крайне сложно и вытеснить их невозможно».

 
Характеристика Linux

Операционная система  Linux поддерживает те возможности, которые имеются в других реализациях семейства UNIX, а также те, которых нет больше нигде. Ниже будет дан краткий обзор основных возможностей системы Linux.

  • Характерные особенности Linux
  • Одновременное выполнение нескольких программ
  • Работа нескольких пользователей на одной машине
  • Документированность Linux
  • Отличие Linux от других ОС со свободной лицензией

Характерные особенности Linux

Характерными  особенностями Linux как операционной системы являются:

  • многозадачность: одновременно выполняется множество программ;
  • многопользовательский режим: большое число пользователей одновременно работают на одной и той же машине;
  • защищенный режим процессора (386 protected mode);
  • защита памяти процесса; сбой программы не может вызвать зависания системы;
  • экономная загрузка: Linux считывает с диска только те части программы, которые действительно используются для выполнения;
  • разделение страниц по записи между экземплярами выполняемой программы. Это значит, что процессы-экземпляры программы могут использовать при выполнении одну и ту же память. Когда такой процесс пытается произвести запись в память, то 4-x килобайтная страница, в которую идет запись, копируется на свободное место. Это свойство увеличивает быстродействие и экономит память;
  • виртуальная память со страничной организацией (т.е. на диск из памяти вытесняется не весь неактивный процесс, а только требуемая страница); виртуальная память в самостоятельных разделах диска и/или файлах файловой системы; объем виртуальной памяти до 2 Гбайт; изменение размера виртуальной памяти во время выполнения программ;
  • общая память программ и дискового кэша: вся свободная память используется для буферизации обмена с диском;
  • динамические загружаемые разделяемые библиотеки;
  • дамп программы для пост-мортем анализа: позволяет анализировать отладчиком не только выполняющуюся, но и завершившуюся аварийно программу;
  • совместимость со стандартами System V и BSD на уровне исходных текстов;
  • наличие исходного текста всех программ, включая тексты ядра, драйверов, средств разработки и приложений. Эти тексты свободно распространяются. В настоящее время некоторыми фирмами для Linux поставляется ряд коммерческих программ без исходных текстов, но все, что было свободным так и остается свободным;
  • управление заданиями в стандарте POSIX;
  • эмуляция сопроцессора в ядре, поэтому приложение может не заботиться об эмуляции сопроцессора. Конечно, если сопроцессор в наличии, то он и используется;
  • поддержка национальных алфавитов и соглашений, в т.ч. для русского языка; возможность добавлять новые;
  • множественные виртуальные консоли: на одном дисплее несколько одновременных независимых сеансов работы, переключаемых с клавиатуры;
  • поддержка ряда распространенных файловых систем (MINIX, Xenix, файловые системы System V); наличие собственной передовой файловой системы объемом до 4 Терабайт и с именами файлов до 255 знаков;
  • прозрачный доступ к разделам DOS (или OS/2 FAT): раздел DOS выглядит как часть файловой системы Linux; поддержка VFAT;
  • специальная файловая система UMSDOS, которая позволяет устанавливать Linux в файловую систему DOS;
  • поддержка всех стандартных форматов CD ROM;
  • поддержка сети TCP/IP, включая ftp, telnet, NFS и т.д.

Одновременное выполнение нескольких программ

Так называемая виртуальная мультиконсоль дает возможность на одном дисплее организовать работу нескольких консолей. На первой консоли запускается процесс трансляции. Комбинацией клавиш Alt-F2 следует переход на вторую консоль. Трансляция продолжается, но при этом первая консоль на экране дисплея заменяется новой картинкой второй консоли, в которой запускается, например, редактор текста. Комбинацией Alt-F3 следует переход на третью консоль, в которой запускается отладчик и т.д. Обычно в системе 6 консолей, но можно установить до 64-х. В любой момент времени можно переключиться на любую консоль.

На отдельной консоли может работать как текстовая, так и графическая программа.

На одной из свободных консолей можно запустить оконную графическую систему X Window System. Открываете окно на экране и играете в DOOM (можно через сеть с партнером). В других окнах: база данных, почта, редактор, трансляция и т.д.

Таким образом, одновременно работает много консолей, а на одной из консолей еще и много окон X Window System.

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

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

Работа  нескольких пользователей на одной машине

Пользователь  получает доступ к системе в результате регистрации. На консоль система выводит приглашение login:, а пользователь в ответ вводит свое имя и пароль доступа. После проверки прав доступа система выдает приглашение вводить команды на выполнение программ, принимает команды и выполняет их, например:

Welcome to ALT Linux Master 2.4 (Citron) / tty1

localhost login: root

Password:

Last login: Sun May 4 13:53:14 2008 from localhost on tty1

[root@localhost root]# /usr/sbin/apachectl restart

Stopping httpd service:                                                          [ DONE ]

Checking configuration sanity for httpd:                                 [ DONE ]

Starting httpd service:                                                            [ DONE ]

Welcome to ALT Linux Master 2.4 (Citron) / tty2

localhost login: root

Password:

Last login: Sun May 4 13:55:01 2008 from localhost on tty2

[root@localhost root]# cal

      May 2008

Su Mo Tu We Th Fr Sa

             1  2  3

 4  5  6  7  8  9 10

11 12 13 14 15 16 17

18 19 20 21 22 23 24

25 26 27 28 29 30 31

Обычная практика состоит в том, что пользователь регистрируется на разных виртуальных консолях под разными именами. Например, для выполнения административных функций на консоли 1 пользователь регистрируется как root, для выполнения прикладной программы как oleg на консоли 2 и т.д. Смысл такого подхода в том, что различные пользователи обладают различными индивидуальностями в системе: правами доступа к ресурсам, начальными установками, файлами и т.д.

Если машина включена в сеть, то возможна удаленная регистрация пользователя с машины A в машину B, даже тогда, когда эти машины расположены на разных континентах (связь машин в планетарном масштабе обеспечивает сеть Internet).

Помимо сетевого подключения машина может иметь  десятки терминалов, подключенных через  последовательные порты. Терминал представляет собой экран и клавиатуру, т.е. консоль, на которой пользователь может регистрироваться обычным образом. Только в этом случае консоль не виртуальная, а представлена специализированным отдельным устройством. Терминалом может служить персональный компьютер, на котором выполняется программа, имитирующая логику работы консоли (прозрачный ввод с местной клавиатуры в Linux-машину и прозрачный вывод на местный дисплей данных от Linux-машины).

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

Информация о работе Линус Бенедикт Торвальдс