Данный материал представляет собой набор контрольных вопросов и задач по курсу «Операционные системы». Включает темы: режимы работы процессора, мультипроцессорная обработка, алгоритмы планирования процессов (FCFS, Round Robin), управление виртуальной памятью (страничная организация, алгоритмы FIFO, LRU, NRU), обработка прерываний и организация подсистемы ввода-вывода. Задания сопровождаются расчетными задачами для проверки понимания механизмов работы ОС.
Критерии оценки
Для оценки результатов выполнения заданий используются следующие критерии:
- >= 60% (18) — удовлетворительно;
- >= 75% (23) — хорошо;
- >= 90% (27) — отлично.
Вопросы и задачи
1. Какие из приведенных терминов являются синонимами:
- привилегированный режим;
- защищенный режим;
- режим супервизора;
- пользовательский режим;
- режим ядра;
- реальный режим;
2. Сравните два варианта организации мультипроцессорной обработки. В первом случае процесс (поток), начав выполняться на каком-либо процессоре, при каждой следующей активизации будет назначаться планировщиком на этот же процессор. Во втором варианте процесс (поток) каждый раз, в общем случае, выполняется на произвольно выбранном свободном процессоре. Какой вариант эффективнее в отношении времени выполнения отдельного приложения? В отношении суммарной производительности компьютера?
- 2 и 2;
- 2 и 1;
- 1 и 2;
- 1 и 1.
3. В какой очереди (ожидающих или готовых) скапливается большее число процессов в системах пакетной обработки?
- в очереди ожидания;
- в очереди готовности;
- примерно одинаковое количество в обоих очередях.
4. При какой многозадачности механизм планирования процессов не распределен между системой и прикладной программой?
- при вытесняющей;
- при невытесняющей;
- при многопоточной.
5. Выберите возможные переходы процесса из одного состояния в другое.
- из состояния рождение в состояние готовности;
- из состояния ожидание в состояние завершение исполнения;
- из состояния исполнение в состояние завершения исполнения;
- из состояния готовность в состояние ожидание.
6. В ОС с поддержкой многопоточности в контекст процесса входят:
- необработанные аварийные сигналы;
- значение счетчика команд;
- дескрипторы открытых файлов;
- стек;
- значения регистров.
7. Какие из перечисленных ниже алгоритмов планирования процессов относятся к невытесняющим алгоритмам?
- лоторейный алгоритм;
- «кратчайшая задача – первая»;
- Round Robin;
- FCFS;
- справедливый алгоритм.
8. ОС обслуживает процессы по алгоритму FCFS (First Come – First Served). В ОС поступают на выполнение процессы, время поступления и время исполнения которых приведены в следующей таблице.
| Номер процесса | Время поступления в систему | Время исполнения |
|---|---|---|
| 1 | 0 | 5 |
| 2 | 2 | 4 |
| 3 | 3 | 6 |
| 4 | 5 | 1 |
| 5 | 7 | 3 |
Каковы среднее время нахождения процесса в системе и среднее время ожидания процесса в очереди готовности?
- 9.6 4.8;
- 7.8 5.4;
- 8.4 5.8;
- 9.4 5.6.
9. ОС обслуживает процессы по алгоритму Round Robin (циклическое планирование). В ОС поступают на выполнение процессы, время поступления и время исполнения (единственный CPU burst) которых приведены в следующей таблице. В очереди готовности процессы расположены в соответствии с их номерами.
| Номер процесса | Время поступления в систему | Время исполнения |
|---|---|---|
| 1 | 0 | 5 |
| 2 | 0 | 4 |
| 3 | 0 | 6 |
| 4 | 0 | 1 |
| 5 | 0 | 3 |
Предполагается, что переключение контекстов процессов выполняется мгновенно; каждому процессу каждый раз для исполнения выделяется квант времени равный 2. Каковы среднее время нахождения процесса в системе и среднее время ожидания процесса в очереди готовности?
- 12.4 9.2;
- 14.4 10.6;
- 15.6 12.4;
- 13.2 11.4.
10. В двухпроцессорную гибкую систему реального времени поступает четыре периодических сигнала с периодами 50, 100, 150 и 300 мс. На обработку каждого сигнала требуется 30, 40, 50 и x мс времени процессора соответственно. Укажите максимальное значение x, при котором система остается поддающейся планированию.
- 200;
- 250;
- 300;
- 150.
11. Какие из утверждений для потоков, реализованных в пространстве пользователя, верны:
- отсутствуют прерывания по таймеру внутри одного процесса;
- более быстрое переключение, создание и завершение потоков;
- процесс не может иметь свой алгоритм планирования потоков;
- при использовании блокирующего системного запроса все остальные потоки блокируются.
12. При использовании каких из нижеперечисленных средств не используется активное ожидание для организации взаимного исключения?
- команда XCHG;
- барьеры;
- сообщения;
- строгое чередование.
13. Чем ограничивается максимальный размер виртуального адресного пространства в компьютере определенной модели?
- разрядностью схем адресации;
- размером установленной оперативной памяти;
- настройками компилятора.
14. Виртуальная память позволяет:
- загружать программы, скомпилированные для другого процессора;
- загружать программы, размер которых превышает объем доступной физической памяти;
- отказаться от предоставления прикладным процессам оперативной памяти;
- загружать множество небольших программ, суммарный объем которых больше объема физической памяти.
15. В 32-разрядной системе со страничным механизмом виртуальной памяти размер страницы равен 8 Кбайт. Чему равен номер виртуальной страницы и смещение для линейного виртуального адреса 0x002F200A?
- номер – 367, смещение – 12;
- 42, 10;
- 377, 10;
- 365, 14.
16. В 32-разрядной системе со страничным двухуровневым механизмом виртуальной памяти размер страницы равен 4 Кбайт. Размер дескриптора страницы равен 4 байтам. Чему равен размер раздела в Мбайтах если известно, что таблица дескрипторов страниц раздела занимает одну страницу памяти?
- 2;
- 4;
- 8;
- 16.
17. Рассмотрим систему, в которой реализован двухуровневый страничный механизм виртуальной памяти, использующий ассоциативную память для ускорения работы. При этом среднее время доступа к оперативной памяти равно 50 нс, среднее время доступа к TLB 5 нс, а вероятность наличия информации в ассоциативной памяти равна 90%. Чему равно среднее время определения физического адреса данных?
- 14.5 нс
- 15 нс
- 15.5 нс
- 16 нс
- 16.5 нс
- 17 нс
18. Рассмотрим систему, в которой реализован одноуровневый страничный механизм виртуальной памяти, использующий ассоциативную память для ускорения работы. Все остальные параметры аналогичны предыдущей задаче. Чему равно среднее время доступа к самим данным?
- 58,5 нс
- 59 нс
- 59,5 нс
- 60 нс
- 60,5 нс
- 61 нс
19. Рассмотрим гипотетическую систему, в которой реализован страничный механизм виртуальной памяти и прикладным приложениям доступны 4 страницы памяти. В качестве алгоритма замещения используется FIFO. Запускается прикладной процесс, ВАП которого состоит из 8 страниц. Изначально в оперативную память загружаются первые 4 его страницы. Дальнейший порядок обращения к страницам следующий: 0, 1, 4, 7, 4, 2, 5, 3, 6. Сколько страничных прерываний произойдет при этом?
- 6;
- 5;
- 4;
- 3.
20. Сколько страничных прерываний произойдет в условиях предыдущей задачи при использовании алгоритма замещения LRU?
- 3;
- 4;
- 5;
- 6.
21. Компьютер имеет четыре страничных блока. Время загрузки, время последнего доступа и биты R и M для каждой страницы показаны ниже (время считается в тиках системных часов). Какую страницу выгрузят алгоритмы NRU и «вторая попытка»?
| Страница | Загружена | Последнее обращение | R | M |
|---|---|---|---|---|
| 0 | 126 | 280 | 1 | 0 |
| 1 | 230 | 265 | 0 | 1 |
| 2 | 140 | 270 | 0 | 0 |
| 3 | 110 | 285 | 1 | 1 |
- NRU – 1, «вторая попытка» — 2;
- 0, 2;
- 1, 3;
- 2, 2.
22. Какие утверждения о портах ввода-вывода правильные?
- Несколько устройств могут подключаться одновременно к одному порту ввода-вывода.
- Порты ввода-вывода являются точками подключения устройств к локальной магистрали.
- Порты ввода-вывода иногда отображаются на линейное адресное пространство ввода-вывода.
- Ни одно из предыдущих утверждений не является верным.
23. По окончание обработки программного прерывания процессор выполнит:
- команду, следующую за командой, вызвавшей прерывание;
- команду, вызвавшую прерывание;
- команду, предшествующую команде, вызвавшей прерывание.
24. На некотором компьютере обработчик прерываний от таймера выполняет свою работу за 3 мс. Прерывания от таймера поступают с частотой 60 Гц. Какую часть своего времени центральный процессор тратит на таймер?
- 12%;
- 14%;
- 16%;
- 18%.
25. Предположим, что однопроцессорная машина может считывать слово из памяти или записывать слово в память за 4 нс. Также предположим, что у процессора всего 30 регистров и треть из них имеют размер в слово, а остальные имеют размер в два слова. При возникновении прерывания значения всех регистров центрального процессора помещаются в стек. Какое максимальное количество прерываний в секунду может обработать эта машина, если время последующей обработки каждого прерывания одинаково и равно 2.3 мкс?
- 6 * 10^5;
- 5 * 10^5;
- 4 * 10^5;
- 3 * 10^5.
26. Предположим, что система использует DMA для передачи данных с контроллера диска в оперативную память. Также предположим, что при этом на захват локальной магистрали уходит в среднем 100 нс, а на перенос данных по шине данных шириной 4 слова — 20 нс за один такт работы шины. После того как центральный процессор запрограммировал контроллер DMA, сколько времени займет передача 1000 слов с контроллера диска в оперативную память?
- 30 мкс;
- 20.1 мкс;
- 5.1 мкс;
- 120 мкс;
- 48 мкс.
27. При каких системных вызовах процесс не блокируется или блокируется на непродолжительное время?
- при блокирующемся вызове;
- при асинхронном вызове;
- при неблокирующемся вызове.
28. Причинами кэширования в базовой подсистеме ввода-вывода являются:
- разные объемы данных, которые могут быть приняты или переданы участниками обмена одновременно;
- несопоставимые скорости обмена данными;
- необходимость увеличения скорости обмена данными.
29. Для каких системных вызовов необходимо планирование последовательности запросов на выполнение операций ввода-вывода?
- для неблокирующего вызова;
- для блокирующего вызова;
- для асинхронного вызова.
30. Драйвер диска получает запросы на обращение к цилиндрам в следующей последовательности: 10, 22, 20, 3, 40, 6 и 38. Перемещение блока головок с одного цилиндра на соседний занимает 6 мс. Сколько потребуется времени на перемещение головок при использовании алгоритма SCAN? Блок головок изначально расположен над цилиндром 22. Диск имеет 60 цилиндров (от 0 до 59).
- 378 или 564 мс;
- 372 или 570 мс;
- 372 или 558 мс;
- 366 или 546 мс.
