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

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

регистровый контекст процесса - содержимое всех регистров процессора (включая значение программного счетчика),

системный контекст процесса - все остальные.

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

Одноразовые операции: Создание процесса

Три основных события, приводящие к созданию процессов:

  • инициализация системы,

  • работающий процесс подает системный запрос на создание процесса,

  • запрос пользователя на создание процесса.

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

Завершение процесса

Четыре события, приводящие к остановке процесса:

  • плановое завершение (окончание выполнения),

  • плановый выход по известной ошибке (например, отсутствие файла),

  • выход по неисправимой ошибке (ошибка в программе),

  • уничтожение другим процессом.

Зачастую причиной завершения процесса становится плановое завершение.

Вторая причина — неустранимая ошибка. Примером может служить попытка скомпилировать несуществующий исходник.

Третья причина — выход по неисправимой ошибке, такой ошибкой может быть обращение к несуществующей памяти или деление на ноль.

Четвертая причина — системный запрос, выполненный другим процессом на завершение процесса. В UNIX такой запрос — kill().

Многоразовые операции

  • Запуск процесса.

  • Приостановка процесса.

  • Блокирование процесса.

  • Разблокирование процесса.

Суть многозадачности — переключение контекста процесса в момент прерывания по таймеру.

И 10 (Многозадачность в современных операционных системах реализуется следующим образом:

  1. некий процесс выполняется в данный момент,

  2. происходит прерывание по таймеру,

  3. процессор ищет соответствующий вектор прерываний, считывает адрес обработчика и начинает выполнять команды по этому адресу,

  4. программа по адресу из вектора производит сохранение контекста в блок управления процессом,

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

  6. производится загрузка контекста выбранного процесса,

  7. выполняется команда завершения прерывания. )

11.( и 12 Оперативная память — это важнейший ресурс любой вычислительной системы, поскольку без нее невозможно выполнение ни одной программы.

Память в компьютерах имеет иерархическую структуру. Небольшая часть ее представляет собой очень быструю, дорогую, энергозависимую (то есть теряющую информацию при выключении питания) кэш-память. Кроме того, компьютеры обладают десятками мегабайт среднескоростной, имеющей среднюю цену, также энергозависимой оперативной памяти ОЗУ (RАМ) и десятками или сотнями гигабайт медленного, дешевого, энергонезависимого пространства на жестком диске.

Часть операционной системы, отвечающая за управление памятью, называется модулем управления памятью или менеджером памяти. )

Функциями ОС по управлению памятью в мультипрограммной системе являются:

  • Отслеживание свободной и занятой памяти

  • Выделение памяти процессам и освобождение памяти по заверщении процессов

  • Вытеснение кодов и данных процессов из оперативной памяти

Все методы управления памятью могут быть разделены на два класса: методы, которые используют перемещение процессов между оперативной памятью и диском, и методы, которые не делают этого.

(вопр13)

Рис. 2.14. Распределение памяти сегментами

Рис. 2.12. Страничное распределение памяти

12. Имена переменных и входных точек программных модулей составляют пространство символьных имен. Иногда это адресное пространство называют логическим. Физическая память представляет собой упорядоченное множество ячеек реально существующей оперативной памяти, и все они пронумерованы, то есть к каждой из них можно обратиться, указав ее порядковый номер (адрес).

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

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

Итак, пусть произошло обращение к памяти по некоторому виртуальному адресу. Аппаратными схемами процессора выполняются следующие действия:

1. Из специального регистра процессора извлекается адрес AT таблицы страниц активного процесса. На основании начального адреса таблицы страниц, номера виртуальной страницы р (старшие разряды виртуального адреса) и длины отдельной записи в таблице страниц L (системная константа) определяется адрес нужного дескриптора в таблице страниц: a=AT+(pxL).

2. Из этого дескриптора извлекается номер соответствующей физической страницы — n.

3. К номеру физической страницы присоединяется смещение s (младшие разряды виртуального адреса).

.