Оболочка операционной системы

(перенаправлено с «Командная оболочка»)

Оболо́чка операцио́нной систе́мы (от англ. shell «оболочка») — программа, предоставляющая интерфейс для взаимодействия пользователя с функциями системы.

Основная функция операционной системы — исполнять прикладные программы и предоставлять программный интерфейс между программами и аппаратурой — и этого может хватать, если на устройстве работает, например, комплекс сбора данных с датчиков или MP3-плеер. В отличие от подобных специализированных устройств, компьютер общего назначения обязан запускать различные программы по командам пользователя — и ОС принимает эти команды с помощью программы-оболочки.

В общем случае различают оболочки с двумя типами интерфейса для взаимодействия с пользователем: текстовый пользовательский интерфейс (TUI) и графический пользовательский интерфейс (GUI).

Командный интерпретатор

править

Для обеспечения интерфейса командной строки в операционных системах часто используются командные интерпретаторы, которые могут представлять собой самостоятельные языки программирования с собственным синтаксисом и отличительными функциональными возможностями.

В операционные системы MS-DOS и Windows 9x включён командный интерпретатор command.com, в Windows NT включён cmd.exe, начиная с Windows XP (пакет обновления 2) доступен PowerShell, который является встроенным компонентом ОС начиная с Windows 7 и Windows 2008 Server[1].

В UNIX-подобных системах у пользователя есть возможность менять командный интерпретатор, используемый по умолчанию. Из командных оболочек UNIX наиболее популярны bash, csh, ksh, zsh.

Функции

править

Командный интерпретатор исполняет команды своего языка, заданные в командной строке или поступающие из стандартного ввода или указанного файла. Возможность переадресации ввода-вывода, а также исполнения команд из файла предусмотрена в командной строке[1].

В качестве команд интерпретируются вызовы системных или прикладных утилит, а также управляющие конструкции. Кроме того, оболочка отвечает за раскрытие шаблонов имен файлов и за перенаправление и связывание ввода-вывода утилит[1].

В совокупности с набором утилит оболочка представляет собой операционную среду, язык программирования и средство решения как системных, так и некоторых прикладных задач, в особенности автоматизации часто выполняемых последовательностей команд.

Стандартный командный интерпретатор

править

Стандартом POSIX (ISO/IEC 9945) (Том 3. Оболочка и утилиты) определён язык оболочки, включающий конструкции последовательного (перевод строки, точка с запятой), условного (if, case, ||, &&) и циклического (for, for in, while, until) исполнения команд, а также оператор присваивания.

Стандартом также определён режим редактирования вводимых команд, являющийся подмножеством команд стандартного текстового редактора (vi).

Альтернативы

править

В UNIX-подобных системах наиболее распространены такие языки командных интерпретаторов, как bash, sh и ksh, но также применяются альтернативные оболочки zsh, csh и tcsh, отличающиеся синтаксисом управляющих конструкций и поведением переменных[2].

Также отметим, что Microsoft в 2016 году открыла исходный код оболочки PowerShell, и в настоящее время она доступна для Linux, Mac и, естественно, Windows.

Некоторые операционные системы поставляются с интерпретаторами собственных языков командных файлов (такими, как язык командных файлов MS-DOS и Windows, язык REXX в ОС OS/2)

Многие пользователи и разработчики программного обеспечения пользуются для автоматизации часто выполняемых последовательностей команд операционной системы интерпретируемыми языками программирования, например, Perl или Python.

Графическая оболочка

править

Графические оболочки для Windows

править

Последние версии операционной системы Windows используют в качестве своей оболочки интегрированную среду Проводника Windows. Проводник Windows представляет собой визуальную среду управления, включающую в себя Рабочий стол, Меню Пуск, Панель задач, а также функции управления файлами[1]. Ранние версии Windows 3.xx в качестве графической оболочки включают Диспетчер программ. Также существует большое количество альтернативных графических оболочек для Windows.

Оболочки Android

править

Оболочка Android — операционная система на базе Android, которая может не зависит от AOSP, так как является форком и зачастую представляет собой не только изменённую графическую оболочку, но и модифицированные системные компоненты, а также поддержку от разработчика оболочки, которым в большинстве случаев является производитель смартфонов или планшетов.[3]

Прошивки для смартфонов и планшетов, могут создаваться не только на базе системы Android, но на базе его форков, которые в сообществе называют оболочками.

Примечания

править
  1. 1 2 3 4 Гузенко Е.Н., Сурядный А.С. Персональный компьютер. — М.: Астрель, 2011. — С. 61-150. — 544 с. — ISBN 978-5-271-32156-6.
  2. Керниган Б., Пайк. Unix programming environment.
  3. Fire OS. Дата обращения: 10 июля 2020. Архивировано 29 июня 2021 года.

Литература

править
  • Бибарсов М. Р., Бибарсова Г. Ш., Кузьминов Ю. В. «Операционные системы, среды и оболочки: Учебное пособие». Ставрополь: Изд-во СГПИ, 2010. — 120 с.