Операционная система (ОС) — это программа, которая после первоначальной загрузки в компьютер программой загрузки управляет всеми другими прикладными программами на компьютере. Прикладные программы используют операционную систему, отправляя запросы на услуги через определенный интерфейс прикладной программы ( API ). Кроме того, пользователи могут напрямую взаимодействовать с операционной системой через пользовательский интерфейс, такой как интерфейс командной строки (CLI) или графический пользовательский интерфейс (GUI).
Зачем использовать операционную систему?
Операционная система приносит мощные преимущества компьютерному программному обеспечению и разработке программного обеспечения. Без операционной системы каждое приложение должно было бы включать свой собственный пользовательский интерфейс, а также комплексный код, необходимый для обработки всех низкоуровневых функций базового компьютера, таких как дисковое хранилище, сетевые интерфейсы и т. д. Учитывая огромный набор доступного базового оборудования, это значительно увеличило бы размер каждого приложения и сделало бы разработку программного обеспечения непрактичной.
Вместо этого многие общие задачи, такие как отправка сетевого пакета или отображение текста на стандартном устройстве вывода, таком как дисплей, могут быть выгружены в системное программное обеспечение, которое служит посредником между приложениями и оборудованием. Системное программное обеспечение обеспечивает последовательный и повторяемый способ взаимодействия приложений с оборудованием без необходимости для приложений знать какие-либо подробности об оборудовании.
Пока каждое приложение получает доступ к тем же ресурсам и службам одинаковым образом, это системное программное обеспечение — операционная система — может обслуживать практически любое количество приложений. Это значительно сокращает время и кодирование, необходимые для разработки и отладки приложения, при этом гарантируя, что пользователи могут контролировать, настраивать и управлять системным оборудованием через общий и понятный интерфейс.
Что такое унифицированное управление конечными точками (UEM)? Полное руководство
- Что также включает в себя:
- 7 основных преимуществ управления мобильными устройствами для бизнеса
- Сравните возможности Office 365 MDM и Intune
- Как успешно внедрить MDM для BYOD
После установки операционная система использует обширную библиотеку драйверов устройств для адаптации служб ОС к конкретной аппаратной среде. Таким образом, каждое приложение может сделать общий вызов к устройству хранения данных, но ОС получает этот вызов и использует соответствующий драйвер для преобразования вызова в действия (команды), необходимые для базового оборудования на этом конкретном компьютере. Сегодня операционная система предоставляет комплексную платформу, которая идентифицирует, настраивает и управляет рядом оборудования, включая процессоры; устройства памяти и управление памятью; чипсеты; хранилища; сетевые подключения; порты связи, такие как Video Graphics Array (VGA), High-Definition Multimedia Interface (HDMI) и Universal Serial Bus (USB); и интерфейсы подсистем, такие как Peripheral Component Interconnect Express (PCIe).
Каковы функции операционной системы?
Операционная система предоставляет три основные возможности: она предлагает пользовательский интерфейс через CLI или GUI; она запускает и управляет выполнением приложений; и она идентифицирует и предоставляет аппаратные ресурсы системы этим приложениям — как правило, через стандартизированный API.
Пользовательский интерфейс. Каждая операционная система требует пользовательского интерфейса, позволяющего пользователям и администраторам взаимодействовать с ОС для настройки, конфигурирования и даже устранения неполадок операционной системы и ее базового оборудования. Доступны два основных типа пользовательского интерфейса: CLI и GUI.
CLI, или окно режима терминала , предоставляет текстовый интерфейс, в котором пользователи используют традиционную клавиатуру для ввода определенных команд, параметров и аргументов, связанных с определенными задачами. GUI, или рабочий стол , предоставляет визуальный интерфейс на основе иконок и символов, в котором пользователи используют жесты, предоставляемые устройствами интерфейса пользователя, такими как сенсорные панели, сенсорные экраны и мыши.
GUI чаще всего используется случайными или конечными пользователями, которые в первую очередь заинтересованы в управлении файлами и приложениями, например, двойным щелчком по значку файла, чтобы открыть файл в его приложении по умолчанию. CLI остается популярным среди продвинутых пользователей и системных администраторов, которым приходится регулярно обрабатывать ряд высокодетализированных и повторяющихся команд, например, создавать и запускать скрипты для настройки новых персональных компьютеров (ПК) для сотрудников.
Управление приложениями. Операционная система управляет запуском и управлением каждым приложением. Обычно она поддерживает ряд поведений, включая разделение времени нескольких процессов или потоков , чтобы различные задачи могли совместно использовать доступное время процессоров; обработку прерываний, которые приложения создают для немедленного привлечения внимания процессора, гарантируя, что достаточно памяти для выполнения приложения и соответствующих ему данных без вмешательства в другие процессы; выполнение обработки ошибок, которая может изящно удалить процессы приложения; и выполнение управления памятью без нарушения работы других приложений или ОС.
Операционная система также может поддерживать API, которые позволяют приложениям использовать функции ОС и оборудования без необходимости знать что-либо о низкоуровневом состоянии ОС или оборудования. Например, API Windows может позволить программе получать ввод с клавиатуры или мыши; создавать элементы GUI, такие как диалоговые окна и кнопки; читать и записывать файлы на устройство хранения; и многое другое. Приложения почти всегда адаптированы для использования операционной системы, на которой приложение должно работать.
Кроме того, операционная система может выполнять следующие функции для приложений:
- В многозадачной операционной системе, где одновременно могут работать несколько программ, ОС определяет, какие приложения должны запускаться в каком порядке и сколько времени должно быть выделено каждому приложению, прежде чем предоставить очередь другому приложению.
- Он обрабатывает ввод/вывод (I/O) с подключенных аппаратных устройств, таких как жесткие диски, принтеры и порты коммутируемого доступа.
- Он отправляет сообщения каждому приложению или интерактивному пользователю (или системному оператору ) о состоянии операции и любых ошибках, которые могли возникнуть.
- Он может разгрузить управление пакетными заданиями, например, печатью, так что инициирующее приложение будет освобождено от этой работы.
- На компьютерах, которые могут обеспечивать параллельную обработку, операционная система может управлять разделением программы таким образом, чтобы она выполнялась на нескольких процессорах одновременно.
Все основные компьютерные платформы (аппаратные и программные) требуют наличия операционной системы, а иногда и включают ее в себя, а операционные системы должны разрабатываться с различными функциями для удовлетворения конкретных потребностей различных форм-факторов.
Управление устройствами. Операционная система отвечает за идентификацию, настройку и предоставление приложениям общего доступа к базовым компьютерным аппаратным устройствам. Поскольку ОС распознает и идентифицирует оборудование, она установит соответствующие драйверы устройств, которые позволят ОС и приложениям, работающим в ОС, использовать устройства без каких-либо специальных знаний об оборудовании или устройствах.
Операционная система отвечает за определение правильного принтера и установку соответствующих драйверов принтера, так что приложению нужно только делать вызовы принтера без необходимости использовать коды или команды, специфичные для этого принтера — это работа операционной системы. Похожая ситуация и для других устройств, таких как порты USB; сетевые порты; графические устройства, такие как графические процессоры (GPU); чипсеты материнских плат; и устройства хранения данных, такие как адаптеры дисков Serial-Attached SCSI (SAS) и диски, отформатированные с помощью подходящей файловой системы.
ОС идентифицирует и настраивает физические и логические устройства для обслуживания и обычно записывает их в стандартизированную структуру, например, реестр Windows. Производители устройств периодически исправляют и обновляют драйверы, и ОС должна обновлять их, чтобы обеспечить наилучшую производительность и безопасность устройства. При замене устройств ОС также устанавливает и настраивает новые драйверы.
Типы и примеры операционных систем
Хотя основные функции операционной системы повсеместны, существует бесчисленное множество операционных систем, обслуживающих широкий спектр оборудования и потребностей пользователей.
Операционная система общего назначения. Операционная система общего назначения представляет собой набор операционных систем, предназначенных для запуска множества приложений на широком спектре оборудования, что позволяет пользователю запускать одно или несколько приложений или задач одновременно. Операционная система общего назначения может быть установлена на многих различных моделях настольных компьютеров и ноутбуков и запускать приложения от систем учета до баз данных, веб-браузеров и игр. Операционные системы общего назначения обычно фокусируются на управлении процессами (потоками) и оборудованием, чтобы гарантировать, что приложения могут надежно совместно использовать широкий спектр имеющегося вычислительного оборудования.
К распространенным операционным системам для настольных компьютеров относятся следующие:
- Windows — флагманская операционная система Microsoft, фактический стандарт для домашних и офисных компьютеров. Представленная в 1985 году, эта ОС на основе графического интерфейса пользователя с тех пор выпускалась во многих версиях. Дружественная пользователю Windows 95 в значительной степени способствовала быстрому развитию персональных компьютеров.
- Mac OS — операционная система для линейки персональных компьютеров и рабочих станций Macintosh компании Apple.
- Unix — многопользовательская операционная система , разработанная для гибкости и адаптивности. Первоначально разработанная в 1970-х годах, Unix была одной из первых операционных систем, написанных на языке C.
- Linux — это Unix-подобная операционная система, которая была разработана для предоставления пользователям ПК бесплатной или недорогой альтернативы. Linux имеет репутацию эффективной и быстродействующей системы.
Мобильная операционная система. Мобильные операционные системы разработаны для удовлетворения уникальных потребностей мобильных вычислительных и коммуникационно-ориентированных устройств, таких как смартфоны и планшеты. Мобильные устройства обычно предлагают ограниченные вычислительные ресурсы по сравнению с традиционными ПК, и ОС должна быть уменьшена в размере и сложности, чтобы минимизировать собственное использование ресурсов, обеспечивая при этом достаточные ресурсы для одного или нескольких приложений, работающих на устройстве. Мобильная российская операционная система, как правило, подчеркивают эффективную производительность, отзывчивость пользователя и пристальное внимание к задачам обработки данных, таким как поддержка потоковой передачи мультимедиа.
Встроенная операционная система. Не все вычислительные устройства являются универсальными. Огромный ассортимент специализированных устройств, включая домашних цифровых помощников, банкоматы (ATM), системы для самолетов, терминалы розничной торговли (POS) и устройства Интернета вещей (IoT), включает компьютеры, которым требуется операционная система. Главное отличие заключается в том, что связанное вычислительное устройство выполняет только одну основную функцию, поэтому ОС сильно урезана и предназначена как для производительности, так и для устойчивости. ОС должна работать быстро, не давать сбоев и корректно обрабатывать все ошибки, чтобы продолжать работать при любых обстоятельствах. В большинстве случаев ОС предоставляется на чипе, который встроен в фактическое устройство. Например, медицинское устройство, используемое в оборудовании для жизнеобеспечения пациента, будет использовать встроенную ОС , которая должна работать надежно, чтобы поддерживать жизнь пациента. Встроенный Linux является одним из примеров встроенной ОС.
Сетевая операционная система. Сетевая операционная система (NOS) — это еще одна специализированная ОС, предназначенная для облегчения связи между устройствами, работающими в локальной сети ( LAN ). NOS предоставляет стек связи, необходимый для понимания сетевых протоколов с целью создания, обмена и разложения сетевых пакетов. Сегодня концепция специализированной NOS в значительной степени устарела, поскольку другие типы ОС в основном обрабатывают сетевую связь. Windows 10 и Windows Server2019, например, включают в себя комплексные сетевые возможности. Концепция NOS по-прежнему используется для некоторых сетевых устройств, таких как маршрутизаторы, коммутаторы и брандмауэры, а производители могут использовать собственные NOS, включая Cisco Internetwork Operating System (IOS), RouterOS и ZyNOS.
Операционная система реального времени. Когда вычислительное устройство должно взаимодействовать с реальным миром в рамках постоянных и повторяющихся временных ограничений, производитель устройства может выбрать операционную систему реального времени ( RTOS ). Например, промышленная система управления может управлять операциями обширного завода или электростанции. Такое предприятие будет выдавать сигналы от множества датчиков, а также отправлять сигналы для управления клапанами, приводами, двигателями и бесчисленным множеством других устройств. В этих ситуациях промышленная система управления должна быстро и предсказуемо реагировать на изменяющиеся условия реального мира — в противном случае может произойти катастрофа. RTOS должна функционировать без буферизации, задержек обработки и других задержек, которые вполне приемлемы в других типах операционных систем. Два примера RTOS включают FreeRTOS и VxWorks.
Различия между типами операционных систем не являются абсолютными, и некоторые операционные системы могут разделять характеристики других. Например, операционные системы общего назначения обычно включают сетевые возможности, имеющиеся в традиционной NOS. Аналогично, встроенная операционная система обычно включает атрибуты RTOS, в то время как мобильная операционная система обычно может запускать многочисленные приложения одновременно, как и другие операционные системы общего назначения.