Видео недоступно для вставки
Операционные системы включают ядро, подсистемы управления памятью, программами, файловую систему и драйверы устройств.
Основные подсистемы: управление процессами, основной и внешней памятью, устройствами ввода-вывода, файлами, защита системы, сетевая поддержка и командный интерфейс.
Процесс - это программа в стадии выполнения, требующая ресурсов процессора, памяти, файлов и устройств ввода-вывода.
Операционная система управляет созданием, удалением, приостановкой и возобновлением процессов, обеспечивая их взаимодействие и синхронизацию.
Основная память - энергозависимое устройство, теряющее содержимое при разрушении системы.
Операционная система ведет учет используемой памяти, распределяет и освобождает пространство, принимая решения о загрузке процессов.
Внешняя память используется для хранения программ и данных, управляя свободным пространством, распределением памяти и управлением дисками.
Подсистема ввода-вывода включает кэширование, буферизацию, общий интерфейс драйверов и драйверы специализированных устройств.
Файлы представляют собой наборы взаимосвязанной информации, включая данные и программы.
Операционная система управляет созданием, удалением, манипуляциями с файлами и их выгрузкой на внешние устройства.
Защита системы управляет доступом к программам, процессам и ресурсам, различая авторизованное и неавторизованное использование.
Сетевая поддержка обеспечивает доступ к системным ресурсам через компьютерную сеть, увеличивая скорость вычислений и надежность.
Командный интерфейс управляет процессами, вводом-выводом, памятью, файловой системой, защитой и сетевым обеспечением.
Аппаратная поддержка включает средства поддержки привилегированного режима, трансляции адресов, переключения процессов, систему прерываний, системный таймер и защиту памяти.
Монолитные системы состоят из процедур, работающих в привилегированном режиме, и сервисных процедур, выполняющих системные вызовы.
Монолитная операционная система включает основную программу, набор служебных программ и вспомогательных процедур.
Вспомогательные процедуры выполняют действия для нескольких служебных процедур.
В операционных системах с монолитным ядром сборка ядра осуществляется отдельно для каждого компьютера.
Исключение ненужных компонентов повышает надежность системы.
Монолитное ядро - старейший способ организации операционных систем.
Пример: система, созданная в 1968 году в Голландии.
Многоуровневая система обеспечивает многозадачность и управление памятью.
Микроядерная архитектура разбивает операционную систему на небольшие модули.
Большинство программ операционной системы работают как пользовательские процессы.
Ошибки в драйверах устройств не вызывают сбой всей системы.
Микроядерная архитектура позволяет добавлять новые компоненты без прерывания работы.
Недостаток: дополнительные накладные расходы на передачу сообщений снижают производительность.
Монолитная система: высокая скорость работы, но большой программный код и уязвимость к ошибкам.
Микроядерная архитектура: малый программный код ядра, но большие накладные расходы и медленная работа.
Клиент-серверная модель: обособление процессов на серверы и клиенты.
Связь между клиентами и серверами осуществляется через передачу сообщений.
Модель применима как на отдельных машинах, так и в сетях.
Персональный компьютер отправляет запросы на веб-страницу на сервер.
Первые выпуски ОС IBM OS/360 были пакетными, но пользователи хотели интерактивную работу.
Система разделения времени TSS/360 была громоздкой и медленной, что привело к отказу от проекта.
VM/370 обеспечивала многозадачность и удобный интерфейс.
Виртуальные машины VM/370 были точными копиями оборудования, включая режим ядра и пользователя.
На разных виртуальных машинах могли работать разные операционные системы.
Виртуализация позволяет клиентам выбирать между общим и выделенным хостингом.
Виртуальные машины позволяют запускать разные операционные системы на одной физической машине.
Это снижает затраты на выделенный сервер для небольших и средних веб-сайтов.
Гипервизоры первого типа требуют готовности процессора к работе в режиме виртуальной машины.
Гипервизоры второго типа используют основную операционную систему для выполнения задач.
Коммерческие гипервизоры используют гибридную стратегию для повышения производительности.
Виртуальная машина Java предназначена для запуска программ на языке Java.
Код для виртуальной машины Java может выполняться на любом компьютере с Java-интерпретатором.
Программы Java могут быть проверены на безопасность и выполняться в защищенной среде.
Экзоядро разделяет ресурсы между виртуальными машинами.
Каждая виртуальная машина имеет свои ресурсы, что исключает необходимость в переназначении адресов.
Экзоядро отделяет многозадачность от пользовательской операционной системы, что снижает затраты.
Рассмотрены шесть различных структур операционных систем.
Лекция завершена, но существуют и другие конструкции, включая гибридные.