КулЛиб электронная библиотека
Всего книг - 605550 томов
Объем библиотеки - 923 Гб.
Всего авторов - 239838
Пользователей - 109760

Последние комментарии


Впечатления

Stribog73 про Рыбаченко: Рождение ребенка который станет великой мессией! (Героическая фантастика)

Как и обещал - блокирую каждого пользователя, добавившего книгу Рыбаченко.
Не думайте, что я пошутил.

Рейтинг: 0 ( 0 за, 0 против).
Stribog73 про Соколов: Полька Соколова (Переложение С.В.Стребкова) (Самиздат, сетевая литература)

Можете ругать меня и мое переложение последними словами, но мое переложение гораздо ближе к оригиналу, нежели переложения Зырянова и Бобровского.

Еще раз пишу, поскольку старую версию файла удалил вместе с комментарием.
Это полька не гитариста Марка Соколовского. Это полька русского композитора 19 века Ильи А. Соколова.

Рейтинг: +2 ( 2 за, 0 против).
Serg55 про Лебедева: Артефакт оборотней (СИ) (Эротика)

жаль без окончания...

Рейтинг: 0 ( 0 за, 0 против).
Stribog73 про Рыбаченко: Николай Второй и покорение Китая (Альтернативная история)

Предупреждаю пользователей!
Буду блокировать каждого, кто зальет хотя бы одну книгу Олега Павловича Рыбаченко.

Рейтинг: +10 ( 11 за, 1 против).
Сентябринка про Никогосян: Лучший подарок (Сказки для детей)

Чудесная сказка

Рейтинг: +1 ( 1 за, 0 против).
Ирина Коваленко про Риная: Лэри - рыжая заноза (СИ) (Фэнтези: прочее)

Спасибо за книгу! Наконец хоть что-то читаемое в этом жанре. Однотипные герои и однотипные ситуации у других авторов уже бесят иногда начнешь одну книгу читать и не понимаешь - это новое, или я ее читала уже. В этой книге герои не шаблонные, главная героиня не бесит, мир интересный, но не сильно прописанный. Грамматика не лучшая, но читабельно.

Рейтинг: 0 ( 0 за, 0 против).

Системное программирование в UNIX средствами Free Pascal [А. Полищук] (doc) читать постранично

-  Системное программирование в UNIX средствами Free Pascal  716 Кб (скачать doc) (скачать doc+fbd)  (читать)  (читать постранично) - А. П. Полищук - С. А. Семериков

Книга в формате doc! Изображения и текст могут не отображаться!


Настройки текста:




А.П. Полищук, С.А. Семериков

Системное программирование в UNIX
средствами Free Pascal

Содержание

Предисловие 8
О книге 8
Назначение этой книги 8
Спецификация Х/Open 9
Структура книги 10
Что вы должны знать 10
Соглашения 12
Глава 1. Основные понятия и терминология 13
1.1. Файл 13
1.1.1. Каталоги и пути 13
1.1.2. Владелец файла и права доступа 14
1.1.3. Обобщение концепции файла 14
1.2. Процесс 15
1.2.1. Межпроцессное взаимодействие 15
1.3. Системные вызовы и библиотечные подпрограммы 15
Глава 2. Файл 17
2.1. Примитивы доступа к файлам в системе UNIX 17
2.1.1. Введение 17
2.1.2. Системный вызов fdopen 18
2.1.3. Создание файла при помощи вызова fdopen 20
2.1.4. Системный вызов fdcreat 22
2.1.5. Системный вызов fdclose 22
2.1.6. Системный вызов fdread 23
2.1.7. Системный вызов fdwrite 26
2.1.8. Пример copyfile 27
2.1.9. Эффективность вызовов fdread и fdwrite 29
2.1.10. Вызов fdseek и произвольный доступ 30
2.1.11. Пример: гостиница 31
2.1.12. Дописывание данных в конец файла 33
2.1.13. Удаление файла 34
2.1.14. Системный вызов fcntl 34
2.2. Стандартный ввод, стандартный вывод и стандартный вывод диагностики 35
2.2.1. Основные понятия 35
2.2.2. Программа io 36
2.2.3. Использование стандартного вывода диагностики 38
2.3. Стандартная библиотека ввода/вывода: взгляд в будущее 38
2.4. Системные вызовы и переменная linuxerror 41
2.4.7. Подпрограмма perror 41
Глава 3. Работа с файлами 43
3.1. Файлы в многопользовательской среде 43
3.1.1. Пользователи и права доступа 43
3.1.2. Права доступа и режимы файлов 44
3.1.3. Дополнительные права доступа для исполняемых файлов 45
3.1.4. Маска создания файла и системный вызов umask 46
3.1.5. Вызов fdopen и права доступа к файлу 48
3.1.6. Определение доступности файла при помощи вызова access 48
3.1.7. Изменение прав доступа при помощи вызова chmod 49
3.1.8. Изменение владельца при помощи вызова chown 50
3.2. Файлы с несколькими именами 50
3.2.1. Системный вызов link 51
3.2.2. Системный вызов unlink 51
3.2.3. Системный вызов frename 52
3.2.4. Символьные ссылки 52
3.2.5. Еще об именах файлов 54
3.3. Получение информации о файле: вызов fstat 54
3.3.1. Подробнее о вызове chmod 60
Глава 4. Каталоги, файловые системы и специальные файлы 62
4.1. Введение 62
4.2. Каталоги с точки зрения пользователя 62
4.3. Реализация каталогов 64
4.3.1. Снова о системных вызовах link и unlink 65
4.3.2. Точка и двойная точка 65
4.3.3. Права доступа к каталогам 66
4.4. Использование каталогов при программировании 67
4.4.1. Создание и удаление каталогов 67
4.4.2. Открытие и закрытие каталогов 68
4.4.3. Чтение каталогов: вызовы readdir и rewinddir 69
4.4.4. Текущий рабочий каталог 72
4.4.5. Смена рабочего каталога при помощи вызова chdir 72
4.4.6. Определение имени текущего рабочего каталога 73
4.4.7. Обход дерева каталогов 74
4.5. Файловые системы UNIX 78
4.5.1. Кэширование: вызовы sync и fsync 80
4.6. Имена устройств UNIX 81
4.6.1. Файлы блочных и символьных устройств 82
4.6.2. Структура tstat 82
4.6.3. Информация о файловой системе 83
4.6.4. Ограничения файловой системы: процедуры pathconf и fpathconf 84
Глава 5. Процесс 86
5.1. Понятие процесса 86
5.2. Создание процессов 87
5.2.1. Системный вызов fork 87
5.3. Запуск новых программ при помощи вызова ехес 89
5.3.1. Семейство вызовов ехес 89
5.3.2. Доступ к аргументам, передаваемым при вызове exec 92
5.4. Совместное использование вызовов ехес и fork 93
5.5. Наследование данных и дескрипторы файлов 96
5.5.1. Вызов fork, файлы и данные 96
5.5.2. Вызов ехес и открытые файлы 97
5.6. Завершение процессов при помощи системного вызова halt 98
5.7. Синхронизация процессов 98
5.7.1. Системный вызов wait 98
5.7.2. Ожидание завершения определенного потомка: вызов waitpid 100
5.8. Зомби-процессы и преждевременное завершение программы 102
5.9. Командный интерпретатор smallsh 102
5.10. Атрибуты процесса 108
5.10.1. Идентификатор процесса 108
5.10.2. Группы процессов и идентификаторы группы процессов 110
5.10.3. Изменение группы процесса 110
5.10.4. Сеансы и идентификатор сеанса 110
5.10.5. Переменные программного окружения 111
5.10.6. Текущий рабочий каталог 113
5.10.7. Текущий корневой каталог 113
5.10.8. Идентификаторы пользователя и группы 113
5.10.9. Ограничения на размер файла: вызов ulimit 114
5.10.10. Приоритеты процессов 115
Глава 6. Сигналы и их обработка 117
6.1. Введение 117
6.1.1. Имена сигналов 118
6.1.2. Нормальное и аварийное завершение 121
6.2. Обработка сигналов 122
6.2.1. Наборы сигналов 123
6.2.2. Задание обработчика сигналов: вызов sigaction 124
6.2.3. Сигналы и системные вызовы 128
6.2.4. Процедуры sigsetjmp и siglongjmp 129
6.3. Блокирование сигналов 130
6.4. Посылка сигналов 131
6.4.1. Посылка сигналов другим процессам: вызов kill 131
6.4.2. Посылка сигналов самому процессу: вызовы sigraise и alarm 134
6.4.3. Системный вызов pause 136
6.4.4. Системные вызовы sigpending и sigsuspend 138
Глава 7. Межпроцессное взаимодействие при помощи программных каналов 139
7.1. Каналы 139
7.1.1. Каналы на уровне команд 139
7.1.2. Использование каналов в программе 140
7.1.3. Размер канала 144
7.1.4. Закрытие каналов 146
7.1.5. Запись и чтение без блокирования 146
7.1.6. Использование системного