- •Понятие операционной системы (ос). Основные функции ос.
- •Сервисы, предоставляемые типичными ос. Основные этапы развития ос.
- •Классификация ос: по назначению, по режиму обработки задач, по способу взаимодействия с пользователем. Компоненты типичной ос.
- •Типы структур ос. Режимы работы ос. Понятие операционной и программной среды.
- •Системный таймер. Программные таймеры. Сторожевой таймер.
- •Утилиты. Понятие транслятора, компилятора, интерпретатора, ассемблера, дизассемблера, компоновщика, отладчика.
- •Преимущества многозадачного режима работы ос. Понятие процесса. Основные причины создания, завершения процессов в вычислительной системе (вс).
- •Модели процесса: с двумя состояниями, с пятью состояниями.
- •Описание процессов: атрибуты, управляющий блок (дескриптор). Действия ос при создании, переключении процессов.
- •Подходы к разработке кода ос по отношению к процессам.
- •Понятие потока. Сравнение процессов и потоков. Понятие, преимущества многопоточности.
- •Способы реализации потоков: в пространстве пользователя, в пространстве ядра, смешанная. Кратко
- •Подробно
- •Виды планирования процессов (потоков). Краткосрочное планирование: режимы решения, стратегии.
- •Стратегии распределения ресурсов вс: одноочередные, многоочередные.
- •Основные режимы работы вс.
- •Основные категории ресурсов ос. Типы доступа к ресурсам ос.
- •Понятие взаимной блокировки (тупика). Примеры, условия возникновения, обнаружение, предупреждение взаимоблокировок.
- •Понятие параллельных, последовательных процессов (потоков). Виды взаимодействия процессов (потоков). Проблемы взаимодействия параллельных процессов (потоков). Пример состояния гонок.
- •Понятие взаимного исключения, критического ресурса, критической секции. Проблемы, условия, способы взаимного исключения.
- •Механизмы взаимодействия процессов (потоков): очереди сообщений, разделяемая память, обмен сообщениями, сокеты.
- •Понятие семафора. Решение задачи взаимоисключения с использованием семафора. Понятие сигнализирующего семафора, мьютекса, монитора.
- •Проблема читателей-писателей
- •Вторая проблема читателей-писателей (приоритет писателя)
- •Третья проблема читателей-писателей (честное распределение ресурсов)
- •Понятие памяти. Функции подсистемы управления памятью. Типы адресов. Понятие виртуального адресного пространства (вап). Типы структур вап. Способы преобразования виртуальных адресов в физические.
- •Механизмы распределения памяти: разделами, свопинг, виртуальная память.
- •Механизмы распределения памяти: страничный.
- •Механизмы распределения памяти: сегментный, сегментностраничный.
- •Принципы организации подсистемы ввода-вывода. Способы реализации ввода-вывода. Уровни подсистемы ввода-вывода.
- •Понятие файловой системы (фс), файла. Функции фс.
- •Физическая организация фс, файла. Логическая организация фс.
- •Свойства безопасной информационной системы. Понятие угрозы, атаки, риска. Классификация угроз. Функции ос по защите данных.
- •Современне ос. Тенденции, перспективы развития современных ос.
Механизмы распределения памяти: сегментный, сегментностраничный.
Сегментный механизм распределения памяти используется в некоторых операционных системах, например, в Microsoft Windows. Он основан на разделении виртуальной памяти программы на сегменты, каждый из которых имеет свой адресное пространство.Программа может обращаться только к тем сегментам, которые ей разрешены. Это позволяет защитить программу от случайных обращений к данным других программ и операционной системы. Кроме того, сегменты могут быть разбиты на страницы, что позволяет более эффективно использовать память и ускоряет работу программы. Сегменты могут быть фиксированного или переменного размера и могут располагаться в любой части адресного пространства программы.
Сегментно-страничный механизм распределения памяти является более сложным и используется в основном в операционных системах с виртуальной памятью, таких как Linux и Solaris. Он сочетает в себе сегменты и страницы, позволяя программам иметь большие сегменты с возможностью разбиения их на страницы для повышения эффективности использования памяти. Этот механизм также обеспечивает дополнительную защиту от ошибок и эффективное управление памятью.
Иерархия памяти компьютера. Понятие кэширования. Вероятность попадания в кэш-память. Способы отображения основной памяти на кэшпамять. Способы согласования основной и кэш- памяти при записи. Двухуровневое кэширование.
Иерархия памяти компьютера:
Регистровая память (быстрая, дорогая). Она используется для хранения данных, которые часто используются процессором. Регистры могут быть встроены в сам процессор или быть частью кэш-памяти процессора. Регистровая память позволяет процессору работать с данными с максимальной скоростью, так как обращение к ней происходит намного быстрее, чем к другим видам памяти.
Кэш-память (быстрая, относительно дорогая)
Основная память (медленнее, дешевле)- Оперативная используется для временного хранения данных во время работы программы. Она быстрее, чем вторичная память, но меньше по объему.
Вторичная память (жесткие диски, оптические диски). Используется для хранения информации, когда она не нужна процессору.
Кэширование: сохранение часто используемых данных и инструкций в более быстрой памяти для уменьшения времени доступа к ним.
Вероятность попадания зависит от многих факторов, включая размер кэша, алгоритм замещения данных в кэше, частоту использования данных и т. д. В общем случае, чем больше размер кэша и выше частота использования данных, тем больше вероятность попадания. Однако точно предсказать вероятность попадания невозможно, так как это зависит от многих переменных и может изменяться в зависимости от нагрузки на систему и особенностей конкретной программы.
Способы отображения основной памяти на кэш:
– Прямое отображение: каждый блок основной памяти отображается на один блок кэш-памяти
– Частичное перекрытие: блоки основной памяти могут отображаться на несколько блоков кэш-памяти для увеличения вероятности попадания
– Индексирование: поиск данных в кэше по ключу
Согласование основной и кэш памяти при записи:
– Сквозная запись (write-through): при этом способе данные записываются как в кэш, так и в основную память. Это обеспечивает надежную запись данных, но может снижать производительность, так как требует дополнительных операций записи.
– Обратная запись (write-back): данные записываются только в кэш, а в основную память записываются позже, когда это необходимо. Это может повысить производительность, но увеличивает риск потери данных в случае сбоя системы. – Исключающая запись (write-around): данные записываются в специальную область кэша, которая не отображается на основную память. Этот способ может обеспечить высокую производительность, но не гарантирует надежность хранения данных.
– Предотвращение перезаписи (write-allocate): этот способ используется для предотвращения перезаписи данных в кэше, если они были изменены в основной памяти. Это может снизить производительность, если данные часто изменяются, но повышает надежность системы.
Двухуровневое кэширование позволяет увеличить скорость доступа к данным за счет использования кэшей разных уровней. Например, первичный кэш может храниться в регистрах процессора, а вторичный кэш - в более медленной, но более емкой кэш-памяти третьего уровня.На первом уровне кэша хранятся наиболее часто используемые данные, а на втором - менее востребованные. Когда процессору нужно получить доступ к данным, он сначала проверяет первый уровень кэша. Если данные там есть, они быстро извлекаются, и время доступа сокращается. Если же данных на первом уровне кэша нет, процессор проверяет второй уровень, который может быть медленнее, но имеет больший объем. Таким образом, двухуровневое кэширование позволяет оптимизировать использование памяти и ускорить работу системы.