Рубрики

Операционные системы | Набор 15

На экзамене GATE CS 2006 были заданы следующие вопросы.

1) Рассмотрим три процесса (идентификаторы процессов 0, 1, 2 соответственно) с расчетными пакетами времени 2, 4 и 8 единиц времени. Все процессы прибывают в нулевое время. Рассмотрим алгоритм планирования с наибольшим оставшимся временем (LRTF). В LRTF связи разрываются, отдавая приоритет процессу с самым низким идентификатором процесса. Среднее время оборота составляет:
(А) 13 единиц
(Б) 14 единиц
(С) 15 единиц
(D) 16 единиц

Ответ (А)
Пусть процессы будут p0, p1 и p2. Эти процессы будут выполняться в следующем порядке.

  p2  p1  p2  p1  p2  p0  p1   p2   p0   p1   p2
0   4   5   6   7   8   9   10    11   12   13   14 

Время оборота процесса — это общее время между представлением процесса и его завершением.
Время поворота р0 = 12 (12-0)
Время поворота р1 = 13 (13-0)
Время поворота р2 = 14 (14-0)

Среднее время оборота составляет (12 + 13 + 14) / 3 = 13.

2) Рассмотрим три процесса, все поступающие в нулевое время, с общим временем выполнения 10, 20 и 30 единиц соответственно. Каждый процесс тратит первые 20% времени выполнения на ввод-вывод, следующие 70% времени на выполнение вычислений и последние 10% времени на повторный ввод-вывод. Операционная система использует алгоритм планирования первого кратчайшего оставшегося времени вычислений и планирует новый процесс либо тогда, когда запущенный процесс блокируется при вводе-выводе, либо когда запущенный процесс заканчивает свой пакет вычислений. Предположим, что все операции ввода-вывода могут быть максимально перекрыты. В течение какого процента времени процессор не используется? (А) 0%
(Б) 10,6%
(С) 30,0%
(D) 89,4%

Ответ (Б)
Пусть три процесса — это p0, p1 и p2. Время их выполнения составляет 10, 20 и 30 соответственно. p0 тратит первые 2 единицы времени на ввод / вывод, 7 единиц времени процессора и, наконец, 1 единицу на ввод / вывод. p1 тратит первые 4 блока на ввод / вывод, 14 единиц процессорного времени и, наконец, 2 блока на ввод / вывод. p2 тратит первые 6 модулей на ввод / вывод, 21 единицу процессорного времени и, наконец, 3 модуля на ввод / вывод.

 idle   p0    p1     p2    idle
0    2     9     23     44     47

Total time spent = 47
Idle time = 2 + 3 = 5
Percentage of idle time = (5/47)*100 = 10.6 %

3) атомарная инструкция извлечения и установки x, y безоговорочно устанавливает ячейку памяти x в 1 и извлекает старое значение x в y, не допуская какого-либо промежуточного доступа к ячейке памяти x. рассмотрим следующую реализацию функций P и V на двоичном семафоре.

void P (binary_semaphore *s) {
  unsigned y;
  unsigned *x = &(s->value);
  do {
     fetch-and-set x, y;
  } while (y);
}

void V (binary_semaphore *s) {
  S->value = 0;
}

Что из следующего верно?
(A) Реализация может не работать, если переключение контекста отключено в P.
(B) Вместо использования fetch-and-set может использоваться пара нормальной загрузки / сохранения
(C) Реализация V является неправильным
(D) Код не реализует двоичный семафор

Ответ (А)
Давайте поговорим об операции P (). Он хранит значение s в x, затем выбирает старое значение x, сохраняет его в y и устанавливает x равным 1. Цикл while процесса будет продолжаться вечно, если какой-то другой процесс не выполнит V (), и устанавливает значение s равно 0. Если переключение контекста в P отключено, цикл while будет выполняться вечно, поскольку никакой другой процесс не сможет выполнить V ().

4) Рассмотрим следующий снимок системы, в которой запущено n процессов. Процесс i содержит Xi экземпляры ресурса R, 1
(A) min (Xp, Xq) = min (Yk) где k! = P и k! = Q
(C) max (Xp, Xq)> 1
(D) мин (Xp, Xq)> 1

Ответ (Б)
Поскольку и p, и q не нуждаются в дополнительных ресурсах, они оба могут завершить и освободить ресурсы Xp + Xq, не запрашивая никаких дополнительных ресурсов. Если ресурсов, высвобождаемых p и q, достаточно для другого процесса, ожидающего ресурсов Yk, то система не подходит к тупику.

Пожалуйста, смотрите GATE Corner для всех документов / решений / объяснений предыдущего года, учебных планов, важных дат, заметок и т. Д.

Пожалуйста, напишите комментарии, если вы найдете какие-либо ответы / объяснения неправильными, или вы хотите поделиться дополнительной информацией по темам, обсужденным выше

Рекомендуемые посты:

Операционные системы | Набор 15

0.00 (0%) 0 votes