os2016-22-02-dist
.pdfПринципы разработки интерфейса
1.Простота (легче понять и реализовать без ошибок)
2.Полнота (выполнять все, что необходимо)
3.Эффективность (представляйте
стоимость реализации)
21
Пользовательские интерфейсы оболочек ОС
Оболочка операционной системы –
интерпретатор команд операционной системы, обеспечивающий интерфейс для взаимодействия пользователя с функциями системы
Естественноинтуитивный
Графический интерфейс интерфейс
Текстовый
интерфейс
22
Текстовый интерфейс (интерфейс командной строки)
•Интерфейс командной строки — разновидность текстового интерфейса человека и компьютера, в котором инструкции компьютеру даются только путём ввода с клавиатуры текстовых строк (команд).
•ИКС также известен под названием консоль.
•Формат вывода информации в интерфейсе командной строки не регламентируется
•Обычно это также простой текстовый вывод, но может быть и графическим, звуковым и т.д.
23
Причины популярности ИКС
1.В современном программном обеспечении имеется большое число команд, многие из которых нужны крайне редко. Поэтому даже в некоторых программах с графическим интерфейсом применяется командная строка: набор команды (при условии, что пользователь знает эту команду) осуществляется гораздо быстрее, чем, например, навигация по меню.
2.Естественное расширение интерфейса командной строки
— пакетный интерфейс. Его суть в том, что в файл обычного текстового формата записывается последовательность команд, после чего этот файл можно выполнить в программе, что имеет такой же эффект, как если бы эти команды были по очереди введены в
командную строку
24
Функции командных интерпретаторов
•Оболочка исполняет команды своего языка, заданные в командной строке или поступающие из стандартного ввода или указанного файла
•В качестве команд интерпретируются вызовы системных или прикладных утилит, а также управляющие конструкции. Кроме того, оболочка отвечает за раскрытие шаблонов имен файлов и за перенаправление и связывание ввода-вывода утилит
•В совокупности с набором утилит, оболочка представляет собой операционную среду, полноценный язык программирования и мощное средство решения как системных, так и некоторых прикладных задач, в особенности, автоматизации часто выполняемых последовательностей команд
•Как правило, у пользователя есть возможность менять командный интерпретатор, используемый по умолчанию
25
Примеры командных интерпретаторов
•В большом семействе командных оболочек Unix популярны:
•C-shell от Bill Joy (csh)
•(Steve) Bourne shell (sh)
•(David) Korn shell (ksh)
•GNU Bourne-Again shell (bash)
•Запуск оболочек в Unix:
•init; gettty; /bin/login
•/bin/csh
26
Примеры командных интерпретаторов
•cmd.exe – название интерпретатора командной строки операционной системы В качестве интерпретатора командной строки, cmd имеет два режима работы
•интерактивный, когда пользователь вводит с клавиатуры команды, которые немедленно выполняются.
•пакетный, когда cmd выполняет заранее определённую последовательность команд, сохранённых в файлах с расширением .bat
•Функции аналогичны командным интерпретаторам Unix-совместимых операционных систем, с тем отличием, что cmd.exe имеет более ограниченный набор возможностей.
27
Примеры командных интерпретаторов
•SSH-клиенты и SSH-серверы доступны для большинства сетевых операционных систем.
•SSH – сетевой протокол прикладного уровня, позволяющий производить удалённое управление операционной системой и туннелирование TCP-соединений (например, для передачи файлов). Схож по функциональности с протоколами Telnet и rlogin, но, в отличие от них, шифрует весь трафик, включая и передаваемые пароли. SSH допускает выбор различных алгоритмов шифрования.
Язык командных интерпретаторов
•Командный язык – совокупность лексических, синтаксических и семантических правил, которые позволяют интерактивным пользователям в лаконичной форме выражать запросы к ОС на выполнение некоторого задания
•Язык управления заданиями – используется на стадии формирования задания (обычно пакетного). Операторы языка отличаются большей степенью универсальности и допускают спецификацию дополнительных ключевых и позиционных параметров (атрибуты внешних процессов и объектов и т.п.)
•Характеризуется:
•использованием в качестве основного входного языка диалоговых систем
•развитой системой умолчаний
•наличием специальных возможностей разработки и отладки программ в диалоговом режиме
•интерпретационной техникой обработки командных операторов
•и даже средствами редактирования (до 40% времени)
•Стандартом ISO/IEC 9945 (Том 3. Оболочка и утилиты) определен:
•Язык оболочки, включающий конструкции последовательного (перевод строки, точка с запятой), условного («if», «case», «||», «&&») и циклического («for», «for in», «while», «until») исполнения команд, а также оператор присваивания
•Режим редактирования вводимых команд, являющийся подмножеством команд стандартного текстового редактора («vi»)
30