ЛитВек: бестселлеры недели
Бестселлер - Борис Акунин - Аристономия - читать в ЛитвекБестселлер - Бенджамин Грэхем - Разумный инвестор  - читать в ЛитвекБестселлер - Евгений Германович Водолазкин - Лавр - читать в ЛитвекБестселлер - Келли Макгонигал - Сила воли. Как развить и укрепить - читать в ЛитвекБестселлер - Борис Александрович Алмазов - Атаман Ермак со товарищи - читать в ЛитвекБестселлер - Мичио Каку - Физика невозможного - читать в ЛитвекБестселлер - Джеймс С. А. Кори - Пробуждение Левиафана - читать в ЛитвекБестселлер - Мэрфи Джон Дж - Технический анализ фьючерсных рынков: Теория и практика - читать в Литвек
Литвек - электронная библиотека >> Эрик Стивен Реймонд >> Программирование: прочее и др. >> Искусство программирования для Unix >> страница 206
обращаются к переменной EDITOR. Это пережиток того времени, когда пользователи имели различные настройки для строковых и визуальных редакторов.

(обратно)

100

См. стандарты GNU-программирования на странице <http://www.gnu.org/prep/standards.html>.

(обратно)

101

Файл .xinitrc является аналогом каталога автозагрузки в Windows и других операционных системах.

(обратно)

102

Диспетчер окон (window manager) поддерживает связи между окнами на экране и запущенными заданиями. Диспетчер окон управляет такими функциями, как расположение, отображение заголовков, свертывание, развертывание, перемещение, изменение размеров и затенение окон.

(обратно)

103

Такой взгляд на проблему характерен для нетехнического конечного пользователя.

(обратно)

104

Исходные коды данной программы и других конвертеров с подобными интерфейсами доступны на странице <http://ww.cdrom.com/pub/png>.

(обратно)

105

Управляющая программа (harness programm) представляет собой упаковщик, предназначенный для того, чтобы предоставлять вызываемым им программам доступ к некоторому специальному ресурсу. Данный термин часто употребляется при характеристике средств тестирования, которые предоставляют тестовые нагрузки и (часто) примеры корректного вывода для проверки фактического вывода тестируемых программ.

(обратно)

106

СтраницаScript-Fu <http://www.xcf.Berkeley.edu/~gimp/script-fu/script-fu.html>.

(обратно)

107

Если в системе поддерживаются подсвечиваемые всплывающие окна, которые "мало вторгаются" между пользователем и приложением, используйте их.

(обратно)

108

Для читателей, не знакомых с О-нотацией: она представляет собой способ указания зависимости между средним временем выполнения алгоритма и размерами его входных данных. Алгоритм O(1) выполняется за постоянное время. Алгоритм О(n) выполняется за время, которое можно вычислить по формуле: An + С, где А — некоторый неизвестный постоянный коэффициент пропорциональности, а С — неизвестная константа, представляющая время установки. Линейный поиск определенного значения в списке представляет собой алгоритм типа О(n). Алгоритм О(n²) выполняется за время An² плюс величина более низкого порядка (которая может быть линейной либо логарифмической или любой другой функцией ниже квадратичной). Поиск повторяющихся значений в списке (примитивным методом, без сортировки списка) является алгоритмом О(n²). Аналогично, алгоритмы порядка О(n³) имеют среднее время выполнения, вычисляемое по кубической формуле. Такие алгоритмы часто слишком медленны для практического применения. Порядок O(log n) типичен для поиска по дереву. Взвешенный выбор алгоритма часто может сократить время выполнения с O(п²) до О(log n). Иногда, когда требуется рассчитать использование алгоритмом памяти, можно заметить, что оно изменяется как O(1) или О(n), или O(n²). Как правило, алгоритмы с использованием памяти О(n²) или более высокого порядка являются непрактичными.

(обратно)

109

Удвоение мощности в течение каждых 18 месяцев, обычно цитируемое в контексте закона Мура, подразумевает, что можно достичь 26% прироста производительности просто путем приобретения нового аппаратного обеспечения через 6 месяцев.

(обратно)

110

Термины, введенные здесь для обозначения проблем проектирования, происходят из устоявшегося жаргона хакеров, описанного в книге [66].

(обратно)

111

Разделение случайной и необязательной сложности означает, что рассматриваемые здесь категории не являются тем же, что сущность и случайность в очерке Фреда Брукса "No Silver Bullet" [8], однако в философском смысле они имеют одинаковое происхождение.

(обратно)

112

Молодые читатели могут не знать, что раньше терминалы печатали (на бумаге и очень медленно).

(обратно)

113

http://plan9.bell-labs.com/sys/doc/sam/sam.html

(обратно)

114

Разработчиками Emacs были Ричард М. Столлмен (Richard М. Stallman) и Берни Гринберг (Bernie Greenberg). Первоначальный редактор Emacs был изобретением Столлмена, первая версия со встроенным языком Lisp была создана Гринбергом, а окончательная на сегодняшний день версия создана Столлменом на основе версии Гринберга. К 2003 году нет полного изложения истории разработки редактора, но эту тему освещает статья Гринберга "Multics Emacs: The History, Design, and Implementation", которую можно найти в Web по ключевым словам.

(обратно)

115

http://www.cs.yorku.ca/~oz/wily

(обратно)

116

http://plan9.bell-labs.com/sys/doc/acme/acme.html

(обратно)

117

Подробности на странице <ftp://ftp.idiom.com/pub/compilers-list/free-compilers> (Список бесплатных компиляторов и интерпретаторов).

(обратно)

118

За пределами мира Unix этот прирост аппаратной производительности на три порядка в значительной мере затмевается соответствующим понижением производительности программ.

(обратно)

119

Серьезность данной проблемы подтверждается богатым сленгом, выработанным Unix-программистами для описания различных ее разновидностей: "псевдонимная ошибка" (aliasing bug), "нарушение выделенной области памяти" (arena corruption), "утечка памяти" (memory leak), "переполнение буфера" (buffer overflow), "разрушение стека" (stack smash), "отклонение указателя" (fandango on core), "недействительный указатель" (stale pointer), "подкачка памяти" (heap trashing), а также вызывающее справедливые опасения "вторичное повреждение" (secondary damage). Пояснения приведены в Словаре хакера <http://www.catb.org/~esr/jargon>.

(обратно)

120

Последний стандарт С++, датированный 1998 годом, был широко распространенным, но слабым, особенно в области библиотек.

(обратно)

121

См. очерк Тома Кристиансена (Tom Christiansen) "Csh Programming Considered Harmful" который можно легко найти в Web.

(обратно)

122

Существует Web-сайт проекта Freenet <http://freenetproject.org>.

(обратно)

123

URL-запроса для получения статистических данных: <http://sourceforge.net/softwaremap/trove_list.php?form_cat=160>.

(обратно)

124

URL-запроса для получения статистических данных: <http://freshmeat.net/browse/160/?topic_id=160>.

(обратно)

125

Распространенное более новое описание языка Perl как "швейцарской бензопилы" является производным.

(обратно)

126

PLY можно загрузить со страницы <http://systems.cs.uchicago.edu/ply/>.

(обратно)

127

Пакет CUP доступен на странице <http://www.cs.princeton.edu/~appel/modern/java/CUP>.

(обратно)

128

Пакет Jack доступен на странице <http://www.javaworld.com/javaworld/jw-12-1996/jw-12-jack.html>.

(обратно)

129

Пакет