Искусство программирования для Unix
Шрифт:
Дизайн обложки — композиция двух изображений из оригинальных Дзэн-ком иксов (Zen Comics) Иоанны Саладжан (Ioanna Salajan). Он был адаптирован и раскрашен в основном Джерри Вотта (Jerry Votta) при участии автора.
Сноски
1 Оценка его работы со ссылками на Web-всрсии значимых частей находится на странице "Записки о Кристофере Александре" <http: //http: //www.math.utsa.edu/~salingar/Chris.text.html>.
2
3 Джим Геттис, один из архитекторов системы X (и человек, внесший свой вклад в данную книгу), в статье "The Two-Edged Sword" [29] глубоко размышляет о том, как стиль невмешательства X может продуктивно развиваться дальше. В этом эссе представлен ряд специфических рекомендаций и выражен характерный для Unix образ мышления.
4 Другие операционной системы в общем случае копируют или клонируют Unix-реализации TCP/IP. Их ошибка заключается в том, что они обычно не заимствуют имеющиеся в Unix прочные традиции экспертной оценки, примерами которых являются такие документы, как RFC 1025 (TCP and IP Bake Off).
5 Первоначально это было сказано Стефаном С. Джонсоном (Stephen С. Johnson), который, вероятно, более известен как автор программы уасс, об оснастке TSO в операционной системе IBM MVS.
6 Здесь представлено оригинальное дополнение Пайка (см. книгу Брукса, стр. 102). Ссылка указывает на раннее издание книги "The Mythical Man-Month" [8]: "Покажите мне ваши блок-схемы, скройте таблицы, и я буду озадачен, покажите мне ваши таблицы и, скорее всего, блок-схемы мне не потребуются; они будут очевидны".
7 Джонатан Постел (Jonathan Postel) был первым редактором серии Internet-стандартов RFC и одним из главных архитекторов Internet. Памятная страница <http://vjww.postel.org/postel.html> поддерживается Центром Постела по экспериментальным сетям (Postel Center for Experimental Networking).
Полная цитата такова: "Нам следует забывать о небольшой эффективности, например, в 97% случаев: преждевременная оптимизация — корень всех зол". Сам Кнутт приписывал эту цитату Ч. Хоару (Charles Antony Richard Hoare).
– Прм. авт.
Одним замечательным примером является статья Батлера Лампсона (Butler Lampson) "Рекомендации по проектированию компьютерных систем" (Hints for Computer System Design) [43], которые были обнаружены позднее в процессе подготовки данной книги. В статье не только выражены многие афоризмы Unix в формах, которые были открыты независимо, по и используется множество тех же ключевых фраз для их иллюстрации.
8 Кен Томпсон напомнил автору, что сегодняшние сотовые телефоны обладают большим объемом оперативной памяти, чем совокупный объем оперативной памяти и дискового пространства PDP-7. Большой диск в то время имел емкость меньше одного мегабайта.
9 Существует Wcb-вереия списка часто задаваемых вопросов (FAQ) по PDP-компьютсрам <http://vmw.faqs ,org/faqs/dec-faq/pdp8/>, в котором по-другому трактуется роль компьютера PDP-7 в истории.
10 Руководства по седьмой
версии доступны на страницеindex.html.11 UUCP считалась великолепным средством, когда быстрый модем обеспечивал скорость 300 бод.
12 Серия PS/2, тем не менее, действительно оставила свой след в последующих компьютерах IBM PC — в этой серии мышь стала стандартным периферийным устройством. Именно поэтому разъем для подключения мыши на задней напели системного блока называется "PS/2-портом".
13 Игра "SPACEWAR" никак не была связана с игрой Кена Томпсона "Space Travel", кроме того, что обе они привлекали поклонников научно-технической фантастики.
14 Современные и исторические графики рыночных долей Wcb-еерверов доступны в ежемесячном обзоре "Netcraft Web Server Survey" по адресу chttp: / /www. net craft. com/survey/>.
MacOS фактически состоит из двух частных уровней (перенесенные приложения OpenStep и классические GUI-интерфейсы Macintosh) поверх Unix-основы с открытым исходным кодом (проект Darwin).
15 Для читателей, не имеющих опыта работы в Unix: канал представляет собой способ соединения вывода одной программы с вводом другой. Возможные варианты применения данной идеи для обеспечения взаимодействия программ рассматриваются в главе 7.
16 Периодические прерывания от аппаратного таймера (periodic clock interrupt) необходимы в виде-тактовых импульсов для системы разделения времени. В каждом такте таймер сообщает системе о том, что можно переключиться на другую задачу, определяя длительность кванта времени. В настоящее время Unix-системы настроены на 60 или 100 тактовых импульсов в секунду.
17 Для обозначения этого подхода в настоящее время используется новомодное понятие система безо паашсти па основе ролей (role-based security).
18 Данная проблема весьма серьезно рассматривалась в корпорации Microsoft в ходе перестройки службы Hotmail. См. [7|.
19 Более подробный анализ технических характеристик различных операционных систем приведен на Web-сайтс OSData <http: / /www. osdatа. com/ >.
20 За исключением системы Multics, которая в основном оказывала влияние в период между опубликованием се спецификаций в 1965 году и ее фактической поставкой в 1969 году.
21 1° Возвращаясь к вопросу о части технологии Amiga, IBM предоставила компании Commodore лицензию на свой язык сценариев REXX. Данная сделка описана на страницеos2news/OS2Warp. html.
22 В качестве примера рекомендуются сайты OS Voice <http://www.os2voice.org/> и OS/2 BBS.COM <http: / /www. os2bbs. com/ >.
23 Возможно. Это подтверждает тот факт, что унифицирующей метафорой для всех операционных систем Microsoft является тезис "потребитель должен быть замкнут".
24 http: //security. tombom. со .uk/shatter .html
25 Корпорация Microsoft в марте 2003 года фактически публично признала, что NT-безопасность невозможна. См. Web-страпицуcom/technet/treeview/default .asp?url=/ technet/security/bulletin/MS03 -010.asp.