Программирование для Linux. Профессиональный подход [заметки]
1
GNU — это рекурсивный акроним, который расшифровывается как GNU's Not UNIX (GNU — это не UNIX).
2
Пользователи, не работающие в X Window, должны нажать
3
Введите команду >M-x dunnet, если хотите поиграть в старомодную приключенческую игру.
4
Дополнительную информацию о GCC можно получить по адресу >http://gcc.gnu.org.
5
В Windows исполняемые файлы обычно имеют расширение >.exe, а в Linux - вообще не имеют его. Поэтому в Windows эквивалент данной программы будет, скорее всего, называться >reciprocal.exe.
6
В C++ аналогичное различие существует между потоками >cout и >cerr. Манипулятор >endl добавляет в конец потока символ новой строки и вызывает "выталкивание" буфера. Если состояние буфера временно менять не нужно (из соображений производительности, например), воспользуйтесь вместо манипулятора константой >'\n'.
7
В целях обеспечения безопасной работы потоков переменная >errno реализована в виде макроса, но к ней можно обращаться как к глобальной переменной.
8
Имеются и другие флаги, предназначенные для удаления файлов из архива и выполнения других операций над ним. Все они описаны на >man-странице, посвященной команде >ar.
9
Иногда в документации упоминается переменная >LD_RUN_PATH. Не верьте прочитанному! Данная переменная никак не используется в Linux.
10
Команда >kill позволяет посылать процессам и другие сигналы. Об этом рассказывается в разделе 3.4, "Завершение процесса".
11
Способ синхронизации двух процессов представлен в разделе. 3 4.1, "Ожидание завершения процесса".
12
В чём между ними разница! Сигнал >SIGTERM является запросам на завершение; процесс может его проигнорировать и продолжить свое выполнение.. Сигнал >SIGKILL вызывает немедленное безусловное уничтожение процесса и не может быть обработан.
13
Данный способ не является стандартным. В обязанности программиста входит убедиться, что в процессе подобных преобразований не произойдет потеря значащих разрядов.
14
Ненулевое значение определяет семафор, совместно используемый несколькими процессами, но в Linux такой вариант семафоров не поддерживается (семафоры процессов создаются по-другому, а в данном случае речь идет о потоковых семафорах).
15
Эти же константы используются при работе с файлами. Они описываются в разделе 10.3. "Права доступа к файлам".
16
Команда >sort читает строки текста ил стандартного входного потока, сортирует их в алфавитном порядке и записывает в стандартный выходной поток.
17
Именованный канал можно создать только в Windows NT. В Windows 9х программы могут устанавливать только клиентские соединения.
18
Принтер может требовать, чтобы в конце каждой строки стоял символ возврата каретки (ASCII-код 14), а в конце каждой страницы — символ подачи листа (ASCII-код 12).
19
В большинстве Linux-систем можно переключиться на первый виртуальный терминал, нажав
20
Мы могли бы использовать программу >hexdump вместо команды >od, так как они делают, по сути, одно и то же. Но когда входной поток исчерпывается, программа >hexdump завершается, а команда >od переходит в режим ожидания. Опция >-t x1 сообщат команде >od о том, что содержимое файла должно отображаться в шестнадцатеричном формате.
21
В случае повреждения файловой системы данные, которые были восстановлены, но не связаны с каким-либо файлом, помещаются в каталог >lost+found.
22
В некоторых UNIX-системах эти идентификаторы дополняются нулями, в Linux — нет.
23
В главе 9, "Встроенный ассемблерный код", рассказывается о том, как задействовать ассемблерные инструкции в Linux-программах.
24
В DOS и Windows нумерация последовательных портов начинается с единицы, поэтому порту COM1 соответствует последовательный порт с номером 0 в Linux.
25
Если ядро Linux сконфигурировано правильно, оно поддерживает дополнительные IDE-контроллеры, нумеруемые последовательно начиная от >ide2.
26
Команда >hostname, вызванная без флагов, отображает имя компьютера.
27
В Linux семейство функции >exec() реализовано на основе системного вызова >execve().
28
NFS (Network File System) — популярная технология совместного использования файлов в сети.
29
Режим копирования при записи означает, что Linux создает для процесса частную копию страницы только тогда, когда процесс записывает в нее какие-то данные.
30
Выражение >sin(angle) обычно преобразуется в вызов функции библиотеки >libm, но если задать флаг >-O1 (или включить более сильную оптимизацию), компилятор gcc заменит вызов функции простой ассемблерной инструкцией >fsin.
31
Тот факт, что в системе есть всего один специальный пользователь, послужил причиной появления названия UNIX. Более ранняя операционная система, в которой было несколько специальных пользователей, называлась MULTICS.
32
Ядро может отклонить запрос на доступ к файлу, если один из каталогов на пути к нему недоступен данному пользователю. Например, если процессу не разрешено обращаться к каталогу >/tmp/private, то он не сможет получить доступ к файлу >/tmp/private/data.
33
Название бита является анахронизмом. Оно возникло в те далекие времена, когда наличие этого бита означало запрет на выгрузку программы из памяти по окончании выполнения.
34
Существует также бит смены идентификатора группы (SGID, set group identifier). Программа c установленным битом SGID при запуске примет эффективный идентификатор группы, которой принадлежит файл.
35
Монтирование данного каталога по сети — ошибка системного администратора.
36
Наиболее популярный Web-сервер с открытым кодом — сервер Apache (доступен на Web-узле >www.apache.org).
37
В системе могут присутствовать такие интерфейсы, как >eth0 (Ethernet-плата), >lo (интерфейс обратной связи), >ppp0 (коммутируемое соединение).
38
При необходимости функция >gethostbyname() осуществляет поиск имен в DNS.
39
Эта утилита входит в состав Linux.
40
В постфиксной записи бинарный оператор ставится после операндов, а не между ними. Например, чтобы умножить 6 на 8, нужно записать 6 8 *. Чтобы умножить 6 на 8, а затем добавить 5, следует записать 6 8 * 5 +.
41
В стандартной библиотеке языка C++ аналогичным целям служат потоки ввода-вывода.
42
Исходный текст данной лицензии можно найти по адресу >http://www.gnu.org/copyleft/gpl.html.
В учебно-методическом пособии рассматриваются основы языка программирования PL/SQL, реализованного в системе управления базами данных Oracle Database Server. Приводятся сведения о поддерживаемых типах данных, структуре программ PL/SQL и выполнении SQL-предложений в них. Отдельно рассмотрено создание хранимых в базах данных Oracle программ PL/SQL – процедур, функций, пакетов и триггеров.
В книге рассматриваются базисные теоретические основы, необходимые для построения компиляторов, основные технологические приемы и методы их реализации. В ней приведены различные варианты заданий для выполнения лабораторного практикума по курсу «Системное программное обеспечение», а также примеры выполнения этих заданий. В каждом примере подробно рассматриваются все особенности его выполнения, как на этапе подготовки необходимой математической базы, так и на этапе программной реализации. В лабораторных работах автор обращает внимание на основные сложности, связанные с ее выполнением, а также на возможные типичные ошибки и недочеты, дает рекомендации по возможностям программной реализации, отличным от кода, приводимого в примерах.Книга ориентирована на студентов, обучающихся в технических вузах по специальностям, связанным с вычислительной техникой.
Книга известного специалиста по программированию (Югославия), содержащая основы языка Пролог и его приложения для решения задач искусственного интеллекта. Изложение отличается методическими достоинствами — книга написана в хорошем стиле, живым языком. Книга дополняет имеющуюся на русском языке литературу по языку Пролог.Для программистов разной квалификации, специалистов по искусственному интеллекту, для всех изучающих программирование.
РАССЫЛКА ЯВЛЯЕТСЯ ЧАСТЬЮ ПРОЕКТА RSDN, НА САЙТЕ КОТОРОГО ВСЕГДА МОЖНО НАЙТИ ВСЮ НЕОБХОДИМУЮ РАЗРАБОТЧИКУ ИНФОРМАЦИЮ, СТАТЬИ, ФОРУМЫ, РЕСУРСЫ, ПОЛНЫЙ АРХИВ ПРЕДЫДУЩИХ ВЫПУСКОВ РАССЫЛКИ И МНОГОЕ ДРУГОЕ.
В этой книге содержится описание базовых принципов функционирования платформы .NET, системы типов .NET и различных инструментальных средств разработки, используемых при создании приложений .NET. Представлены базовые возможности языка программирования C# 2005, включая новые синтаксические конструкции, появившиеся с выходом .NET 2.0, а также синтаксис и семантика языка CIL. В книге рассматривается формат сборок .NET, библиотеки базовых классов .NET. файловый ввод-вывод, возможности удаленного доступа, конструкция приложений Windows Forms, доступ к базам данных с помощью ADO.NET, создание Web-приложений ASP.NET и Web-служб XML.
В книге рассказывается история главного героя, который сталкивается с различными проблемами и препятствиями на протяжении всего своего путешествия. По пути он встречает множество второстепенных персонажей, которые играют важные роли в истории. Благодаря опыту главного героя книга исследует такие темы, как любовь, потеря, надежда и стойкость. По мере того, как главный герой преодолевает свои трудности, он усваивает ценные уроки жизни и растет как личность.