Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Ответы_по_экзамену_ОС.docx
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
564.98 Кб
Скачать

31.Интерфейсы ос юникс.

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

Программы обращаются к системным вызовам помещая аргументы в регистры центрального процессора ( иногда в стек) и выполняя команду эмулированного прерывания для переключения из пользовательского режима в режим ядра и передачи управления в ОС UNIX.

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

ОС UNIX подчиняется стандарту соглашений, написанному специально для неё: POSIX – Portable Operating System – переносимая ОС. IX – юниксобразная.

POSIX 1003.1 определяет набор библиотечных процедур, которые должна предоставлять соответствующая данному стандарту система UNIX. Большая часть этих процедур обращается к системному вызову, но некоторые могут быть реализованы вне ядра. Идея стандарта POSIX заключается в том, что производитель программного обеспечения использует только процедуры, описанные в стандарте 1003.1, чем гарантирует работоспособность программы на любой версии UNIX, поддерживающей этот стандарт.

Что бы обратиться к системному вызову программа на Си должна вызвать соответствующую библиотечную процедуру. В стандарте POSIXопределён именно интерфейс библиотечных функций, а не интерфейс системных вызовов. То есть стандарт POSIX определяет библиотечные процедуры, соответствующие системным вызовам: параметры этих процедур, действия и результат, возвращаемый системе.

Все версии UNIX содержат большое количество стандартных программ, которые могут различаться в разных версиях. К таким программам относятся: компиляторы, редакторы, программы обработки текста и утилиты для работы с файлами.

Таким образом, подводя итог можно говорить о трёх интерфейсах в ОС UNIX:

  1. Интерфейс системных вызовов.

  2. Интерфейс библиотечных функций.

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

Именно третий интерфейс считается пользователями самой системой UNIX, на деле же этот интерфейс практически не имеет никакого отношения и легко может быть заменён. Например, введение графического интерфейса, ориентированного на использование мыши не потребовало никаких изменений в самой системе.

32.Компоненты ядра ос юникс и структура программного обеспечения.

Ядро операционной системы содержит системные программы, выполняющие диспетчерские функции: управление ресурсам, распределение памяти и доступ к дисковым устройствам. Условно ядро ОС UNIX можно представить в виде нескольких тесно взаимодействующих компонент.

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

Управляемые программы используют динамически связываемые или разделяемые библиотеки, то есть выполняемые программы могут совместно использовать библиотечную программу, представленную одним физическим файлом на диске. Это позволяет выполняемым файлам занимать меньше места на диске, особенно программам, многократно использующим библиотечные функции. Имеются так же статически связываемые библиотеки для случая, когда есть желание пользоваться отладкой на уровне объектных кодов.

В UNIX разделяемые библиотеки динамически связываются во время выполнения, позволяя программисту заменять библиотечные модули собственными. Использование дампа памяти и динамических отладчиков позволяет выяснять причину краха программы. В UNIX включена программа для шифрования, которую могут использовать программисты. Однако из-за ограничений введённых США экспорт шифрованной технологии и некоторые версии UNIX за пределы США не допускаются.

В общем виде структура программного обеспечения UNIX графически может быть представлена в следующем виде: