Похожие презентации:
Лекция 2.2. Основные принципы ОС
1.
Основные принципыпостроения ОС
2.
Основные принципы построения ОСЧастотный принцип
Принцип модульности
Принцип функциональной избирательности
Принцип генерируемости
Принцип функциональной избыточности
Принцип «по умолчанию»
Принцип перемещаемости
Принцип защиты
Принцип независимости программ
Принцип открытости и наращиваемости
3.
Частотный принципЧастотный принцип основан на выделении в
алгоритмах программ и в обрабатываемых
массивах действий и данных по частоте
использования. Действия, которые часто
используются, располагаются в оперативной памяти
для быстрого доступа. Часто используемые операции
планируются краткосрочно, тогда как редкие —
долгосрочно, что помогает оптимизировать
распределение ресурсов, таких как процессор и
память.
4.
Частотный принципПример частотного принципа можно увидеть в работе веббраузеров. Когда вы часто посещаете определённые вебсайты, браузер сохраняет их данные в кэш-памяти, что
позволяет быстрее загружать эти сайты при следующем
посещении. Данные (изображения, HTML, стили) хранятся в
оперативной памяти, чтобы браузер не загружал их заново с
интернета, экономя время и ресурсы.
Те же сайты, которые посещаются редко, не сохраняются в
кэше и могут быть удалены из памяти для освобождения
места. Это позволяет браузеру оптимально распределять
память и другие ресурсы, улучшая производительность при
работе с часто используемыми сайтами.
5.
Принцип модульностиПринцип модульности заключается в
разделении системы на модули — это
отдельная, законченная часть системы,
которая выполняет определённую функцию и
взаимодействует с другими модулями через
заранее оговоренные интерфейсы. Модули
можно заменять на другие, если они
соответствуют этим интерфейсам.
6.
Принцип модульностиПредставим, что мы строим ОС, где каждый модуль — это отдельная
часть, ответственная за конкретную задачу. Например, есть модуль
управления памятью, который отвечает только за распределение и
освобождение оперативной памяти, и модуль управления файлами,
который работает с файлами на диске.
Если модуль управления файлами устарел или есть более быстрая
и удобная его версия, его можно заменить, не трогая другие части
системы. Важно лишь, чтобы новый модуль управления файлами
соответствовал тем же интерфейсам (правилам взаимодействия),
что и старый, — тогда ОС продолжит работать без перебоев.
Пример из реальной жизни — модульное ядро Linux. Пользователь
может добавлять или заменять модули, например, для поддержки
новых драйверов устройств, не перезагружая всю систему, что
делает её гибкой и настраиваемой под разные задачи.
7.
Принцип функциональнойизбирательности
Принцип функциональной избирательности
выделяет важные модули, которые постоянно
находятся в оперативной памяти, для
повышения производительности. Эти модули
составляют ядро системы, и включают
управление прерываниями, задачами и
памятью.
8.
Принцип функциональнойизбирательности
Например, модуль управления задачами следит за
распределением процессов и их выполнением, модуль
управления памятью отвечает за распределение
оперативной памяти между запущенными
приложениями, а модуль обработки прерываний
обрабатывает сигналы от внешних устройств, таких как
клавиатура или мышь. Эти модули всегда загружены,
потому что от их работы напрямую зависит стабильность
и производительность системы. Операционная система
постоянно использует их для выполнения ключевых
операций, обеспечивая быструю реакцию и корректное
выполнение задач.
9.
Принцип генерируемостиПринцип генерируемости подразумевает
настройку ОС под конкретную
конфигурацию машины и задачи с помощью
процесса инсталляции. Генерация системы
возможна благодаря модульной структуре и
позволяет адаптировать ОС под разные
условия.
10.
Принцип генерируемостиКогда вы устанавливаете Linux, вы выбираете различные
параметры и опции, которые соответствуют конфигурации
вашего компьютера и задачам, которые вы планируете
выполнять. Например, в процессе установки вы можете
выбрать, какие модули и драйверы будут установлены,
включая поддержку различных файловых систем, сетевых
протоколов, графических интерфейсов и программного
обеспечения.
Эта настройка и выбор компонентов позволяют адаптировать
операционную систему под конкретное оборудование и
задачи, улучшая производительность и эффективность
системы. В результате вы получаете операционную систему,
которая оптимально подходит для вашей конкретной
конфигурации и использования.
11.
Принцип функциональнойизбыточности
Принцип функциональной избыточности
предусматривает возможность выполнения
одних и тех же операций разными
средствами. Это улучшает адаптивность ОС к
различным конфигурациям вычислительных
систем и позволяет эффективно
использовать ресурсы.
12.
Принцип функциональнойизбыточности
Windows предлагает различные утилиты и приложения для
работы с файлами, например, проводник Windows и
командную строку. Оба инструмента позволяют
пользователям выполнять операции с файлами, такие как
копирование, перемещение и удаление, но делают это
разными способами.
Эта функциональная избыточность позволяет
операционной системе эффективно использовать
ресурсы, адаптироваться к разным условиям и
предпочтениям пользователей, а также обеспечивать
работу на различных типах файловых систем и в разных
сценариях использования.
13.
Принцип «по умолчанию»Принцип «по умолчанию» используется для
упрощения организации связей в системе. В
ОС хранятся базовые описания структур
процессов и оборудования, что снижает
необходимость постоянной настройки
системы пользователем.
14.
Принцип «по умолчанию»Windows предоставляет множество настроек по
умолчанию, которые подходят для большинства
пользователей. Например, параметры
безопасности, такие как автоматическое
обновление системы и защита от вирусов с
помощью встроенного антивирусного ПО (Windows
Defender), настроены по умолчанию для обеспечения
базового уровня защиты. Пользователь может
изменить эти настройки, но система сразу готова к
работе с оптимальными стандартными
параметрами.
15.
Принцип перемещаемостиПринцип перемещаемости предполагает,
что модули могут исполняться независимо от
их расположения в оперативной памяти. Это
достигается с помощью механизмов
настройки адресов в процессе выполнения.
16.
Принцип перемещаемостиПредставьте, что у вас есть книга, и вы читаете её. Если
книга меняет свои страницы местами, вы всё равно
можете читать её, потому что вы всегда знаете, где искать
нужные страницы. Так же и в компьютере: если программа
загружается в память, её части могут быть в разных местах,
но система знает, как правильно её читать и исполнять.
Когда программа или модуль загружается, система делает
так, чтобы все указатели и адреса в программе правильно
указывали на нужные места, даже если местоположение
этих мест в памяти изменилось. Это как если бы у вас был
указатель на страницу в книге, который автоматически
обновляется, если страница перемещается.
17.
Принцип защитыПринцип защиты направлен на
предотвращение искажений данных и
программ, а также защиту пользователей от
некорректных действий друг друга и самой
ОС. Для этого применяются
привилегированные команды и контекстная
защита памяти.
18.
Принцип защитыКаждый процесс в Windows работает в своем собственном
виртуальном адресном пространстве. Это означает, что один
процесс не может напрямую читать или изменять данные
другого процесса. Если одно приложение пытается получить
доступ к памяти, используемой другим приложением, Windows
предотвращает этот доступ, чтобы обеспечить безопасность и
стабильность системы.
Когда программы или пользователи пытаются выполнить
операции, которые могут повлиять на работу системы или
изменить критические настройки, Windows требует, чтобы они
имели соответствующие права. Когда программа пытается
внести изменения в систему, Windows выводит всплывающее
окно, где пользователь должен подтвердить эти изменения. Это
предотвращает запуск нежелательных или вредоносных
программ с правами администратора без явного согласия
пользователя.
19.
Принцип независимости программПринцип независимости программ от
внешних устройств позволяет одинаково
управлять устройствами, независимо от их
физических характеристик, что повышает
универсальность программного
обеспечения.
20.
Принцип независимости программКогда вы отправляете документ на печать, Windows
использует драйвер принтера, установленный для вашего
устройства. Драйвер отвечает за взаимодействие с
конкретным принтером и переводит команды печати в
формат, понятный принтеру. Пользователь может подключить
новый принтер или изменить существующий без
необходимости переписывать программу, которая
отправляет документ на печать.
Если вы подключаете новый принтер, вам не нужно изменять
код программ, которые отправляют на него документы. Вы
просто устанавливаете драйвер для нового принтера, и
система автоматически адаптирует все процессы печати к
этому устройству.
21.
Принцип открытости инаращиваемости
Принцип открытости и наращиваемости
обеспечивает доступность системы для
анализа и возможность добавления новых
модулей и улучшения существующих. Это
делает ОС гибкой и легко модифицируемой
для решения новых задач.
22.
Принцип открытости и наращиваемостиWindows поставляется с набором инструментов для диагностики и
анализа системы, таких как "Диспетчер задач", "Монитор ресурсов" и
"Средство просмотра событий". Эти инструменты помогают
пользователям и администраторам анализировать работу системы,
находить и устранять проблемы.
Windows поддерживает установку новых программ и драйверов через
стандартные установочные пакеты. Вы можете добавить новые
приложения через Microsoft Store или скачивать и устанавливать их из
внешних источников. Например, после установки нового принтера, вы
можете установить соответствующий драйвер, чтобы система могла
корректно работать с новым оборудованием.
PowerShell и командная строка позволяют пользователям и
администраторам изменять конфигурацию системы, управлять
службами и автоматизировать задачи. Например, администратор
может написать скрипт для автоматической настройки определённых
параметров системы или установки программного обеспечения.
23.
Основные элементы архитектуры ОСВсе модули операционной системы делятся на две
группы:
Ядро – это модули, которые выполняют основные
функции операционной системы
Вспомогательные модули – это модули,
реализующие дополнительные функции
операционной системы
Данное разделение обеспечивает легкую
расширяемость ОС, что позволяет добавлять новые
высокоуровневые функции, не изменяя при этом
критически важные модули ядра
24.
ЯдроЯдро операционной системы включает функции,
решающие ключевые задачи управления
вычислительным процессом и системными
ресурсами. Это фундаментальные компоненты,
обеспечивающие работу всей системы, которые:
Управляют процессами и потоками: ядро обеспечивает
создание, переключение и завершение процессов, а также
синхронизацию их выполнения.
Управляют памятью: в задачу ядра входит выделение и
освобождение памяти для различных программ, а также
поддержка виртуальной памяти.
Осуществляют ввод-вывод: взаимодействие с внешними
устройствами (жёсткие диски, сетевые интерфейсы,
клавиатуры и др.) осуществляется через соответствующие
драйверы и модули ядра.
25.
Состав ядраЯдро составляет сердцевину операционной системы,
без него ОС является полностью неработоспособной и
не сможет выполнить ни одну из своих функций.
В состав ядра входят функции, решающие
внутрисистемные задачи организации ВП:
переключение контекстов
загрузка/выгрузка страниц,
обработка прерываний.
создание прикладной программной среды.
26.
Взаимодействие приложений сядром
Приложения могут обращаться к ядру с запросами –
системными вызовами – для выполнения тех или иных
действий (для открытия и чтения файла, вывода
графической информации на дисплей, получения
системного времени и т.д.)
Функции ядра, которые могут вызываться
приложениями, образуют интерфейс прикладного
программирования – API.
27.
Вспомогательные модулиВспомогательные модули операционной системы выполняют задачи,
связанные с взаимодействием пользователя и прикладных программ с
системой. Эти модули обычно делятся на несколько категорий:
утилиты – программы, решающие отдельные задачи управления и
сопровождения компьютерной системы. Например, программа
сжатия дисков, архивирование данных на МЛ;
системные обрабатывающие программы – текстовые или
графические редакторы компиляторы, компоновщики, отладчики;
программы предоставления пользователю дополнительных услуг –
специальный вариант пользовательского интерфейса, калькулятор,
игры и пр.
библиотеки процедур различного назначения, упрощающие
разработку приложений. Например, библиотека математических
функций, функций ввода – вывода и т.д.
28.
ЗаключениеТаким образом, архитектура операционной
системы представляет собой гибкую модульную
структуру, где ядро решает основные задачи по
управлению аппаратными ресурсами и
выполнением процессов, а вспомогательные модули
предоставляют пользователю и приложениям
дополнительные сервисы и функции для работы с
системой.