В книге описывается хороший стиль Unix-программирования, многообразие доступных языков программирования, их преимущества и недостатки, различные IPC-методики и инструменты разработки. Автор анализирует философию Unix, культуру и основные традиции сформированного вокруг нее сообщества. В книге объясняются наилучшие практические приемы проектирования и разработки программ в Unix. Вместе с тем описанные в книге модели и принципы будут во многом полезны и Windows-разработчикам. Особо рассматриваются стили пользовательских интерфейсов Unix- программ и инструменты для их разработки. Отдельная глава посвящена описанию принципов и инструментов для создания хорошей документации.
Предисловие 19 I Контекст 27 1 Философские вопросы 29 2 История: слияние двух культур 55 3 Контраст: сравнение философии Unix и других операционных систем 79 II Проектирование 109 4 Модульность: четкость и простота 111 5 Текстовое представление данных: ясные протоколы лежат в основе хорошей практики 135 6 Прозрачность: да будет свет 163 7 Мультипрограммирование: разделение процессов для разделения функций 187 8 Мини-языки: поиск выразительной нотации 215 9 Генерация кода: повышение уровня спецификации 245 10 Конфигурация: правильное начало 261 11 Интерфейсы: модели проектирования пользовательских интерфейсов в среде Unix 285 12 Оптимизация 321 13 Сложность: просто, как только возможно, но не проще 329 III Реализация 353 14 Языки программирования: C или не C? 355 15 Инструментальные средства: тактические приемы разработчика 383 16 Повторное использование кода: не изобретая колесо 409 IV Сообщество 425 17 Переносимость: переносимость программ и соблюдение стандартов 427 18 Документация: объяснение кода в Web-сообществе 451 19 Открытый исходный код: программирование в новом Unix-сообществе 471 20 Будущее: опасности и перспективы 495 A Глоссарий аббревиатур 513 Б Список литературы 517 В Персональный вклад 525 Г Корни без корней: Unix-коаны Мастера Фу 529 Предметный указатель 536
Рассматривается широкий круг вопросов функционирования операционной системы UNIX, в том числе: базовые вопросы построения операционной системы, принципы организации файловой системы UNIX, учетные записи пользователей, установка, запуск и функционирование популярных операционных систем Linux, FreeBSD и Solaris, взаимодействие пользователя с операционной системой и командные оболочки.
Данная книга предназначена для системных администраторов, обслуживающих компьютеры, на которых установлена операционная система UNIX. Предполагается, что читатель уже знаком с основными функциями и особенностями этой ОС.