Skip to content

3 Системное программирование

Winterpuma edited this page Jul 5, 2021 · 3 revisions

Ответы приняли ислам, чекайте этот реп

ДИСЦИПЛИНА 3.
Системное программирование

Назначение и функции ОС. Поколения ОС, современные тенденции развития ОС. Типы ОС. Понятие процесса: процесс как единица декомпозиции системы. Параллельные процессы: уровни наблюдения - параллельные и псевдопараллельные процессы. Состояния процесса: диаграмма состояний процесса. Приостановка и возобновление; проблемы приостановки и возобновления. Процессы В ОС ИмМХ. Реализация мультипрограммирования - планирование и диспетчеризация. Дисциплины планирования. Супервизор: системные и пользовательские процессы; уровни привилегий. Структура ядра ОС. Взаимодействие процессов. Монитор: читатели и писатели. Разделяемые ресурсы и монопольный доступ. Взаимная блокировка процессов. Семафоры: определение, виды семафоров, примеры. Взаимоисключение при помощи семафоров. Тупики. Метод редукции графа: представление состояний системы в виде направленных графов. Алгоритмы обнаружения тупиков: метод прямого обнаружения; алгоритм со счетчиком ожиданий; примеры реализации. Обход тупиков - алгоритм банкира и его аппроксимации. Обнаружение и восстановление работоспособности системы. Виртуальная память. Страничная организация памяти: таблицы страниц. Стратегии управления виртуальной памятью. Схемы преобразования адресов. Алгоритмы "выталкивания" страниц: выталкивание случайной страницы, ЕРО, 1ВЧ, "РУ, МУВ, метод связанных пар - размер страницы. Определение, стратегия рабочего множества. Анализ страничного распределения. Сегментная организация виртуальной памяти; преобразование адресов; организация таблиц сегментов. Сегментно-страничная организация: преобразование адресов, особенности реализации. Коллективное использование информации и защита информации для страничной, сегментной и сегментно-страничной организации памяти.

Перечень вопросов

Лично писать ответы лень. В принципе почти все есть тут.

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

  2. Понятие процесса: процесс как единица декомпозиции системы. Параллельные процессы: уровни наблюдения - параллельные и псевдопараллельные процессы. Состояния процесса: диаграмма состояний процесса. Оценка эффективности работы ОС. Приостановка и возобновление; проблемы приостановки и возобновления. Процессы В ОС UNIX.

  3. Реализация мультипрограммирования - планирование и диспетчеризация. Дисциплины планирования. Супервизор: системные и пользовательские процессы; уровни привилегий.

  4. Структура ядра ОС: монолитное ядро, определение, системные вызовы, прерывания; микроядро - определение, передача сообщений, синхронизация; диаграмма состояний процесса - три состояния блокировки при передаче сообщения.

  5. Взаимодействие процессов: проблемы взаимодействия асинхронных процессов - синхронизация, взаимоисключение, взаимоблокировка. Монитор: читатели и писатели.

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

  7. Тупики: обнаружение тупиков. Метод редукции графа: представление состояний системы в виде направленных графов. Представление графа: матричное представление; представление с помощью связного списка. Алгоритмы обнаружения тупиков: метод прямого обнаружения; алгоритм со счетчиком ожиданий; примеры реализации.

  8. Тупики: недопущение тупиков. Обход тупиков - алгоритм банкира и его аппроксимации. Обнаружение и восстановление работоспособности системы.

  9. Виртуальная память. Страничная организация памяти: таблицы страниц. Стратегии управления виртуальной памятью. Схемы преобразования адресов. Алгоритмы "выталкивания" страниц: выталкивание случайной страницы, FIFO, LRU, LFU, NUR, метод связанных пар - размер страницы. Рабочее множество: определение, стратегия рабочего множества. Анализ страничного распределения.

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

Основная учебная литература.

  1. Таненбаум Э. Современные операционные системы. 2-е изд. — СПб.: Питер, 2011.

  2. Дейтел ТТ. Введение в операционные системы: в 2-хт. Пер. с англ. - М.: Мир, 1987.

  3. Олифер В.Т., Олифер Н.А. Сетевые операционные системы. - СПб.: Питер, 2007.

  4. Столлингс В. Операционные системы. 4-е изд. Пер. с англ. - М.: Изд. Дом «Вильямс», 2002.

  5. Вахалия Ю. UNIX изнутри. — СПб.: Питер, 2003.

  6. Рихтер Дж. Windows для профессионалов: Программирование для Windows 95 и Windows МТ4 на базе Win32 API. Пер. с англ. - М.: Изд. Отд. «Русская редакция», 1997.

Clone this wiki locally