Управление процессами, задачами и оборудованием компьютера посредством функций операционной системы — это использование функционального набора операционной системы для управления работой компьютерного оборудования.
Сущность и функции операционной системы
Операционная система – это комплект программ, которые служат интерфейсом между модулями вычислительных систем и прикладными программными приложениями, а также управляют компьютерным оборудованием и процессами вычислений, эффективным распределением вычислительных мощностей среди процессов вычислений.
В логической структурной организации типовых вычислительных систем операционная система располагается между компьютерными модулями с их микроскопической архитектурой, использованием машинных команд и набором собственного, внутреннего микропрограммного обеспечения и набором прикладных программных продуктов. Проектировщикам программного обеспечения операционная система даёт возможность абстрагирования от мелких деталей выполнения и работы модулей, выделяя им требуемый комплекс функций. Практически во всех вычислительных системах операционная система считается главным, самым существенным компонентом системного программного обеспечения.
Главными функциями, выполняемыми операционной системой, являются следующие:
- Осуществление по запросам программных приложений элементарных операций низкого уровня, являющихся общими для практически всех приложений и подпрограмм, а именно, операции ввода и вывода информации, пуск и прекращение работы других программ, предоставление и очистка памяти и так далее.
- Управление загрузкой приложений в оперативную память и их исполнением.
- Организация стандартного доступа к внешним устройствам.
- Выполнение управления оперативной памятью, то есть подразделение её среди процессов, формирование виртуальной памяти.
- Осуществление управления доступом информационным данным на различных носителях с независимым питанием, работающих в различных файловых системах.
- Организация интерфейса пользователя.
- Управление сетевыми операциями, работа со стеком сетевых протоколов.
Операционные системы могут выполнять и ряд дополнительных функций:
- Организация параллельного или псевдопараллельного исполнения приложений.
- Организация оптимального распределения ресурсных возможностей вычислительных систем среди процессов.
- Управление уровнями доступа разных процессов к ресурсным возможностям.
- Формирование надёжной защиты вычислительных процессов, основанной на подразделении доступа к ресурсным возможностям.
- Организация взаимодействия между процессами.
- Организация защиты данных пользователей.
- Организация многопользовательского режима работы с различными правами доступа.
Задачи операционной системы по управлению модулями компьютера и файлами
Самыми важными задачами управления компьютерным оборудованием, осуществляемыми операционной системой, являются следующие:
- Параллельное функционирование модулей ввода, вывода информации и процессора.
- Организация кэширования данных и выполнение согласования скоростей информационного обмена.
- Разбиение модулей и информационных данных среди процессов.
- Организация удобной работы логического интерфейса между модулями и оставшейся частью системы.
- Организация поддержки различных устройств с обеспечением возможности просто их добавить.
- Режим динамической загрузки и выгрузки драйверов.
- Обеспечение поддержки набора файловых систем.
Организация оборудования ввода-вывода
Модули, предназначенные для ввода и вывода информации, подразделяются на следующие типы:
- Модули, ориентированные на работу с блоками.
- Модули, ориентированные на работу с байтами.
Ориентированное на работу с блоками оборудование сохраняет данные в блоках, имеющих фиксированный размер и свой уникальный адрес. Примером такого устройства может служить жёсткий диск. Модули, работающие с байтами, не имеют адресации и не обеспечивают возможность поиска информации. Они только могут генерировать или потреблять байтовую очерёдность. В качестве примера таких устройств можно привести сетевые адаптеры, терминалы и так далее.
Главным принципом построения программного обеспечения ввода и вывода информации является разбиение его на отдельные уровни. При этом нижние уровни должны обеспечивать защиту особенностей своего оборудования от влияния верхних уровней, которые призваны только осуществлять удобное интерфейсное обслуживание пользователей.
Ещё одним базовым вопросом в организации программ информационного ввода и вывода считается обработка ошибок. Общеизвестно, что обработку ошибок нужно осуществлять максимально близко к оборудованию. Когда контроллер находит ошибку чтения, то ему необходимо сделать попытку её коррекции. Если эта попытка окажется неудачной, то дальше коррекцией ошибки занимается драйвер модуля. Часто ошибки пропадают при повторном выполнении операции ввода или вывода информации. Но когда ликвидацию ошибки не удалось выполнить на нижнем уровне, идёт сообщение об ошибке на верхний уровень.
Программное обеспечение ввода и вывода информации делится на следующие уровни:
- Уровень обработки прерываний.
- Уровень драйверов оборудования.
- Уровень независимого от оборудования слоя операционной системы.
- Пользовательский уровень программного обеспечения.
В программном наборе операционной системы лишь драйвера оборудования имеют информацию о фактических свойствах какого-либо модуля.
Значительная часть программного обеспечения ввода и вывода информации выполнена как независимая от оборудования. Конкретная грань между драйверами и независимыми от оборудования приложениями назначается системой, поскольку отдельные функции, которые возможно исполнить независимой методикой, по факту реализуются в формате драйверов для увеличения эффективности или по иным причинам.