Московский Государственный Университет им. М. В. Ломоносова Факультет вычислительной математики и кибернетики Н. В. Вдовикина, А.




Скачать 2.01 Mb.
Название Московский Государственный Университет им. М. В. Ломоносова Факультет вычислительной математики и кибернетики Н. В. Вдовикина, А.
страница 8/30
Дата публикации 13.06.2014
Размер 2.01 Mb.
Тип Документы
literature-edu.ru > Информатика > Документы
1   ...   4   5   6   7   8   9   10   11   ...   30

4.2Аппарат системных вызов в OC UNIX.


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

Чтобы обеспечить гарантии того, что определенные действия, такие как операции с ресурсами, планирование процессов и т.п., может выполнять только ОС, вычислительная система должна обладать определенными свойствами, и в частности, иметь привилегированный режим выполнения. Это означает, что в ВС имеется два режима выполнения: обычный (пользовательский) и привилегированный (иногда называемый также режимом ядра, или защищенным режимом). Существует набор операций (инструкций), которые не могут быть выполнены процессом, работающим в пользовательском режиме. Они доступны только в привилегированном режиме, в котором работает ядро ОС. Кроме того, процессу, работающему в пользовательском режиме, недоступно адресное пространство других процессов и адресное пространство ядра.

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

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

Так как любой процесс может в различные моменты своего выполнения находиться как в привилегированном режиме, так и в пользовательском режиме, то и виртуальное адресное пространство процесса состоит из двух частей: одна из них используется, когда процесс находится в пользовательском режиме, а другая – в привилегированном. Причем процессу, находящемуся в пользовательском режиме, недоступна та часть его виртуального адресного пространства, которая соответствует режиму ядра. На Рис. 8 показано отображение исполняемого файла на виртуальное адресное пространство процесса, которое производит ОС при запуске процесса.

Далее нами будут рассмотрены некоторые системные вызовы, предоставляемые ОС UNIX. К интересующим нас вызовам относятся вызовы

  • для создания процесса;

  • для организации ввода вывода;

  • для решения задач управления;

  • для операции координации процессов;

  • для установки параметров системы.

Отметим некоторые общие моменты, связанные с работой системных вызовов.

Большая часть системных вызовов определены как функции, возвращающие целое значение, при этом при нормальном завершении системный вызов возвращает 0, а при неудачном завершении -14. При этом код ошибки можно выяснить, анализируя значение внешней переменной errno, определенной в заголовочном файле .

В случае, если выполнение системного вызова прервано сигналом, поведение ОС зависит от конкретной реализации. Например, в BSD UNIX ядро автоматически перезапускает системный вызов после его прерывания сигналом, и таким образом, внешне никакого различия с нормальным выполнением системного вызова нет. Стандарт POSIX допускает и вариант, когда системный вызов не перезапускается, при этом системный вызов вернет –1, а в переменной errno устанавливается значение EINTR, сигнализирующее о данной ситуации.
1   ...   4   5   6   7   8   9   10   11   ...   30

Похожие:

Московский Государственный Университет им. М. В. Ломоносова Факультет вычислительной математики и кибернетики Н. В. Вдовикина, А. icon Фгбоу впо московский государственный университет
Московский государственный университет им. М. В. Ломоносова, биологический факультет, кафедра энтомологии
Московский Государственный Университет им. М. В. Ломоносова Факультет вычислительной математики и кибернетики Н. В. Вдовикина, А. icon Культивируемые микроорганизмы из пищеварительного тракта дождевых червей
Факультет почвоведения, Московский государственный университет имени М. В. Ломоносова, 119991, Москва, гсп-1, Ленинские горы, мгу...
Московский Государственный Университет им. М. В. Ломоносова Факультет вычислительной математики и кибернетики Н. В. Вдовикина, А. icon Дипломную работу Студента Богданова Дмитрия Игоревича
Вычислительной Математики и Кибернетики Московского Государственного Университета им. М. В. Ломоносова
Московский Государственный Университет им. М. В. Ломоносова Факультет вычислительной математики и кибернетики Н. В. Вдовикина, А. icon Дипломную работу Студента Студеникина Романа Валерьевича
Вычислительной Математики и Кибернетики Московского Государственного Университета им. М. В. Ломоносова
Московский Государственный Университет им. М. В. Ломоносова Факультет вычислительной математики и кибернетики Н. В. Вдовикина, А. icon Факультет вычислительной математики и кибернетики Лаборатория вычислительных комплексов
«Разработка и исследование эффективности алгоритма формирования содержимого учебных курсов»
Московский Государственный Университет им. М. В. Ломоносова Факультет вычислительной математики и кибернетики Н. В. Вдовикина, А. icon Статьи (жирным шрифтом)
Московский государственный университет имени М. В. Ломоносова, физический факультет, кафедра общей физики. Россия,119991, Москва,...
Московский Государственный Университет им. М. В. Ломоносова Факультет вычислительной математики и кибернетики Н. В. Вдовикина, А. icon Московский Государственный Университет им. М. В. Ломоносова Механико-математический...
Рисунок Графики каналов R,G,B для строки изображения поля с разметкой. Пики соответствуют линиям разметки. При построении таких графиков...
Московский Государственный Университет им. М. В. Ломоносова Факультет вычислительной математики и кибернетики Н. В. Вдовикина, А. icon Априорные оценки точности разностных схем для задачи движения вязкого слабосжимаемого газа
К. А. Жуков, А. В. Попов Московский Государственный Университет имени М. В. Ломоносова
Московский Государственный Университет им. М. В. Ломоносова Факультет вычислительной математики и кибернетики Н. В. Вдовикина, А. icon Резюме валерия Манилла
Российская Федерация, Москва, гсп-1, Ленинские горы, Московский государственный университет имени М. В. Ломоносова 119991, Главное...
Московский Государственный Университет им. М. В. Ломоносова Факультет вычислительной математики и кибернетики Н. В. Вдовикина, А. icon Российской Федерации Министерство Российской Федерации по атомной...
Книга предназначена для студентов, специализирующихся в областях, связанных с информационной безопасностью, а также для преподавателей...
Литература


При копировании материала укажите ссылку © 2015
контакты
literature-edu.ru
Поиск на сайте

Главная страница  Литература  Доклады  Рефераты  Курсовая работа  Лекции