- •Список вопросов к гос. Экзамену по курсу «Операционные системы»
- •Обзор развития ос.
- •Назначение и функции ос.
- •Классификация процессов.
- •Ресурсы вычислительной системы. Классификация ресурсов.
- •Прерывания. Порядок их обработки.
- •Архитектура ос. Привилегированный режим. Архитектура ос.
- •Привилегированный режим.
- •Структура ядра ос. Микроядерная архитектура ядра ос. Структура ядра ос
- •Микроядерная архитектура ос.
- •Планирование и диспетчеризация процессов. Дескрипторы задач.
- •Дисциплины диспетчеризации.
- •Память и отображения. Виртуальное адресное пространство. Управление оперативной памятью.
- •Пространства и отображения, виртуальное адресное пространство.
- •Логические имена
- •Распределение оп разделами. Распределение разделами.
- •Распределение фиксированными разделами
- •Распределение разделами с подвижными границами
- •Распределение подвижными разделами
- •Сегментная организация памяти. Сегментная организация памяти.
- •Страничная организация памяти.
- •Свопинг. Его стратегии.
- •Сегментно-страничная организация памяти.
- •Проблемы синхронизации параллельных процессов.
- •Семафорные примитивы Дейкстры. Задача взаимного исключения.
- •Почтовые ящики.
- •Мониторы Хоара.
- •Методы борьбы с тупиками.
- •Тупики. Примеры тупиков. Условия существования тупиков. Понятие тупика, примеры тупиков, условия существования тупиков.
- •Задачи ос по управлению файлами и устройствами. Задачи ос по управлению файлами и устройствами
- •Файловые системы.
- •Процессор i86, режимы, регистры.
- •Процессор i86, дескрипторы сегментов, виртуальное адресное пространство.
- •Процессор i86, организация памяти.
- •Процессор i86, кэширование.
- •Процессор i86, защита памяти, правила доступа к сегментам.
- •Процессор 80x86, система прерываний.
Назначение и функции ос.
Операционная система это комплекс взаимосвязанных системных программных модулей и соответствующих таблиц, предназначенных для эффективного (в некотором смысле) распределения ресурсов вычислительной системы во время выполнения пользовательских программ, а также для организации интерфейса между пользователями и прикладными программами с одной стороны и аппаратурой с другой.
Интерфейс между пользователями и аппаратурой поддерживается на основе использования и реализации в составе ОС командного языка запросов. В настоящее время такой язык имеет форму графических оболочек.
Интерфейс между пользовательскими программами( приложениями) и аппаратурой обеспечивается с помощью функций из состава интерфейса прикладного программирования – API(ApplicationProgrammingInterface).
Перечислим основные функции ОС как распределителя ресурсов:
распределение процессора( процессорного времени) между активными процессами(задачами) и потоками вычислительной системы – диспетчеризация задач;
организация оперативной памяти для осуществления мультипрограммного режима (организация виртуальной памяти, защита различных областей памяти от несанкционированного доступа);
организация ввода/вывода( планирование ввода/вывода, управление микроконтроллерами и внешними устройствами, организация файлов и каталогов на магнитных дисках);
организация механизма прерываний как основного средства координации функционирования различных компонент вычислительной системы;
синхронизация доступа со стороны процессов( задач) к общим( разделяемым) ресурсам системы;
защита данных и администрирование(организация процедуры логического доступа в систему, определение прав доступа при обращении к ресурсам системы , аудит системы, резервирование ресурсов );
организация доступа к удалённым ресурсам в вычислительных сетях.
Понятие процесса. Граф состояния процесса.
Понятие процесс (задача) является одним из основных при рассмотрении ОС.Процесс (задача)– это некоторый комплекс действий , связанный с выполнением отдельной программы в вычислительной системе.Процесс одновременно является носителем данных и выполняет операции, связанные с их обработкой. Процесс может находиться в одном из четырёх состояний – бездействия, готовности, выполнения (счёта), ожидания (блокировки).
В состоянии бездействия процесс не потребляет (не использует) никаких ресурсов вычислительной системы, кроме ресурса, необходимого для хранения описания процесса в некоторой форме.
В состоянии готовности процессу выделяются все необходимые ресурсы или могут быть выделены в любой момент по требованию, кроме процессора.
В состоянии выполненияпроцессу выделяется процессор (процессорное время), т. е. выполняются команды соответствующей программы.
В состоянии ожидания процесс ждёт необходимый ему ресурс, ранее выделенный некоторому другому процессу, или наступления некоторого события.
Во время своего развития процессы могут многократно переходить из одного состояния в другое. Такие переходы осуществляются в соответствии с графом переходов:
Переход из одного состояния в другое может инициироваться пользователем, приложением или операционной системой, но контроль за такими переходами всегда осуществляет ОС. Это связано с тем, что любой переход предполагает выделение процессу конкретных ресурсов или освобождение ресурсов, а это является прерогативой ОС.
Состояния готовности, выполнения и ожидания являются активными состояниями, так как в этих состояниях процессы потребляют ресурсы вычислительной системы и конкурируют за них. Состояние бездействия, с этой точки зрения, считаетсяпассивнымсостоянием.
Часто, в рамках конкретного процесса, можно выделить несколько подпроцессов (потоков), причём такие потоки могут выполняться параллельно относительно друг друга. Принципиальное различие между процессами и потоками (threads) состоит в том, что разные процессы имеют высокую степень обособленности друг от друга в отличии от потоков конкретного процесса. Высокая степень обособленности разных процессов выражается в том, что каждому процессу выделяется своё адресное пространство, файлы, окна, семафоры и другие ресурсы. Такая обособленность нужна, чтобы защитить процессы друг от друга и снизить конкуренцию за общие ресурсы. Потоки конкретного процесса не имеют собственных ресурсов, при своём развитии они используют ресурсы выделенные их процессу, кроме ресурса процессорного времени. Граф переходов для потоков имеет такой же вид как и граф переходов для процессов.