Андрей Робачевский - Операционная система UNIX
В главе также описан программный интерфейс сетевого доступа. В частности, был рассмотрен пример использования сокетов для межпроцессного взаимодействия не только в рамках одного компьютера, но и в распределенной сетевой инфраструктуре.
Во второй части главы была описана внутренняя архитектура сетевых подсистем в BSD UNIX и UNIX System V. Хотя эти вопросы наиболее интересны разработчикам драйверов и других подсистем ядра, более пристальный взгляд на взаимодействие компонентов операционной системы может помочь и администраторам в решении их проблем, и пользователям в оценке качества работы их систем для уверенного обсуждения этой темы с системным администратором.
Приложение А
Электронный справочник man(1)
Многообразие команд и утилит UNIX, обилие ключей или опций к ним, особенности применения и формат тех или иных системных вызовов и функций могут озадачить неискушенного пользователя. К счастью, в UNIX имеется электронный справочник, позволяющий быстро получить исчерпывающую информацию по интересующей команде или функции, формату файла или типам данных. Воспользоваться этим справочником так же просто, как и любой другой утилитой UNIX. Для этого в командной строке нужно ввести man с названием команды или функции, о которой вы хотели бы получить информацию. Например, введя $ man man, вы узнаете как пользоваться справочником.
Весь справочный материал разбит на разделы, порядок и названия которых различны для разных версий операционной системы. В таблице, приведенной ниже, перечислены традиционные разделы и их названия (чаще всего, это просто номер) для двух основных ветвей UNIX: BSD и System V.
Содержимое раздела BSD UNIX UNIX System V Прикладные утилиты 1 1 Системные вызовы 2 2 Библиотечные функции 3 3 Специальные файлы, драйверы устройств и аппаратное обеспечение 4 7 Форматы различных конфигурационных и системных файлов 5 4 Всякая всячина, например, типы файловых систем, определение типов данных и т.д. 7 5 Административные утилиты 8 1MНекоторые разделы справочника могут иметь подсекции, содержимое которых можно уточнить, прочитав введение к соответствующему разделу. Например, в операционной системе Solaris 2.x для вывода содержания раздела "Библиотечные функции" необходимо задать следующую команду:
$ man -s3 intro
Явное указание раздела понадобится и в том случае, когда по заданному ключевому слову имеются статьи в различных разделах. Например, для слова passwd имеются статьи в разделе 1 (команда passwd(1) для изменения пароля пользователя) и в разделе 4 (формат файла паролей passwd(4)). Просматривая статью, обязательно прочитайте абзац с названием "SEE ALSO" в котором приведены названия статей справочника, имеющие отношение к интересующей вас тематике.
Приложение Б
Дополнительная информация об операционной системе UNIX
Книги
Б. Керниган, P. Пайк. UNIX-универсальная среда программирования.//Пер. с англ. M.: Финансы и статистика, 1992. Прекрасная книга, написанная людьми, принимавшими непосредственное участие в создании этой операционной системы. Книга окажется интересной как для пользователей, так и для программистов и администраторов системы. Несмотря на относительно небольшой объем, книга позволяет достаточно основательно изучить эту операционную систему.
Bach M. The Design of the UNIX Operating System. Englewood Cliffs, NJ: Prentice-Hall, 1986. Долгое время эта книга являлась практически единственным полным описанием внутренней архитектуры UNIX. Хотя материал, представленный в книге, основан на системе UNIX System V Release 2, большинство положений остаются справедливыми и сегодня.
M. Банахан, Э. Раттер. Введение в операционную систему UNIX.//Пер. С англ. M.: Радио и связь, 1986. Одна из немногих книг по UNIX на русском языке. Изданная на английском языке в 1982 году, книга в значительной степени устарела. В основном предназначена тем, кто приступает к использованию UNIX.
P. Готье. Руководство по операционной системе UNIX.//Пер. с англ. M.: Финансы и статистика, 1985. Книга во многом копирует электронный справочник man, хотя и содержит ряд любопытных примеров по использованию тех или иных утилит. В книге также содержится ряд практических рекомендаций для системного администратора. Несомненным достоинством является то, что книга написана на русском языке.
Leffler S., McKusick M.K., Karels M.J., Quarterman J.S. The Design and Implementation of the 4.3BSD UNIX Operating System. Reading, MA: 1989. Книга написана группой разработчиков этой версии операционной системы. В книге детально обсуждается внутренняя архитектура ядра и принцип работы системы UNIX. Прекрасная возможность получить информацию о UNIX "из первых уст".
Vahalia, U. UNIX Internals: the New Frontiers. UpperSaddle River, NJ: Prentice Hall, 1996. В книге сравниваются принципы организации и функционирования нескольких современных версий UNIX (SVR4.X, Solaris, Digital UNIX, 4.4BSD, Mach и OSF/1). В книге нашли свое отражение последние достижения в разработке операционных систем семейства UNIX.
Pate S.D. UNIX Internals. A Practical Approach. Addison Wesley Longman Ltd., 1996. Книга написана сотрудником компании Santa Cruz Operation, Inc. и посвящена архитектуре ядра операционной системы UNIX. Хотя весь материал основан на версии UNIX SCO OpenServer, большая часть положений справедлива и для других современных систем. Большое количество иллюстраций и практических примеров позволяет проникнуть в тайны ядра UNIX.
Stevens, W.R. Advanced Programming in the UNIX Environment. Reading, MA:Addison-Wesley, 1992. Наиболее полное описание программного интерфейса операционной системы UNIX. Книга содержит много примеров и служит прекрасным пособием разработчикам программного обеспечения для этой операционной системы.
Stevens, W.R. UNIX Network Programming. Englewood Cliffs, NJ: Prentice Hall, 1990. Прекрасное руководство для программистов в области сетевых технологий. Многочисленные примеры позволяют проверить положения книги на практике.
Информация в Internet
Официальный сервер UNIX (http://www.rdg.opengroup.org/unix/). В этом разделе сервера группы The Open Group, собственностью которой является зарегистрированный знак UNIX, вы можете ознакомиться с различными спецификациями, имеющими отношение к этому семейству операционных систем. В частности, здесь вам предложат программное обеспечение Report, позволяющее проверить насколько тексты написанной вами программы удовлетворяют стандартам и требованиям переносимости.
Компания Santa Cruz Operation, Inc. (http://www.sco.com/). На сервере этой фирмы-производителя коммерческих версий операционной системы UNIX — SCO OpenServer SCO и UnixWare, вы можете ознакомиться с каталогом предлагаемого программного обеспечения, новинками и предложениями от SCO. Здесь же вы узнаете, как получить бесплатную версию систем OpenServer и UnixWare для некоммерческого использования. Обширный раздел сервера посвящен разработчикам программного обеспечения.
Сервер компании Silicon Graphics, Inc. (http://www.sgi.com/). Если вы счастливый обладатель рабочей станции, сервера или суперкомпьютера фирмы Silicon Graphics, вы наверняка частый гость на этом сервере. Здесь представлен материал о собственной версии операционной системы UNIX, получившей название IRIX. Сегодня эта операционная система работает на компьютерах Silicon Graphics и считается одной из самых мощных.
Информационный центр DIGITAL UNIX (http://www.unix.digital.com/). Этот сервер компании Digital Equipment Corporation посвящен операционной системе DIGITAL UNIX, предназначенной для рабочих станций и серверов на базе процессоров Alpha. Здесь вы ознакомитесь с новейшими достижениями компании, найдете полезный материал по операционной системе DIGITAL UNIX, а также сможете скопировать ряд программных продуктов.
Программное обеспечение для серверов RS/6000 (http://www.rs6000.ibm.com/software/). Крупнейший производитель компьютеров и программного обеспечения к ним, фирма IBM на этом сервере представляет собственную версию операционной системы UNIX — AIX 4.x и разнообразные приложения, разработанные для нее.
Сервер компании Berkeley Software Design, Inc. (http://www.bsdi.com/). Эта компания является поставщиком операционной системы BSDI, изначально разработанной в Калифорнийском университете Беркли. На этом сервере вам предложат новинки программного обеспечения, часть из которых можно скопировать на собственный сервер. Здесь вы имеете возможность лучше ознакомиться с этой версией UNIX, по праву являющейся одним из лидеров в области сетевых операционных систем.