- Операционная система – представляет собой комплекс взаимосвязанных программ, который действует как
интерфейс между приложениями и пользователями
с одной стороны, и аппаратурой компьютера
с другой стороны.
- Ядро — центральная часть операционной системы (ОС), обеспечивающая приложениям координированный доступ к ресурсам компьютера, таким как процессорное время, память и внешнее аппаратное
обеспечение. Также обычно ядро предоставляет
сервисы файловой системы и сетевых протоколов.
- Spooling (Simultaneous Peripheral Operation On Line) или подкачка-откачка данных – метод работы с внешними устройствами вывода (реже - ввода) в многозадачной ОС или многомашинной среде, при которой задачам создается иллюзия одновременного доступа к устройству
- Системные вызовы – это интерфейс между операционной системой и пользовательской программой.
- Прерывания(hardware interrupt) – это событие, генерируемое
внешним (по отношению к процессору) устройством.
- Многозадачность (мультипрограммирование) – способ организации
вычислительного процесса, при котором
на одном (или нескольких) процессоре (-ах) выполняется несколько задач.
- Мультипроцессорная обработка – способ организации вычислительного процесса в системах с несколькими процессорами (разделение процедуры обработки на разных процессорах).
- Процесс, связан с программным кодом исполняемого модуля и рассматривается ОС как заявка на потребление всех видов
ресурсов, кроме процессорного времени.
- Процесс блокируется, когда он не может продолжать работу,
не дождавшись возникновения какого-либо
события в ВС.
- Поток выполнения (англ. thread — нить) — наименьшая
единица обработки, исполнение которой
может быть назначено ядром операционной
системы.
- Планирование - обеспечение поочередного доступа процессов к одному процессору.
- Планировщик - отвечающая за это часть ОС.
- Алгоритм планирования - используемый алгоритм для планирования.
- Таймер – позволяет отсчитывать время выполнения процесса
в процессоре и регулировать загрузку
процессора
- Гарантированное планирование
В системе с n-процессами, каждому процессу будет предоставлено 1/n времени процессора.
- Справедливое планирование
Процессорное время распределяется среди пользователей, а не процессов.
- Каналы (трубы), это псевдофайл, в который один процесс пишет, а другой читает.
- Сокеты - поддерживаемый ядром механизм, скрывающий особенности среды и позволяющий единообразно взаимодействовать процессам, как на одном компьютере, так и в сети
- Почтовые ящики – очереди сообщений, обеспечивают возможность широковещательной рассылки
- Семафор – это механизм ядра, предназначенный
для синхронизации процессов
- Семафоры
представляют собой переменные для
подсчета сигналов запуска, сохраненных
на будущее.
- Различают
счетные и бинарные семафоры:
Бинарные семафоры (мьютексы - mutex) –
это механизм взаимного исключения для
защиты критичного разделяемого ресурса,
может принимать значения:
0 – ресурс блокирован
1 – ресурс
свободен
Счетные семафоры - это механизм взаимного
исключения для защиты ресурса, который
может быть использован не более чем ограниченным
фиксированным числом задач n
- Взаимоблокировка процессов может
происходить когда несколько процессов
борются за один ресурс
- Физическая организация памяти
Запоминающие
устройства компьютера разделяют, как
минимум, на два уровня: основную (оперативную, физическую) и вторичную (внешнюю) память.
Основная память представляет собой упорядоченный
массив однобайтовых ячеек, каждая из
которых имеет свой уникальный адрес (номер).
Процессор извлекает
команду из основной памяти, декодирует и выполняет
ее.
Вторичную память (это
главным образом диски) также можно рассматривать
как одномерное линейное адресное пространство, состоящее
из последовательности байтов.
В отличие от оперативной
памяти, она является энергонезависимой,
имеет существенно большую емкость и используется
в качестве расширения основной памяти.
- Основные
способы использования диска:
- Свопинг (подкачка) - процесс целиком
загружается в память для работы
- Виртуальная память - процесс может
быть частично загружен в память для работы
- Методы
реализации виртуальной памяти:
- Страничная виртуальная память –
организует перемещение данных между
ОП и диском страницами – частями виртуального
адресного пространства фиксированного
и сравнительно небольшого размера.
- Сегментная виртуальная память предусматривает
перемещение данных сегментами – частями
виртуального адресного пространства
произвольного размера, полученными с
учетом смыслового значения данных.
- Сегментно-страничная виртуальная память использует
двухуровневое деление: виртуальное адресное
пространство делится на сегменты, а затем
сегменты делятся на страницы. Единицей
перемещения данных является страница.
- Для временного
хранения сегментов и страниц на диске
отводится специальная область – страничный
файл или файл подкачки (paging file).
- Страницы
- это части, на которые разбивается пространство
виртуальных адресов.
Страничные блоки - единицы физической
памяти.
Страницы всегда
имеют фиксированный размер. Передача
данных между ОЗУ и диском всегда происходит
в страницах.
- Страничное прерывание - происходит,
если процесс обратился к странице, которая
не загружена в ОЗУ (т.е. Х). Процессор передается
другому процессу, и параллельно страница
загружается в память.
- Кэш — это память с большей скоростью
доступа, предназначенная для ускорения
обращения к данным, содержащимся постоянно
в памяти с меньшей скоростью доступа
(далее «основная память»)
- оперативная память
компьютера – это память, в которой
хранится временная информация, необходимая
для корректной работы запущенных на данный момент процессов, программ и приложений.
- Виртуальная память
компьютера — это стандартный элемент
большинства операционных систем.