Файл: Функции операционных систем персональных компьютеров (Обзор теоретических понятий операционных систем персональных компьютеров ).pdf
Добавлен: 29.02.2024
Просмотров: 39
Скачиваний: 0
СОДЕРЖАНИЕ
2. Характеристика базовых функций операционных систем персональных компьютеров
3. Обзор и характеристика функциональных возможностей семейства ОС Windows
4. Сравнительный анализ функциональных возможностей архитектур Windows CE и QNX Neutrino RTOS
5. Сравнительный анализ функциональных возможностей архитектур Windows и Linux
Содержание:
Введение
Практически во все времена источником появления операционных систем была необходимость создания удобных в использовании компьютерных систем, представляющих собой совокупность аппаратного и программного обеспечения компьютера. Операционные системы предназначены для решения практических задач пользователей. Поскольку делать это с помощью только аппаратного обеспечения очень сложно и не удобно, так как машинные команды очень примитивные, а их рутинность выходит за пределы возможностей человека, то были созданы специализированные приложения.
Для таких программ понадобились общие операции управления аппаратным обеспечением, распределением аппаратных ресурсов и тому подобное. Данные операции сгруппировали в рамках отдельного уровня программного обеспечения, который и стали называть операционной системой.
Далее возможности операционных систем вышли за рамки базового набора операций, необходимых прикладным программам, но промежуточное положение таких систем между прикладными программами и аппаратным обеспечением осталось неизменным.
На современном этапе развития, под операционной системой понимается комплекс управляющих программ, обеспечивающих техническое функционирование вычислительной системы, диагностику неисправностей, планирование использования ресурсов системы и решения задач по заданию пользователей.
Операционные системы осуществляют также ввод / вывод информации и обмен данными между различными компонентами системы.
Как правило, операционную систему рассматривают как продолжение аппаратной части компьютера. Поэтому еще одной задачей ОС является управление выполнением задач пользователей с целью максимального повышения производительности вычислительной системы. Поэтому данная тема актуальна на сегодняшний день.
Предметом курсовой работы является совокупность теоретических понятий операционных систем персональных компьютеров.
Объектом курсовой работы является операционные системы Windows 10, Linux, Windows CE и QNX Neutrino RTOS.
Целью данной работы является рассмотрение основных функций операционных систем персональных компьютеров, проведение сравнительного анализа функциональных возможностей архитектур Windows, Linux, Windows CE и QNX Neutrino RTOS.
Согласно поставленной цели необходимо решить следующие задачи для ее достижения:
- провести обзор теоретических понятий операционных систем персональных компьютеров;
- охарактеризовать базовые функции операционных систем персональных компьютеров;
- провести обзор и характеристику функциональных возможностей семейства ОС Windows;
- проанализировать функциональные возможности архитектур Windows CE и QNX Neutrino RTOS;
- проанализировать функциональные возможности архитектур Windows и Linux;
- сделать соответствующие выводы.
1. Обзор теоретических понятий операционных систем персональных компьютеров
Обзор основных понятий ОС персональных компьютеров начнем с базового понятия операционной системы.
Операционная система — это программный комплекс, обеспечивающий управление аппаратными средствами компьютера, вычислительными процессами, а также предоставляющий среду для выполнения прикладных программ [1].
Касательно своего применения, операционные системы классифицируют следующим образом [2]:
- универсальные;
- специальные;
- специализированные;
- однозадачные;
- многозадачные;
- однопользовательские (в системе отсутствуют механизмы ограничения доступа к файлам и на использование ресурсов системы);
- многопользовательские (система внедряет понятие "владелец файла" и обеспечивает механизмы ограничения на использование ресурсов системы (квоты)), все многопользовательские операционные системы являются также многозадачными;
- реального времени (система поддерживает механизмы выполнения задач реального времени, есть такие, для которых любые операции всегда выполняются по заранее предсказуемому и неизмененному при следующих исполнениях времени).
Относительно способа установки (инсталляции) операционной системы, операционные системы бывают [1]:
- встроенные (которые хранятся в энергонезависимой памяти вычислительной машины или устройства без возможности замены в процессе эксплуатации оборудования);
- не встроенные (которые устанавливаются на одно из устройств хранения информации вычислительной машины с возможностью последующей замены в процессе эксплуатации).
Относительно возможностей расширения операционные системы бывают:
- закрытые (не позволяют расширения функциональности ОС);
- открытые (строятся по технологиям, которые обеспечивают возможности расширение функциональности ОС).
Относительно возможностей внесения изменений в исходный код операционные системы бывают:
- открытые (англ. Open source) - с открытым программным кодом;
- собственнические (англ. Proprietary) - коммерческие с закрытым кодом.
Операционная система (ОС) связывает аппаратное обеспечение и прикладные программы. Многие свойства различных программ похожи, и операционная система обычно предоставляет этот общий сервис. Например, практически все программы считывают и записывают информацию на диск или отображают ее на дисплее. И хотя каждая программа в принципе может содержать инструкции, выполняющие эти повторяющиеся задачи, использование в этих целях операционной системы более практично.
Операционная система может взаимодействовать с аппаратными средствами и пользователем или прикладными программами. Она также может переносить информацию между аппаратурой и прикладным программным обеспечением [3].
К операционным системам в зависимости от сферы их использования предъявляется ряд требований. Некоторые, из перечисленных ниже, могут быть более или менее жесткими. Основное требование – функциональная полнота – зависит от предметной области использования системы.
Функциональная полнота определяется выполнением основных функций эффективного управления ресурсами и обеспечения удобного интерфейса для пользователя и прикладных программ. Современная ОС должна поддерживать мультипрограммный вычислительный процесс, как правило, виртуальную память, возможно свопинг, требуемый интерфейс для приложений и, возможно для пользователя, высокую степень защиты, удобство работы, а также выполнять многие другие необходимые функции и услуги.
Кроме требований функциональной полноты, к ОС предъявляется ряд важных эксплуатационных требований.
Эффективность. Под эффективностью вообще любой системы понимается степень соответствия системы своему назначению, техническое совершенство и экономическая целесообразность. На показатели эффективности ОС влияет много различных факторов, среди которых основными являются архитектура ОС, многообразие ее функций, качество программного кода, аппаратная платформа (компьютер) и др. Надежность и отказоустойчивость. Операционная система должна быть не менее надежна, чем компьютер, на котором она работает.
Система должна быть защищена от внутренних и внешних сбоев и отказов. В случае ошибки в программе или аппаратуре система должна обнаружить ошибку, попытаться исправить ее или свести к минимуму ущерб, нанесенный этой ошибкой.
Надежность и отказоустойчивость ОС определяются архитектурными решениями, положенными в ее основу, а также отлаженностью программного кода (основные отказы и сбои ОС в основном обусловлены программными ошибками в ее модулях).
Безопасность (защищенность). ОС должна защищать приложения и пользователей и от воздействия чужих ошибок, и попыток злонамеренного вмешательства (несанкционированного доступа). Свойства безопасности особенно важны для сетевых ОС. В таких ОС к задаче контроля доступа добавляется задача защиты данных, передаваемых по сети.
Предсказуемость. Требования, которые пользователь может предъявить к системе, в большинстве случаев непредсказуемы. В то же время пользователь предпочитает, чтобы обслуживание не очень сильно менялось в течение предположительного времени. В частности, запуская свою программу в системе, пользователь должен иметь основанное на опыте работы с этой программной приблизительное представление, когда ему ожидать выдачи результатов. Требования со стороны приложений, как правило, могут быть сформулированы и достаточно полно учтены.
Функциональная сложность операционной системы неизбежно приводит к сложности ее архитектуры, под которой понимают структурную организацию ОС на основе различных программных модулей. Обычно в состав ОС входят исполняемые и объектные модули для данной ОС форматы, библиотеки различных типов, модули исходного текста программ, программные модули специального формата (например, загрузчик ОС, драйверы ввода-вывода), конфигурационные файлы, файлы документации, модули справочной системы и так далее.
Большинство современных операционных систем являются хорошо структурированными модульными системами, которые способны к развитию, расширению и переносу на новые платформы. Какой-либо единой архитектуры ОС не существует, но существуют универсальные подходы к структурированию ОС.
Наиболее общим подходом к структуризации операционной системы является разделение всех ее модулей на две группы:
- ядро - модули, выполняющие основные функции ОС;
- модули, выполняющие вспомогательные функции ОС.
Модули ядра выполняют такие базовые функции ОС, как управление процессами, памятью, устройствами ввода-вывода и т.п. Ядро составляет сердцевину операционной системы, без него ОС полностью несостоятельна и не сможет выполнить ни одну из своих функций.
В состав ядра входят функции, решающие внутрисистемные задачи организации вычислительного процесса, такие как переключение контекстов, загрузка / выгрузка страниц, обработка прерываний. Эти функции недоступны для приложений. Другой класс функций ядра служит для поддержки приложений, создавая для них так называемое прикладную программную среду. Приложения могут обращаться к ядру с запросами - системными вызовами - для выполнения тех или иных действий, например для открытия и чтения файла, вывода графической информации на дисплей, получения системного времени и т.д. Функции ядра, которые могут вызываться приложениями, образуют интерфейс прикладного программирования - API.
Функции, выполняемые модулями ядра, являются наиболее часто используемыми функциями операционной системы, поэтому скорость их выполнения определяет производительность всей системы в целом. Для обеспечения высокой скорости работы ОС все модули ядра или большая их часть постоянно находятся в оперативной памяти, то есть являются резидентными.
Поскольку некоторые компоненты ОС оформлены как обычные приложения, то есть в виде исполняемых модулей стандартного для данной ОС формата, то часто бывает очень сложно провести четкую грань между операционной системой и приложениями. Решение о том, есть ли какая-нибудь программа частью ОС или нет, принимает производитель ОС. Среди многих факторов, способных повлиять на это решение, важны перспективы того, будет программа иметь массовый спрос у потенциальных пользователей данной ОС.
Как и обычные приложения, для выполнения своих задач утилиты, обрабатывающие программы и библиотеки ОС, обращаются к функциям ядра с помощью системных вызовов. Разделение операционной системы на ядро и модули-приложения обеспечивает легкую расширяемость ОС. Чтобы добавить новую высокоуровневую функцию, достаточно разработать новое применение, и при этом не нужно модифицировать главные функции, образующие ядро системы.
Модули ОС, оформленные в виде утилит, системных обрабатывающих программ и библиотек, обычно загружаются в оперативную память только на время выполнения своих функций, то есть являются транзитными.
Постоянно в оперативной памяти располагаются только самые необходимые коды ОС, составляющие ее ядро. Такая организация ОС экономит оперативную память компьютера.
Важным свойством архитектуры ОС, основанной на ядре, является возможность защиты кода и данных операционной системы за счет выполнения функций ядра в привилегированном режиме.
2. Характеристика базовых функций операционных систем персональных компьютеров
К базовым функциям ОС персональных компьютеров относятся: распределение ресурсов вычислительной системы, ввод / вывод информации и обмен данными между различными компонентами системы, диагностика неисправностей, планирование использования ресурсов системы [4].