Системное программирование в UNIX: Рук. программиста по разраб. ПО
Book information
Description
Предисловие Соглашения Благодарности Глава 1. Основные понятия и терминология 1.1. Файл 1.1.1. Каталоги и пути 1.1.2. Владелец файла и права доступа 1.1.3. Обобщение концепции файла 1.2. Процесс 1.2.1. Межпроцессное взаимодействие 1.3. Системные вызовы и библиотечные подпрограммы Глава 2. Файл 2.1. Примитивы доступа к файлам в системе UNIX 2.1.1. Введение 2.1.2. Системный вызов open 2.1.3. Создание файла при помощи вызова open 2.1.4. Системный вызов creat 2.1.5. Системный вызов close 2.1.6. Системный вызов read 2.1.7. Системный вызов write 2.1.8. Пример copyfile 2.1.9. Эффективность вызовов read и write 2.1.10. Вызов lseek и произвольный доступ 2.1.11. Пример: гостиница 2.1.12. Дописывание данных в конец файла 2.1.13. Удаление файла 2.1.14. Системный вызов fcntl 2.2. Стандартный ввод, стандартный вывод и стандартный вывод диагностики 2.2.1. Основные понятия 2.2.2. Программа io 2.2.3. Использование стандартного вывода диагностики 2.3. Стандартная библиотека ввода/вывода: взгляд в будущее 2.4. Системные вызовы и переменная errno 2.4.1. Подпрограмма perror Глава 3. Работа с файлами 3.1. Файлы в многопользовательской среде 3.1.1. Пользователи и права доступа 3.1.2. Права доступа и режимы файлов 3.1.3. Дополнительные права доступа для исполняемых файлов 3.1.4. Маска создания файла и системный вызов umask 3.1.5. Вызов open и права доступа к файлу 3.1.6. Определение доступности файла при помощи вызова access 3.1.7. Изменение прав доступа при помощи вызова chmod 3.1.8. Изменение владельца при помощи вызова chown 3.2. Файлы с несколькими именами 3.2.1. Системный вызов link 3.2.2. Системный вызов unlink 3.2.3. Системный вызов rename 3.2.4. Символьные ссылки 3.3. Получение информации о файле: вызовы stat и fstat 3.3.1. Подробнее о вызове chmod Глава 4. Каталоги, файловые системы и специальные файлы 4.1. Введение 4.2. Каталоги с точки зрения пользователя 4.3. Реализация каталогов 4.3.1. Снова о системных вызовах link и unlink 4.3.2. Точка и двойная точка 4.3.3. Права доступа к каталогам 4.4. Использование каталогов при программировании 4.4.1. Создание и удаление каталогов 4.4.2. Открытие и закрытие каталогов 4.4.3. Чтение каталогов: вызовы readdir и rewinddir 4.4.4. Текущий рабочий каталог 4.4.5. Смена рабочего каталога при помощи вызова chdir 4.4.6. Определение имени текущего рабочего каталога 4.4.7. Обход дерева каталогов 4.5. Файловые системы UNIX 4.5.1. Кэширование: вызовы sync и fsync 4.6. Имена устройств UNIX 4.6.1. Файлы блочных и символьных устройств 4.6.2. Структура stat 4.6.3. Информация о файловой системе 4.6.4. Ограничения файловой системы: процедуры pathconf и fpathconf Глава 5. Процесс 5.1. Понятие процесса 5.2. Создание процессов 5.2.1. Системный вызов fork 5.3. Запуск новых программ при помощи вызова exec 5.3.1. Семейство вызовов exec 5.3.2. Доступ к аргументам, передаваемым при вызове exec 5.4. Совместное использование вызовов exec и fork 5.5. Наследование данных и дескрипторы файлов 5.5.1. Вызов fork, файлы и данные 5.5.2. Вызов exec и открытые файлы 5.6. Завершение процессов при помощи системного вызова exit 5.7. Синхронизация процессов 5.7.1. Системный вызов wait 5.7.2. Ожидание завершения определенного потомка: вызов waitpid 5.8. Зомби-процессы и преждевременное завершение программы 5.9. Командный интерпретатор smallsh 5.10. Атрибуты процесса 5.10.1. Идентификатор процесса 5.10.2. Группы процессов и идентификаторы группы процессов 5.10.3. Изменение группы процесса 5.10.4. Сеансы и идентификатор сеанса 5.10.5. Переменные программного окружения 5.10.6. Текущий рабочий каталог 5.10.7. Текущий корневой каталог 5.10.8. Идентификаторы пользователя и группы 5.10.9. Ограничения на размер файла: вызов ulimit 5.10.10. Приоритеты процессов: вызов nice Глава 6. Сигналы и их обработка 6.1. Введение 6.1.1. Имена сигналов 6.1.2. Нормальное и аварийное завершение 6.2. Обработка сигналов 6.2.1. Наборы сигналов 6.2.2. Задание обработчика сигналов: вызов sigaction 6.2.3. Сигналы и системные вызовы 6.2.4. Процедуры sigsetjmp и siglongjmp 6.3. Блокирование сигналов 6.4. Посылка сигналов 6.4.1. Посылка сигналов другим процессам: вызов kill 6.4.2. Посылка сигналов самому процессу: вызовы raise и alarm 6.4.3. Системный вызов pause Глава 7. Межпроцессное взаимодействие при помощи программных каналов 7.1. Каналы 7.1.1. Каналы на уровне команд 7.1.2. Использование каналов в программе 7.1.3. Размер канала 7.1.4. Закрытие каналов 7.1.5. Запись и чтение без блокирования 7.1.6. Использование системного вызова select для работы с несколькими каналами 7.1.7. Каналы и системный вызов exec 7.2. Именованные каналы, или FIFO 7.2.1. Программирование при помощи каналов FIFO Глава 8. Дополнительные методы межпроцессного взаимодействия 8.1. Введение 8.2. Блокировка записей 8.2.1. Мотивация 8.2.2. Блокировка записей при помощи вызова fcntl 8.3. Дополнительные средства межпроцессного взаимодействия 8.3.1. Введение и основные понятия 8.3.2. Очереди сообщений 8.3.3. Семафоры 8.3.4. Разделяемая память 8.3.5. Команды ipcs и ipcrm Глава 9. Терминал 9.1. Введение 9.2. Терминал UNIX 9.2.1. Управляющий терминал 9.2.2. Передача данных 9.2.3. Эхо-отображение вводимых символов и опережающий ввод с клавиатуры 9.2.4. Канонический режим, редактирование строки и специальные символы 9.3. Взгляд с точки зрения программы 9.3.1. Системный вызов open 9.3.2. Системный вызов read 9.3.3. Системный вызов write 9.3.4. Утилиты ttyname и isatty 9.3.5. Изменение свойств терминала: структура termios 9.3.6. Параметры MIN и TIME 9.3.7. Другие системные вызовы для работы с терминалом 9.3.8. Сигнал разрыва соединения 9.4. Псевдотерминалы 9.5. Пример управления терминалом: программа tscript Глава 10. Сокеты 10.1. Введение 10.2. Типы соединения 10.3. Адресация 10.3.1. Адресация Internet 10.3.2. Порты 10.4. Интерфейс сокетов 10.4.1. Создание сокета 10.5. Программирование в режиме TCP-соединения 10.5.1. Связывание 10.5.2. Включение приема TCP-соединений 10.5.3. Прием запроса на установку TCP-соединения 10.5.4. Подключение клиента 10.5.5. Пересылка данных 10.5.6. Закрытие TCP-соединения 10.6. Программирование в режиме пересылок UDP-дейтаграмм 10.6.1. Прием и передача UDP-сообщений 10.7. Различия между двумя моделями Глава 11. Стандартная библиотека ввода/вывода 11.1. Введение 11.2. Структура FILE 11.3. Открытие и закрытие потоков: процедуры fopen и fclose 11.4. Посимвольный ввод/вывод: процедуры getc и putc 11.5. Возврат символов в поток: процедура ungetc 11.6. Стандартный ввод, стандартный вывод и стандартный вывод диагностики 11.7. Стандартные процедуры опроса состояния 11.8. Построчный ввод и вывод 11.9. Ввод и вывод бинарных данных: процедуры fread и fwrite 11.10. Произвольный доступ к файлу: процедуры fseek, rewind и ftell 11.11. Форматированный вывод: семейство процедур printf 11.12. Форматированный ввод: семейство процедур scanf 11.13. Запуск программ при помощи библиотеки стандартного ввода/вывода 11.14. Вспомогательные процедуры 11.14.1. Процедуры freopen и fdopen 11.14.2. Управление буфером: процедуры setbuf и setvbuf Глава 12. Разные дополнительные системные вызовы и библиотечные процедуры 12.1. Введение 12.2. Управление динамическим распределением памяти 12.3. Ввод/вывод с отображением в память и работа с памятью 12.4. Время 12.5. Работа со строками и символами 12.5.1. Семейство процедур string 12.5.2. Преобразование строк в числовые значения 12.5.3. Проверка и преобразование символов 12.6. Дополнительные средства 12.6.1. Дополнение о сокетах 12.6.2. Потоки управления 12.6.3. Расширения режима реального времени 12.6.4. Получение параметров локальной системы 12.6.5. Интернационализация 12.6.6. Математические функции Приложение 1. Коды ошибок переменной errno и связанные с ними сообщения Введение Список кодов и сообщений об ошибках Приложение 2. История UNIX Основные стандарты Библиография и дополнительные источники Алфавитный указатель
Similar books
Системное программирование в UNIX. Руководство программиста по разработке ПО
2000 · PDF
Методология научных исследований и прикладной аналитики: Учебник. Изд. 5-е, дополн. и перераб. В 2 т. Т.2: Научные исследования: Мастерство и искусство научного мышления и научной работы / Methodology of Scientific Research and Practical Analytics: A Textbook: Fifth Edition. In two volumes. Vol.2: Scientific research: Art of scientific thinking and scientific work / Méthodologie de la recherche scientifique et de l’analytique appliquée: Manuel: Cinquième édition. En 2 tomes. T.2: Recherches scientifiques: Art de la pensée scientifique et du travail scientifique
2025 · PDF
Методы и понятия философии искусства: практикум : уровень подготовки кадров высшей квалификации: ассиснтурв-стажировка : специальности: 54.09.03 "Искусство дизайна (по видам)", 54.09.02 "Мастерство декоративно-прикладного искусства и народных промыслов (по видам)" : укрупненная группа специальностей: 54.00.00 "Изобразительное и прикладные виды искусств" : квалификация выпускника: "Преподаватель творческих дисциплин в высшей школе. Дизайнер", "Преподаватель творческих дисциплин в высшей школе. Художник декоративно-прикладного искусства" : форма обучения: очная
2022 · PDF
Разработка графического интерфейса пользователя информационной системы с использованием библиотеки QT: учебное пособие для студентов 1 курса направлений подготовки 09.04.02 "Информационные системы и технологии", 27.04.03 "Системный анализ и управление" очной формы обучения, 2 курса направления подготовки 10.05.03 "Информационная безопасность автоматизированных систем" очной формы обучения и 3 курса направления подготовки 09.03.02 "Информационные системы и технологии" очной и заочной форм обучения : учебное электронное издание
2021 · PDF
Археологические культуры Сибири в контексте кросс-культурных контактов в Евразии: к 300-летию первых научных археологических раскопок в Сибири (1722 г.) =: Archaeological Cultures of Siberia in the context of Cross-cultural contacts in Eurasia: dedicated to the 300th anniversary of the first scientific archaeological excavations in Siberia (1722) : материалы Международной археологической конференции молодых исследователей "Археологические культуры Сибири в контексте кросс-культурных контактов в Евразии: к 300-летию первых научных археологических раскопок в Сибири (1722 г.)" (Новосибирск, 21-25 ноября 2022 г.)
2022 · PDF
Трешниковские чтения - 2023. Современная географическая картина мира и технологии географического образования =: Treshnikov readings - 2023. Modern geographical global picture and technology of geographic education : материалы Всероссийской научно-практической конференции с международным участием, посвящённой памяти знаменитого российского океанолога, исследователя Арктики и Антарктики, академика Алексея Фёдоровича Трёшникова и 60-летию Ульяновского областного отделения Всероссийской общественной организации "Русское гаографическое общество" (13 апреля 2023)
2023 · PDF
Управление объектами интеллектуальной собственности. Искусство изобретать: учебник для обучающихся по направлениям подготовки 23.00.00 , направлениям подготовки 23.03.01 "Технология транспортных процессов", уровень образования-"бакалавриат", 23.03.03 "Эксплуатация транспортно-технологических машин и комплексов", уровень образования-"бакалавриат", 23.04.01 "Технология транспортных процессов", уровень образования- "магистратура", 23.04.03 "Эксплуатация транспортно-технологических машин и комплексов", уровень образования- "магистратура"
2022 · PDF
Философия. Учебно-методический комплекс дисциплины по направлениям подготовки: 51.03.03 (071800.62) «Социально-культурная деятельность», профили подготовки: «Социально-культурные технологии в индустрии досуга», «Менеджмент социально-культурной деятельности», «Менеджмент детско-юношеского досуга», «Постановка и продюсирование культурно-досуговых программ», «Социально-культурная анимация и рекреация»; 38.03.02 (080200.62) «Менеджмент», профили подготовки: «Управление человеческими ресурсами», «Управление малым бизнесом», квалификации (степень) выпускника – «бакалавр»
2014 · PDF