Математика | ||||
Беляков М. И., Рабовер Ю. И., Фридман А. Л. 343 Мобильная операционная система: Справочник. - М.; Радио и связь, 1991.- 208с. ISBN 5-256-00581-2 Описываются пользовательские интерфейсы UNIX-подобной мобильной операционной системы. Рассматриваются функции, образующие интерфейс прикладных программ с системой, командный язык и основной набор команд, составляющие внешний интерфейс пользователя. Материал максимально приближен к наиболее авторитетным проектам стандартов на интерфейсы UNIX, которые реализуются в последних версиях системы. Для системных и прикладных программистов. | ||||
ПРЕДИСЛОВИЕ Принципиальная новизна мобильной операционной системы UNIX заключалась в возможности переноса операционной системы и дополняющих ее системных программных средств на различные ЭВМ и тем самым в создании единой среды программирования и человеко-машинного взаимодействия. Развитие системы привело к появлению разнообразных и в чем-то несовместимых между собой версий и реализаций. В конечном итоге обозначилась проблема выработки единых интерфейсов для всех версий системы. Начиная с 1984г. делались попытки стандартизовать пользовательские интерфейсы системы и язык Си, на котором система в основном написана. К настоящему моменту практически завершены работы по стандартизации языка Си [1]. Выпущена окончательная версия проекта стандарта POSIX на общие функции программного интерфейса [2]. Вышел первый (достаточно сырой) документ, относящийся к командному интерфейсу в рамках стандарта POSIX [3]. Материалы POSIX разрабатываются под эгидой ассоциации IEEE, считаются документами американской (ANSI) и международной (ISO) организаций стандартов и признаются разработчиками реализаций и спецификаций UNIX-совместимых систем, в частности фирмой AT&T, группой X/OPEN и ассоциацией OSF. Готовя справочник по мобильной операционной системе, можно пойти разными путями. Первый путь - дать описание интерфейсов одной какой-либо версии системы. Пользователей этой версии такой вариант устроил бы. Неясно только, какую версию выбрать. Имеют хождение несколько версий системы: BSD4.2 и 4.3 для ЭВМ типа VAX, BSD2.9 для ЭВМ типа PDP и Professional, Amdal для ЕС ЭВМ, XENIX для ЭВМ типа IBM PC, которые довольно сильно отличаются друг от друга. Второй путь -выбрать отечественную версию UNIX, например ДЕМОС [4], ИНМОС [5] или МОС [6]. Но ситуация с ними такая же, как и с их вышеназванными прототипами. Третий путь - описать общую часть всех версий. Это вряд ли удовлетворит пользователей конкретной версии, хотя и расширит круг читателей книги. И наконец, четвертый путь - изложить материал, который вошел а проекты стандартов на пользовательские интерфейсы системы и который с близкой к единице вероятностью войдет в окончательный стандарт. Поскольку стандарты POSIX признаются всеми, целесообразнее ориентироваться на них. Уже появляются реализации системы, например UNIX System V.4 [7], с пользовательскими интерфейсами, удовлетворяющими POSIX В самое ближайшее время реализация интерфейсов POSIX станет общей частью различных версий системы. Данный справочник отражает четвертый путь - он основывается на материалах PQSIX. Рассматриваются два важнейших и устоявшихся на сегодняшний день интерфейса: программный интерфейс и командный интерфейс. Программный интерфейс представляет архитектуру системы с точки зрения прикладных программ, командный интерфейс - с точки зрения пользователя, работающего за терминалом. В описании воплощена концепция полностью мобильного интерфейса пользователя и пользовательских программ с операционной системой. Этот интерфейс не связан, вообще говоря, с UNIX и может быть внедрен в любую систему в качестве одного из предлагаемых пользователю интерфейсов. В первой главе приводятся сведения, общие для программного и командного интерфейсов. В частности, дается терминология по UNIX-подобным операционным системам, относящаяся к взаимодействию пользователя и программ с мобильной средой и опирающаяся на терминологию, принятую в русскоязычных версиях UNIX. Справочник рассчитан па специалистов, знакомых с UNIX; для первоначального знакомства с системой можно рекомендовать ряд книг, вышедших в последнее время [8-И]. Вторая глава посвящена программному интерфейсу и соответствует материалам стандарта языка Си [1] и комитета POSIX P1003.1 [2]. Поскольку материал [2] объявлен окончательной версией проекта стандарта ISO, есть все основания полагать, что рассмотренные в главе функции составят общую часть мобильного интерфейса прикладных программ с системой. Разработчики переносимых программ должны ориентироваться на это описание. Третья глава посвящена командному языку. За основу взят материал комитета POSIX P1003.2 [3]. Поскольку проект стандарта командного интерфейса, в отличие от стандарта программного интерфейса, далек от окончательной редакции, в этой главе излагается наиболее устоявшийся вариант командного языка. Для сравнения в приложении приведен список отличий предлагаемого варианта языка от широко распространенного интерпретатора Bourne shell. В четвертой главе описывается базовый набор команд системы. Материалы этой главы в основном соответствуют материалам комитета POSIX P1003.2 [3]. Ввиду отмеченных выше недостатков этого проекта в ряде команд авторы использовали материалы группы X/OPEN [12], выбрав то, что, на их взгляд, с большей вероятностью войдет в окончательный стандарт. Из-за этих же соображений несколько команд, присутствующих в POSIX, не были включены в настоящий справочник. Следует отметить, что данная книга не только может служить справочным руководством по проектам стандартов, но и представляет практическую ценность для пользователей различных операционных систем. Описываемый в книге интерфейс реализуется как в операционных системах, совместимых с UNIX {уже упоминавшаяся System V.4, Ultrk 3.0 [9], XENIX System V [14]), так и в системах, построенных на других концепциях (например, VMS [13]). В Советском Союзе также ведутся работы по реализации этих интерфейсов. Можно ожидать, что в скором времени все большее число подобных реализаций будет доступно отечественным программистам. СОДЕРЖАНИЕ ПРЕДИСЛОВИЕ............................................................................................................................ 3 Глава 1. ОСНОВНЫЕ ПОНЯТИЯ.......................................................................................................... 5 1.1. Обозначения..................................................„...................................................................... 5 1.2. Терминология..............................................................................................,........................ 5 1.3. Среда процесса..................................................................................................................... 10 1.4. Системные параметры.................................................................................................... 11 1.5. Регулярные выражения.................................................................................................. 13 Глава 2. ПРОГРАММНЫЙ ИНТЕРФЕЙС........................................................................................ 14 2.1. Предварительные сведения.......................................................................................... 14 2.2. Арифметические и символьные вычисления................................................... 17 2.3. Жизненный цикл процесса.......................................................................................... 32 2.4. Сигнальный механизм...........................................................................................;........ 43 i : 2.5. Многопользовательская защита................................................................................ 50 i | 2.6. Файловая система............................................................................................................... 58 ] 2.7. Базовый ввод-вывод......................................................................................................... 67 : 2.8. Стандартный буферизованный ввод-вывод....................................................... 80 . 2.9. Терминальный интерфейс............................................................................................ 94 2.30. Обработка времени............................................................................................................ 107 2.11. Конфигурация системы.................................................................................................. 113 ,ПшваЗ. КОМАНДНЫЙ ЯЗЫК................................................................................................................ 117 3.1. Введение................................................................................................................................... 117 3.2. Элементы языка shell........................................................................................................ 118 3.3. Грамматика языка shell................................................................................................... 124 3.4. Операторы языка shell..................................................................................................... 227 3.5. Обработка сигналов........................................................................................................... 132 3.6. Управление заданиями................................................................................................... 132 3.7. Встроенные команды.............................................................„........................................ 132 3.8. Внешние атрибуты при выполнении shell........................................................... 133 Глава 4. ОСНОВНОЙ НАБОР КОМАНД............................................................................................ 133 4.1. Предварительные сведения.......................................................................................... 133 4.2. Управление файлами....................................................................................................... 135 4.3. Обработка текстовых файлов...................................................................................... 148 4.4. Управление процессами................................................................................................. 167 4.5. Информационные команды..................................................—................................. 176 4.6. Построение командных файлов................................................................................ 182 4.7. Поддержка систем программирования................................................................. 188 ПРИЛОЖЕНИЕ. ОТЛИЧИЯ ИНТЕРПРЕТАТОРА КОМАНД ОТ ИНТЕРПРЕТАТОРА Bourne Shell..................................................................................................................................... 201 АЛФАВИТНЫЙ УКАЗАТЕЛЬ ФУНКЦИЙ И КОМАНД.......................................................... 203 Цена: 75руб. |
||||