
- •Список вопросов для подготовки к экзамену «Операционные системы, среды и оболочки»
- •Перечислите основные действия, которые нужно было выполнить пользователю для выполнения его программы до появления операционных систем.
- •Что такое операционная система, операционная среда, операционная оболочка? Дайте определение.
- •Что такое однопрограммная пакетная обработка? Как определить классическое мультипрограммирование?
- •Что относится к базовому программному обеспечению ранних компьютерных систем?
- •Что такое многопрограммная пакетная обработка?
- •Что такое мультипроцессорная обработка, чем она отличается от мультипрограммирования?
- •Перечислите поколения операционных систем. Назовите основные отличительные признаки поколений.
- •Первое поколение ос.
- •Второе поколение ос. Середина 60-х г.
- •Третье поколение ос.
- •Четвертое поколение ос.
- •Что такое архитектура операционной системы? Какие архитектуры ос вы можете охарактеризовать?
- •Что такое виртуальная машина? в чем Вы видите преимущества использования виртуальных машин?
- •Дайте определение процессу и потоку. Чем поток отличается от процесса?
- •Перечислите основные задачи ос по управлению процессами. Её задачи:
- •Как можно представить модель процесса и потока? Назовите возможные состояния процесса.
- •Дайте характеристику возможным уровням параллелизма выполнения программ.
- •Распараллеливание на уровне задач
- •Уровень параллелизма данных
- •Уровень распараллеливания алгоритмов
- •Параллелизм на уровне инструкций
- •Каким образом файлы, процессы и потоки могут быть использованы для синхронизации? Сотрудничество с использованием разделения:
- •Сотрудничество с использованием связи:
- •Какие методы могут использоваться для ликвидации тупиковых ситуаций?
- •Приведите пример использования семафора. Что такое мьютекс, как он используется?
- •Перечислите методы взаимоисключений процессов.
- •Когда возникает необходимость в синхронизации процессов?
- •Дайте определение иерархической памяти.
- •Назовите задачи распределения памяти.
- •Дайте определение виртуальной памяти. Перечислите варианты организации такой памяти.
- •Для виртуализации используют 2 возможных подхода:
- •Недостатки свопинга:
- •Достоинства свопинга:
- •Что такое подкачка страниц?
- •Охарактеризуйте проблему защиты памяти.
- •Нужно ли бороться с фрагментацией памяти? Какие методы для этого существуют?
- •Что такое прямой доступ к памяти?
- •Как организуется управляемый прерываниями ввод-вывод?
- •Что дает многоуровневая организация физической памяти современных эвм?
- •Как связан уровень мультипрограммирования с объемом оперативной памяти?
- •Что такое виртуальная память? Какие подходы к организации виртуальной памяти используются в эвм?
- •Для виртуализации используют 2 возможных подхода:
- •Недостатки свопинга:
- •Достоинства свопинга:
- •Что такое свопинг? Для чего он используется?
- •Назовите функции ос по управлению памятью.
- •Что понимается под дефрагментацией памяти?
- •Раскройте понятия: логический, математический, виртуальный и физический адреса.
- •В чем суть страничной организации виртуальной памяти?
- •В чем суть сегментной организации виртуальной памяти?
- •В чем суть сегментно-страничной организации виртуальной памяти?
- •Основные компоненты подсистемы ввода-вывода.
- •Основные функции подсистемы ввода-вывода.
- •Три основных метода организации параллельной работы устройств ввода-вывода и процессора.
- •Методы согласования скоростей работы периферийных устройств.
- •Понятие буферизации.
- •Понятие драйвера устройства.
Приведите пример использования семафора. Что такое мьютекс, как он используется?
Семафор представляет собой целую переменную, принимающую неотрицательные значения, доступ любого процесса к которой, за исключением момента ее инициализации, может осуществляться только через две атомарные операции: P (проверять) и V (увеличивать). Подобные переменные-семафоры могут быть с успехом применены для решения различных задач организации взаимодействия процессов.
Мьютекс (взаимное исключение) – упрощенный семафор, неспособный считать, он может управлять лишь взаимным исключением доступа к совместно используемым ресурсам и кодам. Реализация мьютекса полезна в случае потоков, действующих только в пространстве пользователя.
Перечислите методы взаимоисключений процессов.
Основным требованием поддержки параллельных процессов является обеспечение взаимоисключений — возможность выполнения только одного процесса с блокированием работы всех остальных процессов. Существуют 3 подхода к обеспечению взаимоисключений: программный, аппаратный механизм, средствами операционный системы (ОС). Современные ОС имеют различные собственные средства, обеспечивающие параллельные вычисления. К этим средствам относятся семафоры, мониторы, очереди сообщений, почтовые ящики, конвейеры. Семафоры являются простейшими из них.
Когда возникает необходимость в синхронизации процессов?
Потребность в синхронизации потоков возникает только в мультипрограммной операционной системе и связана с совместным использованием аппаратных и информационных ресурсов вычислительной системы. Синхронизация необходима для исключения гонок и тупиков при обмене данными между потоками, разделении данных, при доступе к процессору и устройствам ввода-вывода.
Любое взаимодействие процессов или потоков связано с их синхронизацией, которая заключается в согласовании их скоростей путем приостановки потока до наступления некоторого события и последующей его активизации при наступлении этого события. Синхронизация лежит в основе любого взаимодействия потоков, связано ли это взаимодействие с разделением ресурсов или с обменом данными. Например, поток-получатель должен обращаться за данными только после того, как они помещены в буфер потоком-отправителем. Если же поток-получатель обратился к данным до момента их поступления в буфер, то он должен быть приостановлен.
При совместном использовании аппаратных ресурсов синхронизация также совершенно необходима. Когда, например, активному потоку требуется доступ к последовательному порту, а с этим портом в монопольном режиме работает другой поток, находящийся в данный момент в состоянии ожидания, то ОС приостанавливает активный поток и не активизирует его до тех пор, пока нужный ему порт не освободится. Часто нужна также синхронизация с событиями, внешними по отношению к вычислительной системе, например реакции на зажатие комбинации клавиш Ctrl+C.
Ежесекундно в системе происходят сотни событий, связанных с распределением и освобождением ресурсов, и ОС должна иметь надежные и производительные средства, которые бы позволяли ей синхронизировать потоки с происходящими в системе событиями.
Дайте определение иерархической памяти.
Иерархическая память - структура соподчиненности запоминающих устройств в организации внешней памяти. Иерархическая память предоставляется системой управления иерархией запоминающих устройств.