Особенности операционной системы UNIX
Рефераты >> Информатика >> Особенности операционной системы UNIX

ронних пользователей. Количество машин фирмы Bell Laboratories, на которых

была инсталлирована система, возросло до 25, в результате чего была создана

группа по системному сопровождению UNIX внутри фирмы.

В то время корпорация AT&T не могла заниматься продажей компьютерных

продуктов в связи с соответствующим соглашением, подписанным ею с федераль-

ным правительством в 1956 году, и распространяла систему UNIX среди универ-

ситетов, которым она была нужна в учебных целях. Следуя букве соглашения,

корпорация AT&T не рекламировала, не продавала и не сопровождала систему.

Несмотря на это, популярность системы устойчиво росла. В 1974 году Томпсон и

Ричи опубликовали статью, описывающую систему UNIX, в журнале Communications of the ACM [Thompson 74], что дало еще один импульс к распространению системы. К 1977 году количество машин, на которых функционировала система UNIX, увеличилось до 500, при чем 125 из них работали в университетах. Система UNIX завоевала популярность среди телефонных компаний, поскольку обеспечивала хорошие условия для разработки программ, обслуживала работу в сети в режиме диалога и работу в реальном масштабе времени (с помощью системы MERT [Lycklama 78a]). Помимо университетов, лицензии на систему UNIX были переданы коммерческим организациям. В 1977 году корпорация Interactive Systems стала первой организацией, получившей права на перепродажу системы UNIX с надбавкой8 к цене за дополнительные услуги (*), которые заключались в адаптации системы к функционированию в автоматизированных системах управления учрежденческой деятельностью. 1977 год также был отмечен "переносом" системы UNIX на машину, отличную от PDP (благодаря чему стал возможен запуск системы на другой машине без изменений или с небольшими изменениями), а именно на Interdata 8/32.

С ростом популярности микропроцессоров другие компании стали переносить

систему UNIX на новые машины, однако ее простота и ясность побудили многих

разработчиков к самостоятельному развитию системы, в результате чего было

создано несколько вариантов базисной системы. За период между 1977 и 1982

годом фирма Bell Laboratories объединила несколько вариантов, разработанных

в корпорации AT&T, в один, получивший коммерческое название UNIX версия III.

В дальнейшем фирма Bell Laboratories добавила в версию III несколько новых

особенностей, назвав новый продукт UNIX версия V (**), и эта версия стала

официально распространяться корпорацией AT&T с января 1983 года. В то же

время сотрудники Калифорнийского университета в Бэркли разработали вариант

системы UNIX, получивший название BSD 4.3 для машин серии VAX и отличающийся некоторыми новыми, интересными особенностями.

К началу 1984 года система UNIX была уже инсталлирована приблизительно

на 100000 машин по всему миру, при чем на машинах с широким диапазоном вы-

числительных возможностей - от микропроцессоров до больших ЭВМ - и разных

изготовителей. Ни о какой другой операционной системе нельзя было бы сказать

того же. Популярность и успех системы UNIX объяснялись несколькими причина-

ми:

· Система написана на языке высокого уровня, благодаря чему ее легко читать, понимать, изменять и переносить на другие машины. По оценкам, сделанным Ричи, первый вариант системы на Си имел на 20-40 % больший объем и работал медленнее по сравнению с вариантом на ассемблере, однако преимущества ис- пользования языка высокого уровня намного перевешивают недостатки [Ritchie 78b], стр. 1965).

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

· Наличие элементарных средств, позволяющих создавать сложные программы из более простых.

· Наличие иерархической файловой системы, легкой в сопровождении и эффектив- ной в работе.

· Обеспечение согласования форматов в файлах, работа с последовательным потоком байтов, благодаря чему облегчается чтение прикладных программ.

· Наличие простого, последовательного интерфейса с периферийными устройства- ми.

· Система является многопользовательской, многозадачной; каждый пользователь может одновременно выполнять несколько процессов.

· Архитектура машины скрыта от пользователя, благодаря этому облегчен про- цесс написания программ, работающих на различных конфигурациях аппаратных средств.

Простота и последовательность вообще отличают систему UNIX и объясняют

большинство из вышеприведенных доводов в ее пользу.

Хотя операционная система и большинство команд написаны на Си, система

UNIX поддерживает ряд других языков, таких как Фортран, Бейсик, Паскаль,

Ада, Кобол, Лисп и Пролог. Система UNIX может поддерживать любой язык прог-

раммирования, для которого имеется компилятор или интерпретатор, и обеспечи-

вать системный интерфейс, устанавливающий соответствие между пользователь-

скими запросами к операционной системе и набором запросов, принятых в UNIX.

2. СТРУКТУРА СИСТЕМЫ

На Рисунке 1.1 изображена архитектура верхнего уровня системы UNIX. Тех-

нические средства, показанные в центре диаграммы, выполняют функции, обеспе-

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

Рисунок 1.1. Архитектура системы UNIX

программ. Поскольку программы не зависят от аппаратуры, их легко переносить

из одной системы UNIX в другую, функционирующую на другом комплексе техни-

ческих средств, если только в этих программах не подразумевается работа с

конкретным оборудованием. Например, программы, расчитанные на определенный

размер машинного слова, гораздо труднее переводить на другие машины по срав-

нению с программами, не требующими подобных установлений.

Программы, подобные командному процессору shell и редакторам (ed и vi) и

показанные на внешнем по отношению к ядру слое, взаимодействуют с ядром при

помощи хорошо определенного набора обращений к операционной системе. Обращения к операционной системе понуждают ядро к выполнению различных операций, которых требует вызывающая программа, и обеспечивают обмен данны-ми между ядром и программой. Некоторые из программ, приведенных на рисунке, в стандартных конфигурациях системы известны как команды, однако на одном уровне с ними могут располагаться и доступные пользователю программы, такие как программа a.out, стандартное имя для исполняемого файла, созданного компилятором с языка Си. Другие прикладные программы располагаются выше указанных программ, на верхнем уровне, как это показано на рисунке. Например, стандартный компилятор с языка Си, cc, располагается на самом внешнем слое: он вызывает препроцессор для Си, ассемблер и загрузчик (компоновщик), т.е. отдельные программы предыдущего уровня. Хотя на рисунке приведена двухуровневая иерархия прикладных программ, пользователь может расширить иерархическую структуру на столько уровней, сколько необходимо. В самом деле, стиль программирования, принятый в системе UNIX, допускает разработку комбинации программ,выполняющих одну и ту же, общую задачу.


Страница: