Обзор операционной системы UNIX

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

ОС UNIX предназначена для опытных программистов. Это мощ­ная и гибкая система. Она характеризуется небольшим количеством базовых элементов, которые можно комбинировать бесконечным числом способов, чтобы приспособить их для конкретного приложе­ния. Одно из основных правил системы UNIX заключается в том, что каждая программа должна выполнять всего одну функцию, но делать это хорошо. В системе устранена бесполезная избыточность.

Операционную систему UNIX можно рассматривать в виде пирамиды (рис. 2). У основания пирамиды располагается аппаратное обеспечение, состоящее из ЦП, памяти, дисков, терминалов и дру­гих устройств, На аппаратном обеспечении работает система UNIX. Ее функция заключается в управлении аппаратным обеспечением и предоставлении всем программам системных вызовов. Эти систем­ные вызовы позволяют программам создавать процессы, файлы и прочие ресурсы и управлять ими.

Обзор операционной системы UNIX - №1 - открытая онлайн библиотека

Рис. 2. Уровни операционной системы UNIX

Программы обращаются к системным вызовам, помещая аргу­менты в регистры ЦП и выполняя команды прерывания для пере­ключения из пользовательского режима в режим ядра и передачи управления операционной системе UNIX.

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

Таким образом, существует 3 интерфейса в ОС UNIX: интерфейс системных вызовов, интерфейс библиотечных функций и интерфейс, образованный набором стандартных обслуживающих программ. Последний интерфейс большинство пользователей считает системой UNIX. В действительности он не имеет практически никакого отно­шения к самой системе и легко может быть заменен. В некоторых версиях системы, например, этот ориентированный на ввод с кла­виатуры интерфейс пользователя был заменен графическим интер­фейсом, ориентированным на использование мыши, для чего не по­требовалось никаких изменений в самой системе. Именно эта гибкость сделала систему UNIX столь популярной и позволила ей пережить многочисленные изменения технологии, лежащей в ее ос­нове.

У многих версий системы UNIX имеется графический интерфейс пользователя, сходный с популярными интерфейсами, применяемы­ми на компьютерах Macintosh и в системе Windows. Пользователь­ский интерфейс UNIX состоит не только из оболочки, но также из большого числа стандартных обслуживающих программ, называемых утилитами. Стандарт POSIX 1003.2 определяет синтаксис и семантику около 100 из этих программ. Идея стандартизации этих программ заключается в том, чтобы можно было писать оболочки, которые работали бы на всех системах UNIX. Помимо этих стандартных ути­лит, существует еще масса прикладных программ, таких как web-бра­узеры, программы просмотра изображений и т. д.

UNIX представляет собой многозадачную систему, так что не­сколько независимых процессов могут работать одновременно. У каж­дого пользователя может быть одновременно несколько активных процессов, так что в большой системе могут одновременно работать сотни и даже тысячи процессов. Файловая система в UNIX – иерархическая, с файлами и каталогами. Все диски монти­руются в единое дерево каталогов, начинающееся в одном корне. От­дельные файлы могут быть связаны с любым каталогом дерева.