Программирование в Linux с нуля

Версия: 0.094
Оригинал: lindevel.ru/zlp/

Copyright (c) 2003-2006 Nikolay N. Ivanov.
Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation;

Каждый имеет право воспроизводить, распространять и/или вносить изменения в настоящий Документ в соответствии с условиями GNU Free Documentation License, Версией 1.2 или любой более поздней версией, опубликованной Free Software Foundation;


Оглавление

Предисловие

Глава 1. ВВЕДЕНИЕ
    1.1. Что нужно знать
    1.2. Условные обозначения
    1.3. Что нужно иметь
    1.4. Обратная связь

Глава 2. ПЕРВЫЙ БЛИН
    2.1. Hello World
    2.2. Мультифайловое программирование
    2.3. Автоматическая сборка
    2.4. Модель КИС

Глава 3. БИБЛИОТЕКИ
    3.1. Введение в библиотеки
    3.2. Пример статической библиотеки
    3.3. Пример совместно используемой библиотеки

Глава 4. ОКРУЖЕНИЕ
    4.1. Введение в окружение
    4.2. Массив environ
    4.3. Чтение окружения: getenv()
    4.4. Запись окружения: setenv()
    4.5. Сырая модификация окружения: putenv()
    4.6. Удаление переменной окружения: unsetenv()
    4.7. Очистка окружения: clearenv()

Глава 5. НИЗКОУРОВНЕВЫЙ ВВОД-ВЫВОД
    5.1. Обзор механизмов ввода-вывода в Linux
    5.2. Файловые дескрипторы
    5.3. Открытие файла: системный вызов open()
    5.4. Закрытие файла: системный вызов close()
    5.5. Чтение файла: системный вызов read()
    5.6. Запись в файл: системный вызов write()
    5.7. Произвольный доступ: системный вызов lseek()

Глава 6. МНОГОЗАДАЧНОСТЬ
    6.1. Основы многозадачности в Linux
    6.2. Использование getpid() и getppid()
    6.3. Порождение процесса
    6.4. Замена образа процесса

Приложение 1: GNU Free Documentation License

Приложение 2: Флаги режима доступа к файлу
    Таблица 1. Флаги общего режима
    Таблица 2. Флаги расширенного режима
    Таблица 3. Дополнительные флаги
    Таблица 4. Флаги режима открытия файла


Copyright © 2003-2006, 2007 Nikolay N. Ivanov
Distributed under the GNU Free Documentaton License