KnigaRead.com/
KnigaRead.com » Компьютеры и Интернет » Программное обеспечение » Арнольд Роббинс - Linux программирование в примерах

Арнольд Роббинс - Linux программирование в примерах

На нашем сайте KnigaRead.com Вы можете абсолютно бесплатно читать книгу онлайн Арнольд Роббинс, "Linux программирование в примерах" бесплатно, без регистрации.
Перейти на страницу:

56

Стоит внимательно подумать прежде чем использовать эти функции — Примеч. науч. ред.

57

Linux использует блочные устройства исключительно для дисков. Другие системы используют оба типа — Примеч. автора.

58

Именованные каналы и сокеты были разработаны независимо группами Unix System V и BSD соответственно. Когда системы Unix вновь сошлись, обе разновидности файлов стали доступными универсально —- Примеч. автора.

59

Технический термин warm fuzzyПримеч. автора.

60

Это утверждение было верно для V7, на современных системах больше нет таких гарантий — Примеч. автора.

61

Спасибо Джиму Мейерингу (Jim Meyering) за объяснение проблем — Примеч. автора.

62

UTC представляет собой независимое от языка сокращение для Coordinated Universal Time (универсальное скоординированное время). Старый код (а иногда и люди постарше) называют это Гринвичским временем (Greenwich Mean Time, GMT), которое является временем в Гринвиче, Великобритания. Когда стали широко использоваться часовые пояса, в качестве точки отсчета, относительно которого все остальные часовые пояса отсчитывались либо вперед, либо назад, был выбран Гринвич — Примеч. автора.

63

fchown() и fchmod() были введены в 4 2 BSD, но не включались в System V до выпуска 4 — Примеч. автора.

64

a.m. — от ante meridiem (до полудня), p.m. — от post meridiem (пополудни), американская система обозначения 12-часового цикла времени суток. — Примеч. перев.

65

Хотя POSIX стандартизует формат TZ, он не представляет интереса, поэтому мы не стали возиться здесь с его документированием. В конце концов, именно tzset() должна понимать формат, а не код пользователя. Реализации могут использовать и используют форматы, которые расширяют POSIX — Примеч. автора.

66

Вывод, показанный здесь, относится к US Eastern Standard Time. Вы получите различные результаты для одних и тех же программ и данных, если используете другой часовой пояс — Примеч. автора.

67

STL (Standard Template Library, стандартная библиотека шаблонов). — Примеч. науч. ред.

68

Заметным исключением является лишь Sun Solaris, где эти две функции существуют лишь в трудной для использования библиотеке совместимости с BSD — Примеч. автора.

69

Типичные сетевые базы данных включают Network Information Service (NIS) и NIS+ от Sun Microsystems, Kerberos (Hesiod), MacOS X NetInfo (версии вплоть до и включая 10.2) и LDAP, Lightweight Directory Access Protocol. Системы BSD хранят сведения в базах данных на диске и автоматически создают файлы /etc/passwd и /etc/group — Примеч. автора.

70

К сожалению, если производительность является проблемой, нет стандартных способов узнать, как ваша библиотека осуществляет работу, а на самом деле способ ее работы может варьировать во время исполнения! (См. справочную страницу nsswitchconf(5) в системе GNU/Linux.) С другой стороны, назначением API помимо всего прочего является сокрытие деталей — Примеч. автора.

71

Русский перевод Дональд E. Кнут. Искусство программирования Том 3. Сортировка и поиск (2-е издание). Москва • Санкт-Петербург • Киев, Вильямс, 2000 — Примеч. науч. ред.

72

http://www/gtk.org — Примеч. автора.

73

http://www.gnome.org — Примеч. автора.

74

http://www/gtk.org/rdp — Примеч. автора.

75

В C++ это по-другому: там символьные константы действительно имеют тип char. Это различие не влияет на данный конкретный код — Примеч. автора.

76

GNU/Linux и Solaris дают возможность монтировать один файл поверх другого; это продвинутое использование, которое мы не будем обсуждать — Примеч. автора.

77

Например, при обновлении VAX 11/780 с 4.1 BSD до 4.2 BSD — Примеч. автора.

78

System V Release 3 поддерживала два различных размера блоков: 512 байтов и 1024 байта, но в остальном организация диска была той же самой — Примеч. автора.

79

Университет Карнеги-Меллона — Примеч. перев.

80

Источник: http://www.ife.ee.ethz.ch/music/software/sag/subsection2_5_4_3.html — Примеч. автора.

81

Ha GNU/Linux и большинстве систем Solaris и некоторые системы на основе System V Release 4 используют /etc/vfstab, возможно, с другим форматом — Примеч. автора.

82

См. /usr/include/bits/statvfs.h на системе GNU/Linux — Примеч. автора.

83

На системах GNU/Linux и BSD для получения нижележащего дескриптора файла можно применить функцию dirfd() к указателю DIR*, см. справочную страницу GNU/Linux dirfd(3) — Примеч. автора.

84

POSIX стандартизировал ftw() для поддержки существующего кода, а GNU/Linux b коммерческие системы Unix продолжают её поддерживать. Однако, поскольку она недостаточно функциональна, мы не будем больше ее обсуждать. Если интересуетесь, см. ftw(3). — Примеч. автора.

85

У некоторых старых версий GLIBC были проблемы с FTW_CHDIR. Это не относится к GLIBC 2.3.2 и более поздним, и маловероятно, что вы столкнетесь с проблемами — Примеч. автора.

86

Мы не знаем, почему кому-нибудь может понадобиться делать такое изменение, но философия «что вы просили, то и получили» применяется и здесь! — Примеч. автора.

87

Хэш-таблица является структурой данных, позволяющей быстрое получение сохраненной информации, подробности выходят за рамки данной книги — Примеч. автора.

88

Fork (англ.) — «n вилка, развилка, v разветвлять, ответвлять» — Примеч. перев.

89

Такие процессы часто демонстрируют детское поведение. — Примеч. автора.

90

См. 9.1.4.3 Имена программ и argv[0] — Примеч. науч. ред.

91

Мы это не придумываем. Терминология, конечно, не совсем правильна, но таким было чувство юмора разработчиков оригинальной Unix — Примеч. автора.

92

Дважды проверьте справочную страницу getrusage(2), если у вас более новое ядро, поскольку это поведение, возможно, изменилось — Примеч. автора.

93

csh и tcsh также могут быть включены в эту категорию, но мы предпочитаем оболочки в стиле оболочки Борна — Примеч. автора.

94

Такая операция часто обозначается no-op — «no operation» (нет операции) — Примеч. автора.

95

Мы уверены, что вы не волновались. В конце концов, вы, возможно, используете конвейеры из оболочки десятки раз в день — Примеч. автора.

96

Что они ели на обед, остается не указанным. — Примеч. автора.

97

FIFO означает «first in, first out» — «первым вошел, первым вышел». Так работают каналы. — Примеч. автора.

98

На системах GNU/Linux /dev/fd является символической ссылкой на /proc/self/fd, но поскольку /dev/fd является общеизвестным, в своем коде следует использовать именно его — Примеч. автора.

99

Хотя мы показали простые команды, допустимы произвольные конвейеры — Примеч. автора.

100

Стандарт POSIX умышленно не приписывает ей значение. Однако, чтобы старый код продолжал работать, единственным значением, которое могла бы разумно использовать любая реализация, является 1 — Примеч. автора.

101

Ну, мы игнорируем мысль, что два супруга могли бы хотеть поговорить друг с другом и насладиться компанией — Примеч. автора.

Перейти на страницу:
Прокомментировать
Подтвердите что вы не робот:*