- •1. Операционная система и ее основные функции
- •2. Основные этапы развития ос Первый период (1945–1955 гг.). Операционных систем нет
- •Второй период (1955 г.–начало 60-х). Пакетные операционные системы
- •Третий период (начало 60-х – 1980 г.). Компьютеры на основе интегральных микросхем. Первые многозадачные ос
- •Четвертый период (с 1980 г. По настоящее время). Персональные компьютеры. Классические, сетевые и распределенные системы
- •3. Классификация операционных систем
- •4. Принцип модульности при построении ос
- •5. Принцип особого режима работы при построении ос
- •6. Принцип виртуализации при построении ос
- •7. Принцип мобильности при построении ос
- •8. Принцип совместимости при построении ос
- •9. Принцип генерируемости при построении ос
- •10. Принцип открытости при построении ос
- •11. Принцип обеспечения безопасности вычислений при построении ос
- •12. Макроядерная структура операционных систем
- •13. Микроядерная структура операционных систем
- •14. Среды и оболочки операционных систем
- •15. Понятие потока, процесса, задачи Понятия «процесс» и «поток»
- •16. Понятие прерывания, исключительной ситуации
- •17. Функции ос по управлению памятью. Простейшие схемы управления памятью.
- •Простейшие схемы управления памятью
- •18. Управление памятью. Схема с фиксированными разделами
- •Один процесс в памяти
- •Оверлейная структура
- •Динамическое распределение. Свопинг
- •19. Управление памятью. Схема с переменными разделами
- •20. Управление памятью. Страничная организация памяти Страничная память
- •21. Управление памятью. Сегментная организация памяти
- •22. Прерывание. Обработка прерываний. Исключительные ситуации
- •Обработка прерываний и ошибок
- •23. Управление вводом-выводом в ос. Разделяемые и неразделяемые ресурсы Структура системы ввода-вывода
- •24. Буферизация и кэширование Буферизация и кэширование
- •25. Понятие спулинга, его назначение Spooling и захват устройств
- •26. Алгоритмы планирования запросов к жесткому диску. Алгоритм fcfs Алгоритмы планирования запросов к жесткому диску
- •Алгоритм First Come First Served (fcfs)
- •27. Алгоритмы планирования запросов к жесткому диску. Алгоритм sstf Алгоритмы планирования запросов к жесткому диску
- •Алгоритм Short Seek Time First (sstf)
- •28. Алгоритмы планирования запросов к жесткому диску. Алгоритм sсan и look Алгоритмы планирования запросов к жесткому диску
- •Алгоритмы сканирования (scan, look)
- •29. Управление процессами. Основные состояния процесса
- •Состояния процесса
- •30. Планирование процессов (задач). Алгоритмы планирования
- •31. Дисциплина диспетчеризации процессов (задач) fcfs
- •32. Дисциплина диспетчеризации процессов (задач) rr
- •33. Проблемы организации параллельных вычислений.
- •34. Тупиковые ситуации и способы их разрешения.
- •Способы предотвращения тупиков
- •Способы предотвращения тупиков путем тщательного распределения ресурсов. Алгоритм банкира
- •Предотвращение тупиков за счет нарушения условий возникновения тупиков Нарушение условия взаимоисключения
- •Нарушение условия ожидания дополнительных ресурсов
- •Нарушение принципа отсутствия перераспределения
- •Hарушение условия кругового ожидания
- •35. Страничная недостаточность («голодание» процессора) и ее обработка
- •36. Файловая система. Основные функции файловой системы
- •37. Простейшая таблица оглавления тома и её элементы
- •38. Логическая структура разделов диска на примере ibm- и ms-совместимых файловых систем
Нарушение принципа отсутствия перераспределения
Если бы можно было отбирать ресурсы у удерживающих их процессов до завершения этих процессов, то удалось бы добиться невыполнения третьего условия возникновения тупиков. Перечислим минусы данного подхода.
Во-первых, отбирать у процессов можно только те ресурсы, состояние которых легко сохранить, а позже восстановить, например состояние процессора. Во-вторых, если процесс в течение некоторого времени использует определенные ресурсы, а затем освобождает эти ресурсы, он может потерять результаты работы, проделанной до настоящего момента.
Hарушение условия кругового ожидания
Трудно предложить разумную стратегию, чтобы избежать последнего условия из раздела "Условия возникновения тупиков" – циклического ожидания.
Один из способов – упорядочить ресурсы. Например, можно присвоить всем ресурсам уникальные номера и потребовать, чтобы процессы запрашивали ресурсы в порядке их возрастания. Тогда круговое ожидание возникнуть не может. После последнего запроса и освобождения всех ресурсов можно разрешить процессу опять осуществить первый запрос. Очевидно, что практически невозможно найти порядок, который удовлетворит всех.
35. Страничная недостаточность («голодание» процессора) и ее обработка
(Для учёта распределения страниц между внешней и основной памятью каждая
строка таблицы страниц дополняется битом местонахождения страницы.
Valid/invalid bit.)
В том случае, если процессор пытается использовать страницу, помеченную
значением invalid, возникает событие, называемое страничная недостаточность
(paging fault).
Страничная недостаточность вызывает прерывание выполнения программы и
передачу управления операционной системе. Реакция операционной системы на
страничную недостаточность заключается в том, что необходимая страница
загружается в основную память.
На рисунке показаны основные этапы обработки события «страничная
недостаточность».
1. процессор, прежде чем осуществлять преобразование логического адреса в
физический, проверяет значение бита местонахождения необходимой страницы.
2. если значение бита invalid, то процесс прерывается и управление
передается операционной системе для обработки события страничная
недостаточность.
3. разыскивается необходимая страница во вторичной памяти и свободная
страничная рамка в основной**.
4. требуемая страница загружается в выбранную страничную рамку.
5. после завершения операции загрузки редактируется соответствующая строка
таблицы страниц, в которую вносится базовый адрес и valid значение бита
местонахождения.
6. управление передается прерванному процессу
36. Файловая система. Основные функции файловой системы
Файловая система - это часть операционной системы, назначение которой состоит в том, чтобы организовать эффективную работу с данными, хранящимися во внешней памяти, и обеспечить пользователю удобный интерфейс при работе с такими данными. Организовать хранение информации на магнитном диске непросто. Это требует, например, хорошего знания устройства контроллера диска, особенностей работы с его регистрами. Непосредственное взаимодействие с диском - прерогатива компонента системы ввода-вывода ОС, называемого драйвером диска. Для того чтобы избавить пользователя компьютера от сложностей взаимодействия с аппаратурой, была придумана ясная абстрактная модель файловой системы. Операции записи или чтения файла концептуально проще, чем низкоуровневые операции работы с устройствами.
Перечислим основные функции файловой системы.
Идентификация файлов. Связывание имени файла с выделенным ему пространством внешней памяти.
Распределение внешней памяти между файлами. Для работы с конкретным файлом пользователю не требуется иметь информацию о местоположении этого файла на внешнем носителе информации. Например, для того чтобы загрузить документ в редактор с жесткого диска, нам не нужно знать, на какой стороне какого магнитного диска, на каком цилиндре и в каком секторе находится данный документ.
Обеспечение надежности и отказоустойчивости. Стоимость информации может во много раз превышать стоимость компьютера.
Обеспечение защиты от несанкционированного доступа.
Обеспечение совместного доступа к файлам, так чтобы пользователю не приходилось прилагать специальных усилий по обеспечению синхронизации доступа.
Обеспечение высокой производительности.
Иногда говорят, что файл - это поименованный набор связанной информации, записанной во вторичную память. Для большинства пользователей файловая система - наиболее видимая часть ОС. Она предоставляет механизм для онлайнового хранения и доступа как к данным, так и к программам для всех пользователей системы. С точки зрения пользователя, файл - единица внешней памяти, то есть данные, записанные на диск, должны быть в составе какого-нибудь файла.