Search found 194 matches

Author Message

iPhone

Post 01-Jul-2020 12:35

[Quote]

The Linux Command Line, 2nd Edition: A Complete Introduction / Командная строка Linux. Полное руководство. 2-е межд. изд.
Год издания: 2020
Автор: William Shotts / Шоттс У.
Переводчик: Киселев А.
Издательство: ООО Издательство «Питер»
ISBN: 978-5-4461-1430-6
Серия: Для профессионалов
Язык: Русский
Формат: PDF
Качество: Издательский макет или текст (eBook)
Количество страниц: 544
Описание: Международный бестселлер «Командная строка Linux» поможет преодолеть путь от первых робких щелчков по клавишам до уверенного создания полноценных программ для последней версии bash — наиболее популярной командной оболочки Linux.
Второе издание рассказывает о новых возможностях bash 4.x, таких как новые операторы перенаправления и операции подстановки. В разделе, посвященном сценариям оболочки, рассматриваются современные надежные методы программирования, способы предотвращения типичных ошибок и потенциально опасных ситуаций.
Вы освоите неустаревающие навыки владения командной строкой: навигацию по файловой системе, настройку окружения, объединение команд в цепочки и сопоставление с регулярными выражениями. Вы постигнете философию, лежащую в основе многих инструментов командной строки, разберетесь с богатым наследием, полученным от суперкомпьютеров с Unix, и приобщитесь к знаниям, накопленным поколениями гуру, исключивших мышь из своего арсенала инструментов.

Примеры страниц

Краткое содержание (текстом)

Краткое содержание
Об авторе.............................................................................................................. 24
О научном редакторе.......................................................................................... 25
Благодарности..................................................................................................... 26
Введение.............................................................................................................. 28
Часть I. КОМАНДНАЯ ОБОЛОЧКА
Глава 1. Что такое командная оболочка..................................................................... 36
Глава 2. Навигация.................................................................................................... 41
Глава 3. Исследование системы................................................................................. 47
Глава 4. Операции с файлами и каталогами............................................................... 59
Глава 5. Работа с командами...................................................................................... 76
Глава 6. Перенаправление......................................................................................... 88
Глава 7. Взгляд на мир глазами командной оболочки............................................... 102
Глава 8. Продвинутые приемы работы с клавиатурой............................................... 114
Глава 9. Привилегии................................................................................................ 123
Глава 10. Процессы.................................................................................................. 144
Часть II. ОКРУЖЕНИЕ И НАСТРОЙКА
Глава 11. Окружение............................................................................................... 160
Глава 12. Плавное введение в vi.............................................................................. 173
Глава 13. Настройка приглашения к вводу............................................................... 1926
Часть III. ТИПИЧНЫЕ ЗАДАЧИ И ОСНОВНЫЕ ИНСТРУМЕНТЫ
Глава 14. Управление пакетами............................................................................... 202
Глава 15. Устройства хранения................................................................................ 212
Глава 16. Сети......................................................................................................... 231
Глава 17. Поиск файлов........................................................................................... 247
Глава 18. Архивация и резервное копирование........................................................ 264
Глава 19. Регулярные выражения............................................................................ 281
Глава 20. Обработка текста..................................................................................... 303
Глава 21. Форматирование вывода.......................................................................... 344
Глава 22. Печать...................................................................................................... 365
Глава 23. Компиляция программ.............................................................................. 379
Часть IV. СЦЕНАРИИ КОМАНДНОЙ ОБОЛОЧКИ
Глава 24. Создание первого сценария командной оболочки..................................... 392
Глава 25. Начало проекта........................................................................................ 399
Глава 26. Проектирование сверху вниз.................................................................... 410
Глава 27. Управление потоком выполнения: ветвление при помощи if..................... 420
Глава 28. Чтение ввода с клавиатуры...................................................................... 437
Глава 29. Управление потоком выполнения: циклы while и until............................... 449
Глава 30. Поиск и устранение ошибок...................................................................... 456
Глава 31. Управление потоком выполнения: ветвление с помощью case.................. 470
Глава 32. Позиционные параметры.......................................................................... 477
Глава 33. Управление потоком выполнения: цикл for............................................... 491
Глава 34. Строки и числа......................................................................................... 498
Глава 35. Массивы................................................................................................... 520
Глава 36. Экзотика................................................................................................... 530

Краткое содержание (картинками)

Оглавление (текстом)

Оглавление
Об авторе.............................................................................................................. 24
О научном редакторе.......................................................................................... 25
Благодарности..................................................................................................... 26
К первому изданию................................................................................................ 26
Ко второму изданию............................................................................................... 27
Введение.............................................................................................................. 28
Зачем нужна командная строка?............................................................................. 29
О чем эта книга...................................................................................................... 29
Кому адресована эта книга..................................................................................... 30
Что дается в этой книге.......................................................................................... 31
Как читать эту книгу............................................................................................... 31
Предварительные условия............................................................................... 32
Что нового во втором издании................................................................................ 33
Ваши отзывы важны для нас!................................................................................. 33
От издательства..................................................................................................... 34
Часть I. КОМАНДНАЯ ОБОЛОЧКА.......................................................... 35
Глава 1. Что такое командная оболочка............................................................ 36
Эмуляторы терминалов.......................................................................................... 36
Первые удары по клавишам................................................................................... 36
История команд................................................................................................ 38
Управление курсором....................................................................................... 38
Некоторые простые команды.................................................................................. 38
Завершение сеанса работы с терминалом............................................................... 39
Заключение............................................................................................................ 408
Глава 2. Навигация.............................................................................................. 41
Дерево каталогов файловой системы..................................................................... 41
Текущий рабочий каталог....................................................................................... 42
Вывод содержимого каталога................................................................................. 43
Смена текущего рабочего каталога........................................................................ 43
Абсолютные пути............................................................................................. 43
Относительные пути......................................................................................... 44
Некоторые полезные сокращения.................................................................... 46
Заключение............................................................................................................ 46
Глава 3. Исследование системы......................................................................... 47
Любопытные возможности ls.................................................................................. 47
Параметры и аргументы................................................................................... 48
Пристальный взгляд на длинный формат......................................................... 49
Определение типов файлов командой file............................................................... 50
Просмотр содержимого файлов командой less........................................................ 51
Обзорное путешествие........................................................................................... 53
Символические ссылки........................................................................................... 57
Жесткие ссылки...................................................................................................... 58
Заключение............................................................................................................ 58
Глава 4. Операции с файлами и каталогами..................................................... 59
Групповые символы................................................................................................ 60
mkdir — создание каталогов................................................................................... 62
cp — копирование файлов и каталогов................................................................... 63
Параметры команды cp и примеры ее использования....................................... 63
mv — перемещение и переименование файлов...................................................... 64
Параметры команды mv и примеры ее использования...................................... 64
rm — удаление файлов и каталогов....................................................................... 65
Параметры команды rm и примеры ее использования...................................... 65
ln — создание ссылок............................................................................................. 67
Жесткие ссылки............................................................................................... 67
Символические ссылки..................................................................................... 68
Постройка песочницы............................................................................................. 68
Создание каталогов.......................................................................................... 68
Копирование файлов........................................................................................ 69
Перемещение и переименование файлов......................................................... 70
Создание жестких ссылок................................................................................. 71
Создание символических ссылок...................................................................... 72
Удаление файлов и каталогов.......................................................................... 73
Заключение............................................................................................................ 75
Глава 5. Работа с командами.............................................................................. 76
Что такое команды?................................................................................................ 76
Идентификация команд.......................................................................................... 77
type — получение типа команды...................................................................... 77
which — определение местоположения выполняемого файла.......................... 77
Получение документации с описанием команд....................................................... 78
help — получение справки для встроенных команд.......................................... 78
--help — вывод инструкции по использованию................................................. 80
man — вывод страниц справочного руководства.............................................. 80
apropos — вывод списка подходящих команд................................................... 82
whatis — вывод очень краткого описания команды.......................................... 83
info — вывод записи из справочного руководства Info...................................... 83
README и другие файлы с описанием программ.............................................. 85
Создание собственных команд с помощью alias...................................................... 85
Заключение............................................................................................................ 87
Глава 6. Перенаправление.................................................................................. 88
Стандартный ввод, вывод и вывод ошибок............................................................. 88
Перенаправление стандартного вывода................................................................. 89
Перенаправление стандартного вывода ошибок..................................................... 91
Перенаправление стандартного вывода и стандартного вывода ошибок
в один файл..................................................................................................... 91
Удаление нежелательного вывода................................................................... 92
Перенаправление стандартного ввода.................................................................... 93
cat — объединение файлов.............................................................................. 9310
Конвейеры............................................................................................................. 95
Фильтры........................................................................................................... 95
uniq — поиск или удаление повторяющихся строк............................................ 96
wc — вывод числа строк, слов и байтов........................................................... 97
grep — поиск строк, соответствующих шаблону............................................... 97
head/tail — вывод первых/последних строк из файлов..................................... 98
tee — чтение со стандартного ввода и запись в стандартный
вывод и в файлы.............................................................................................. 99
Заключение.......................................................................................................... 101
Глава 7. Взгляд на мир глазами командной оболочки................................... 102
Подстановка......................................................................................................... 102
Подстановка путей......................................................................................... 103
Подстановка тильды....................................................................................... 104
Подстановка результатов арифметических выражений.................................. 105
Подстановка фигурных скобок....................................................................... 106
Подстановка параметров................................................................................ 107
Подстановка команд....................................................................................... 108
Экранирование..................................................................................................... 109
Двойные кавычки........................................................................................... 109
Одиночные кавычки....................................................................................... 111
Экранирование символов............................................................................... 111
Управляющие последовательности................................................................ 112
Заключение.......................................................................................................... 113
Глава 8. Продвинутые приемы работы с клавиатурой................................... 114
Редактирование командной строки....................................................................... 114
Перемещение курсора.................................................................................... 115
Изменение текста........................................................................................... 115
Вырезание и вставка (удаление и возврат) текста.......................................... 117
Дополнение.......................................................................................................... 117
Использование истории........................................................................................ 119
Поиск в истории............................................................................................. 119
Подстановка записей истории........................................................................ 121
Заключение.......................................................................................................... 122
Глава 9. Привилегии.......................................................................................... 123
Владельцы, члены группы и все остальные.......................................................... 124
Чтение, запись и выполнение............................................................................... 126
chmod — изменение режима доступа к файлу................................................ 128
Установка режима доступа к файлу с помощью
графического интерфейса.............................................................................. 131
umask — определение разрешений доступа к файлам по умолчанию............. 132
Некоторые специальные разрешения............................................................. 134
Изменение идентичности...................................................................................... 135
su — запуск командной оболочки с подстановкой идентификаторов
пользователя и группы................................................................................... 136
sudo — выполнение команды от имени другого пользователя........................ 137
chown — изменение владельца и группы файла............................................. 139
chgrp — изменение группы файла.................................................................. 140
Использование привилегий.................................................................................. 140
Изменение своего пароля..................................................................................... 142
Заключение.......................................................................................................... 143
Глава 10. Процессы........................................................................................... 144
Как действует процесс.......................................................................................... 144
Просмотр списка процессов.................................................................................. 145
Просмотр состояния процессов в динамике с помощью top............................ 148
Управление процессами....................................................................................... 150
Прерывание процесса.................................................................................... 151
Перевод процессов в фоновый режим............................................................ 151
Возврат процесса на передний план.............................................................. 152
Приостановка процесса.................................................................................. 152
Сигналы............................................................................................................... 153
Посылка сигналов процессам командой kill..................................................... 154
Посылка сигналов нескольким процессам с помощью killall............................ 156
Остановка системы............................................................................................... 157
Другие команды управления процессами.............................................................. 158
Заключение.......................................................................................................... 15812
Часть II. ОКРУЖЕНИЕ И НАСТРОЙКА.................................................. 159
Глава 11. Окружение......................................................................................... 160
Что хранится в окружении?.................................................................................. 160
Исследование окружения............................................................................... 161
Некоторые интересные переменные............................................................... 162
Как устанавливается окружение?......................................................................... 163
Что находится в файлах запуска?................................................................... 165
Изменение окружения.......................................................................................... 167
Какие файлы следует изменять?.................................................................... 167
Текстовые редакторы..................................................................................... 167
Использование текстового редактора............................................................. 168
Активация изменений..................................................................................... 172
Заключение.......................................................................................................... 172
Глава 12. Плавное введение в vi...................................................................... 173
Зачем осваивать vi............................................................................................... 173
Немного предыстории.......................................................................................... 174
Запуск и завершение vi........................................................................................ 174
Режимы редактирования...................................................................................... 176
Переход в режим вставки............................................................................... 177
Сохранение изменений................................................................................... 177
Перемещение курсора.......................................................................................... 178
Основы редактирования....................................................................................... 179
Добавление текста в конец............................................................................ 179
Вставка строки............................................................................................... 180
Удаление текста............................................................................................. 181
Вырезание, копирование и вставка текста..................................................... 182
Объединение строк........................................................................................ 183
Поиск и замена..................................................................................................... 184
Поиск в пределах строки................................................................................ 184
Поиск во всем файле...................................................................................... 184
Глобальный поиск и замена........................................................................... 185
Редактирование нескольких файлов..................................................................... 186
Переключение между файлами...................................................................... 187
Открытие дополнительных файлов для редактирования................................ 188
Копирование содержимого из одного файла в другой.................................... 188
Вставка целого файла в другой файл............................................................. 189
Сохранение результатов работы........................................................................... 190
Заключение.......................................................................................................... 191
Глава 13. Настройка приглашения к вводу..................................................... 192
Устройство строки приглашения к вводу.............................................................. 192
Альтернативные варианты оформления приглашения.......................................... 194
Добавление цвета................................................................................................ 196
Перемещение курсора.......................................................................................... 198
Сохранение определения приглашения................................................................ 200
Заключение.......................................................................................................... 200
Часть III. ТИПИЧНЫЕ ЗАДАЧИ И ОСНОВНЫЕ ИНСТРУМЕНТЫ........... 201
Глава 14. Управление пакетами....................................................................... 202
Системы пакетов.................................................................................................. 203
Как действует система пакетов............................................................................. 203
Файлы пакетов............................................................................................... 203
Репозитории................................................................................................... 204
Зависимости................................................................................................... 205
Высоко- и низкоуровневые инструменты управления пакетами...................... 205
Типичные задачи управления пакетами............................................................... 206
Поиск пакета в репозитории.......................................................................... 206
Установка пакета из репозитория................................................................... 206
Установка пакета из файла пакета................................................................. 207
Удаление пакета............................................................................................ 207
Обновление пакетов из репозитория.............................................................. 208
Обновление пакета из файла пакета.............................................................. 208
Список установленных пакетов...................................................................... 209
Определение, установлен ли пакет................................................................ 20914
Вывод информации об установленном пакете................................................ 209
Поиск пакета по установленному файлу......................................................... 210
Заключение.......................................................................................................... 210
Глава 15. Устройства хранения........................................................................ 212
Монтирование и размонтирование устройств хранения........................................ 213
Просмотр списка смонтированных файловых систем...................................... 214
Определение названий устройств.................................................................. 218
Создание новых файловых систем........................................................................ 221
Управление разделами с помощью fdisk......................................................... 221
Создание новой файловой системы с помощью mkfs...................................... 224
Проверка и восстановление файловой системы.................................................... 225
Непосредственное перемещение данных между устройствами............................. 226
Создание образа компакт-диска..................................................................... 226
Создание образа-копии компакт-диска........................................................... 227
Создание образа из коллекции файлов.......................................................... 227
Запись образа компакт-диска............................................................................... 228
Непосредственное монтирование файла ISO-образа...................................... 228
Очистка перезаписываемых компакт-дисков.................................................. 228
Запись образа................................................................................................ 228
Заключительное замечание.................................................................................. 229
Дополнительные сведения................................................................................... 229
Глава 16. Сети.................................................................................................... 231
Исследование и мониторинг сети......................................................................... 232
ping................................................................................................................ 232
traceroute....................................................................................................... 233
ip................................................................................................................... 234
netstat............................................................................................................ 235
Передача файлов по сети..................................................................................... 237
ftp.................................................................................................................. 237
lftp — более удачная версия ftp..................................................................... 239
wget............................................................................................................... 239
Безопасные взаимодействия с удаленными узлами............................................... 240
ssh................................................................................................................. 240
scp и sftp........................................................................................................ 245
Заключение.......................................................................................................... 246
Глава 17. Поиск файлов.................................................................................... 247
locate — простой способ поиска файлов............................................................... 247
find — сложный способ поиска файлов................................................................. 249
Проверки....................................................................................................... 250
Операторы..................................................................................................... 253
Предопределенные операции......................................................................... 255
Операции, определяемые пользователем....................................................... 257
Увеличение эффективности........................................................................... 258
xargs.............................................................................................................. 259
Возвращаемся в песочницу............................................................................ 260
Параметры..................................................................................................... 262
Заключение.......................................................................................................... 263
Глава 18. Архивация и резервное копирование............................................. 264
Сжатие файлов..................................................................................................... 264
gzip................................................................................................................ 265
bzip2.............................................................................................................. 268
Архивирование файлов........................................................................................ 268
tar.................................................................................................................. 269
zip.................................................................................................................. 274
Синхронизация файлов и каталогов..................................................................... 276
Использование rsync для копирования по сети............................................... 279
Заключение.......................................................................................................... 280
Глава 19. Регулярные выражения................................................................... 281
Что такое регулярные выражения?....................................................................... 281
grep...................................................................................................................... 282
Метасимволы и литералы..................................................................................... 284
Любой символ...................................................................................................... 28416
Якоря................................................................................................................... 285
Выражения в квадратных скобках и классы символов........................................... 286
Отрицание..................................................................................................... 287
Традиционные диапазоны символов............................................................... 287
Классы символов POSIX........................................................................................ 288
Простые и расширенные регулярные выражения POSIX....................................... 291
Чередование........................................................................................................ 293
Квантификаторы.................................................................................................. 295
? — совпадение с элементом ноль или один раз............................................. 295
* — совпадение с элементом ноль или более раз........................................... 295
+ — совпадение с элементом один или более раз.......................................... 296
{ } — совпадение с элементом определенное число раз................................. 297
Практические примеры применения регулярных выражений................................ 298
Проверка списка телефонов с помощью grep................................................. 298
Поиск необычных имен файлов с помощью find............................................. 299
Поиск файлов с помощью locate..................................................................... 299
Поиск текста в less и vim................................................................................ 300
Заключение.......................................................................................................... 301
Глава 20. Обработка текста.............................................................................. 303
Области применения текста................................................................................. 304
Документы..................................................................................................... 304
Веб-страницы................................................................................................. 304
Электронная почта......................................................................................... 304
Вывод на принтер.......................................................................................... 304
Исходный код программ................................................................................. 305
А вот и наши старые знакомые!............................................................................ 305
cat........................................................................................................................ 305
sort................................................................................................................ 307
uniq — выявление или удаление повторяющихся строк.................................. 314
Нарезка и перетасовка текста.............................................................................. 316
cut — удаление фрагментов из всех строк в файлах...................................... 316
paste — слияние строк из файлов.................................................................. 319
join — объединение строк из двух файлов по общему полю........................... 321
Сравнение текста................................................................................................. 323
comm — построчное сравнение двух сортированных файлов......................... 323
diff — построчное сравнение файлов............................................................. 324
patch — применение diff-файла к оригиналу................................................... 327
Редактирование на лету....................................................................................... 328
tr — перекодирование или удаление символов............................................... 328
sed — потоковый редактор для фильтрации и преобразования текста........... 331
aspell — интерактивная проверка орфографии............................................... 339
Заключение.......................................................................................................... 343
Дополнительное задание...................................................................................... 343
Глава 21. Форматирование вывода.................................................................. 344
Инструменты простого форматирования............................................................... 344
nl — нумерация строк..................................................................................... 345
fold — перенос строк после указанной длины................................................. 348
fmt — простое форматирование текста.......................................................... 349
pr — форматирование текста для печати....................................................... 352
printf — форматирование и вывод данных...................................................... 353
Системы форматирования документов.................................................................. 357
groff............................................................................................................... 358
Заключение.......................................................................................................... 364
Глава 22. Печать................................................................................................ 365
Краткая история поддержки печати..................................................................... 365
Печать в ночное время................................................................................... 366
Символьные принтеры................................................................................... 366
Графические принтеры.................................................................................. 367
Печать в Linux...................................................................................................... 369
Подготовка файлов к печати................................................................................ 369
pr — преобразование текстовых файлов для печати...................................... 369
Отправка задания печати на принтер................................................................... 371
lpr — печать файлов (в стиле Berkeley).......................................................... 371
lp — печать файлов (в стиле System V).......................................................... 372
Еще одна возможность: a2ps.......................................................................... 37318
Наблюдение за заданиями печати и управление ими........................................... 376
lpstat — вывод информации о состоянии принтера......................................... 376
lpq — вывод информации о состоянии очереди печати.................................. 377
lprm и cancel — отмена заданий печати.......................................................... 378
Заключение.......................................................................................................... 378
Глава 23. Компиляция программ...................................................................... 379
Что такое компиляция?........................................................................................ 380
Все ли программы компилируются?................................................................ 381
Компиляция программ на C.................................................................................. 382
Получение исходного кода............................................................................. 382
Исследование дерева исходных текстов......................................................... 384
Сборка программ............................................................................................ 386
Установка программ....................................................................................... 390
Заключение.......................................................................................................... 390
Часть IV. СЦЕНАРИИ КОМАНДНОЙ ОБОЛОЧКИ.................................. 391
Глава 24. Создание первого сценария командной оболочки......................... 392
Что такое сценарии командной оболочки............................................................. 392
Как написать сценарий командной оболочки........................................................ 393
Формат файла сценария................................................................................. 393
Разрешения на выполнение........................................................................... 394
Местоположение файла сценария.................................................................. 394
Выбор местоположения для сценариев.......................................................... 396
Дополнительные хитрости по оформлению.......................................................... 397
Длинные имена параметров........................................................................... 397
Отступы и продолжения строк....................................................................... 397
Заключение.......................................................................................................... 398
Глава 25. Начало проекта................................................................................. 399
Этап первый: минимальный документ.................................................................. 399
Этап второй: добавление некоторых данных........................................................ 401
Переменные и константы..................................................................................... 402
Присваивание значений переменным и константам........................................ 405
Встроенные документы......................................................................................... 407
Заключение.......................................................................................................... 409
Глава 26. Проектирование сверху вниз........................................................... 410
Функции командной оболочки.............................................................................. 411
Локальные переменные........................................................................................ 414
Постоянное опробование сценария...................................................................... 416
Заключение.......................................................................................................... 419
Глава 27. Управление потоком выполнения:
ветвление при помощи if.................................................................................. 420
Инструкция if........................................................................................................ 420
Код завершения................................................................................................... 421
Команда test......................................................................................................... 423
Выражения для проверки файлов.................................................................. 423
Выражения для проверки строк...................................................................... 426
Выражения для проверки целых чисел........................................................... 428
Более современная версия команды test.............................................................. 429
(( )) — для проверки целых чисел.................................................................. 430
Объединение выражений..................................................................................... 431
Операторы управления: еще один способ ветвления............................................ 434
Заключение.......................................................................................................... 435
Глава 28. Чтение ввода с клавиатуры............................................................. 437
read — чтение значений со стандартного ввода................................................... 438
Параметры..................................................................................................... 440
Выделение полей в строке ввода с помощью IFS............................................ 442
Проверка ввода.................................................................................................... 444
Меню.................................................................................................................... 446
Заключение.......................................................................................................... 448
Дополнительные сведения................................................................................... 448
Глава 29. Управление потоком выполнения: циклы while и until................. 449
Циклы.................................................................................................................. 449
while............................................................................................................... 45020
Прерывание цикла............................................................................................... 452
until................................................................................................................ 454
Чтение файлов в циклах....................................................................................... 454
Заключение.......................................................................................................... 455
Глава 30. Поиск и устранение ошибок............................................................. 456
Синтаксические ошибки....................................................................................... 456
Отсутствующие кавычки................................................................................. 457
Отсутствующие или неожиданные лексемы.................................................... 458
Непредвиденная подстановка........................................................................ 458
Логические ошибки.............................................................................................. 460
Защитное программирование......................................................................... 460
Будьте внимательны к именам файлов........................................................... 462
Проверка ввода.............................................................................................. 463
Тестирование....................................................................................................... 464
Комплекты тестов.......................................................................................... 465
Отладка................................................................................................................ 465
Поиск проблемной области............................................................................ 465
Трассировка................................................................................................... 466
Исследование значений в процессе выполнения............................................ 468
Заключение.......................................................................................................... 469
Глава 31. Управление потоком выполнения:
ветвление с помощью case............................................................................... 470
Команда case........................................................................................................ 470
Шаблоны........................................................................................................ 472
Выполнение нескольких вариантов................................................................ 474
Заключение.......................................................................................................... 476
Глава 32. Позиционные параметры................................................................. 477
Доступ к командной строке.................................................................................. 477
Определение числа аргументов...................................................................... 478
shift — доступ к множеству аргументов.......................................................... 479
Простые приложения..................................................................................... 480
Использование позиционных параметров в функциях.................................... 481
Обработка позиционных параметров скопом........................................................ 482
Более сложное приложение................................................................................. 484
Заключение.......................................................................................................... 487
Глава 33. Управление потоком выполнения: цикл for................................... 491
for: традиционная форма...................................................................................... 491
for: форма в стиле языка C................................................................................... 494
Заключение.......................................................................................................... 496
Глава 34. Строки и числа.................................................................................. 498
Подстановка параметров...................................................................................... 498
Простые параметры....................................................................................... 499
Подстановка пустых переменных................................................................... 499
Получение имен переменных......................................................................... 501
Операции со строками.................................................................................... 502
Преобразование регистра символов............................................................... 505
Вычисление и подстановка арифметических выражений................................ 507
Основание системы счисления....................................................................... 508
Унарные операторы....................................................................................... 508
Простая арифметика...................................................................................... 508
Присваивание................................................................................................ 510
Битовые операции.......................................................................................... 512
Логические операторы................................................................................... 513
bc — язык калькулятора для вычислений с произвольной точностью................... 516
Применение bc............................................................................................... 517
Пример сценария........................................................................................... 518
Заключение.......................................................................................................... 519
Дополнительные сведения................................................................................... 519
Глава 35. Массивы........................................................................................................ 520
Что такое массивы?.............................................................................................. 520
Создание массива................................................................................................. 521
Присваивание значений массиву.......................................................................... 52122
Доступ к элементам массива................................................................................ 522
Операции с массивами......................................................................................... 524
Вывод содержимого всего массива................................................................. 524
Определение числа элементов в массиве....................................................... 525
Поиск используемых индексов....................................................................... 526
Добавление элементов в конец массива......................................................... 526
Сортировка массива....................................................................................... 526
Удаление массива.......................................................................................... 527
Ассоциативные массивы....................................................................................... 528
Заключение.......................................................................................................... 529
Глава 36. Экзотика............................................................................................. 530
Группы команд и подоболочки............................................................................. 530
Подстановка процессов........................................................................................ 534
Ловушки............................................................................................................... 536
Асинхронное выполнение с командой wait............................................................ 540
Именованные каналы........................................................................................... 541
Создание именованного канала...................................................................... 542
Использование именованных каналов............................................................ 542
Заключение.......................................................................................................... 543

Оглавление (картинками)

iPhone

Post 07-Jun-2020 19:35

[Quote]

UNIX and Linux System Administration Handbook / Unix и Linux. Руководство системного администратора. 5-e издание
Год издания: 2020
Автор: Evi Nemeth, Garth Snyder, Trent Hein / Эви Немет, Гарт Снайдер, Трент Хейн, Бен Уэйли, Дэн Макни
Переводчик: Клюшин Д.А.
Издательство: Диалектика
ISBN: 978-5-907144-10-1
Язык: Русский
Формат: PDF
Качество: Отсканированные страницы + слой распознанного текста
Интерактивное оглавление: Нет
Количество страниц: 1170
Описание:
Это современное и полное руководство по инсталляции, настройке и обслуживанию любой системы UNIX или Linux, включая системы, предоставляющие базовую инфраструктуру Интернета и облачную инфраструктуру.
Обновленное с учетом новых дистрибутивов и облачных сред, это всестороннее руководство охватывает лучшие практики для всех аспектов системного администрирования, включая управление хранением данных, проектирование и администрирование сети, безопасность, веб-хостинг, автоматизацию, управление конфигурацией, анализ производительности, виртуализацию, DNS, безопасность и управление IT-организациями.
Авторы — специалисты мирового класса — рассмотрели облачные платформы, методологию DevOps, непрерывное развертывание, контейнеризацию, мониторинг и многие другие важные темы.
Независимо от вашей роли в системах и сетях, построенных на UNIX или Linux, это понятное, хорошо написанное руководство поможет повысить эффективность и поможет решить ваши самые острые проблемы.
Книга предназначена для студентов, системных администраторов и всех программистов, использующих системы FreeBSD и Linux.
«Как автор, редактор и издатель, я никогда не придавал большого значения конкуренции — за исключением нескольких случаев. Это один из таких случаев. «Unix и Linux. Руководство системного администратора» — это одна из немногих книг, на которые мы равняемся.»
Тим О'Рейли, основатель компании O'Reily Media
«Это издание предназначено для тех, чьи системы работают в облаке или в виртуализированных центрах обработки данных; тех, чья административная работа в основном принимает форму исходного кода автоматизации и конфигурации; тех, кто тесно сотрудничает с разработчиками, сетевыми инженерами, сотрудниками по вопросам соблюдения требований и всеми другими рабочими пчелами, которые обитают в современном улье.»
Пол Викси (Paul Vixie), изобретатель и основатель компаний ISC и Farsight Security, лауреат премии Зал Славы Интернета (Internet Hall of Fame)
«Эта книга увлекательна и полезна как справочник. Если вы используете системы UNIX и Linux, она должна стать вашей настольной книгой. В ней кратко и без лишних разглагольствований написано об истории этих систем. Она содержит точную информацию, которая излагается в яркой и запоминающейся форме.»
Джейсон А. Наннелли (Jason A. Nunnelly)

Примеры страниц

Мои остальные раздачи - [url=tracker.php?rid=43141996]https://rutracker.org/forum/tracker.php?rid=43141996[/url]

iPhone

Post 01-Jun-2020 15:05

[Quote]

Linux в действии
Год издания: 2019
Автор: Клинтон Д.
Издательство: Питер
ISBN: 978-5-4461-1199-2
Язык: Русский
Формат: PDF
Качество: Отсканированные страницы + слой распознанного текста
Интерактивное оглавление: Да
Количество страниц: 414
Описание: Без практики ничему нельзя научиться, и Linux не исключение. Книга "Linux в действии" поможет приобрести навыки защиты файлов, папок и серверов, безопасной установки патчей и приложений, а также управления сетью.
В книге описываются 12 реальных проектов, в том числе автоматизация системы резервного копирования и восстановления, настройка личного файлового облака в стиле Dropbox и создание собственного сервера MediaWiki. На интересных примерах вы изучите виртуализацию, аварийное восстановление, обеспечение безопасности, резервное копирование, внедрение DevOps и устранение неполадок системы. Каждая глава заканчивается обзором практических рекомендаций, глоссарием новых терминов и упражнениями

Примеры страниц

Оглавление

Предисловие..." .. " .. " ................................................................................" . . . . . . . . ." . . . . . . . 17
Благодарности". ." . . . . ." . . . . . . . . ." . ." . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ." . ." . . . . . . . . . . . . . . . . . . . . . . ." . . . . ." . . . . . . . . . . 18
Об этой книге"" .""""" ." ."""""""""". .""" .""""""" ."""""" ."" ." .""""""" .""""" . . 19
Об авторе ..............." ." . . ." ." . . . . . . . . ." .." . . . . . . . . . . . . . . . . . . . . . . . . . ." . . . . . . . . . . . . . . . . ." . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
Об иллюстрации на обложке .""""""""""""" ." .""" ." . ." ."" .""" ."""""" .""""" ."" . . . 25
Гпава 1. Добро пожаловать в Liпux """""""""""""""""""""""""""""""""""""" . 26
Гпава 2. Виртуализация Linux: создание безопасной и простой рабочей среды""""" .50
Гпава Э. Удаленное подключение: безопасный доступ к машинам по сети""""""""" 82
Гпава 4. Управление архивами: создание резервных копий или копирование
целых файловых систем """" "" ."""""""""""" ."" ."""" ..""" ..""" .""" ."" ." .""" .". 103
Гпава 5. Автоматизированное администрирование: настройка автоматического
резервного копирования . . . ." . . . . ." . . . . . . . . . . . . . . . . . . . . .." . ." . . . . . . . . ." . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . . . ." .. 128
Гпава 6. Инструменты для критических ситуаций: создание устройства
для восстановления системы" ." .."""" .""""" .""" .""""" . .""" ." ."" . ." ." .."" ." ."""" . 150
Гпава 7. Веб-серверы: создание сервера MediaWiki"""."" ."""."". " ."""""""""""" 174
Гпава 8. Совместное использование файлов в сети : создание сервера
для совместного использования файлов Nextcloud."" .""" ."""" .""""" ." .""""""""" 201
Гпава 9. Защита вашего веб-сервера .""""" ." .""""""" ."" ."""""" ."""" ." ."""" ."" 222
Краткое содержание6 Краткое содержание
Гпава 10. защита сетевых соединений : создание VPN или DMZ."................. .." . . . . ." .. 254
Гпава 11. Мониторинг системы: работа с файлами журналов.................................... 282
Гпава 12. Совместное использование данных в частной сети .................................... 306
Гпава 13. Устранение проблем производительности системы. . ............. ..................... 3 24
Гпава 14. Устранение неполадок в сети .................................................................... 346
Гпава 15. Устранение неполадок с периферийными устройствами ............................ 367
Гпава 16. Инструменты DevOps: развертывание серверной среды
с использованием АпsiЫе.... ..................... . . ....... .... ...... . ... ." . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 382
заключение ............ ............... . ............." . ." . . . ." . . ." ." . . . . . . . . ." . ." . . . . . . . . . . . ." . ." . . . . . . ." . . . . . . . . . 400
Приложение. Обзор команд по главам . """"......"""" ."" ."" . ." ."" . . ." . . ." . . . ." . ." . ." . ."" 404

iPhone

Post 29-May-2020 05:00

[Quote]

Apple Augmented Reality by Tutorials (Early Access Edition)
Год издания: 2020
Автор: Chris Language
Издательство: Razeware LLC
ISBN: Отсутствует
Язык: Английский
Формат: PDF/EPUB
Качество: Издательский макет или текст (eBook)
Количество страниц: 163
Описание: This book will teach you to build realistic and immersive AR experiences for the Apple platform.

Примеры страниц

Оглавление

Book License
What You Need
Book Source Code & Forums
Early Access Edition
Chapter 1: AR Quick Look
Chapter 2: Reality Composer & Reality Files
Chapter 3: USDZ Files & USD Python Tools
Chapter 4: Reality Converter & PBR Materials
Chapter 5: Image Anchors
Chapter 6: Behaviors, Triggers & Actions
Chapter 7: Object Anchors
Chapter 8: RealityKit
Chapter 9: Face Anchors
Chapter 10: Facial Blend Shapes
Chapter 11: ARKit
Chapter 12: ARKit & SpriteKit
Chapter 13: AR Session Management
Chapter 14: Raycasting & Physics
Chapter 15: ARKit & SceneKit
Chapter 16: Plane Anchors & Focus Nodes
Chapter 17: AR Coaching Overylay & Billboards
Chapter 18: ECS & Collaborative Experiences
Conclusion

iPhone

Post 29-May-2020 05:00

[Quote]

Auto Layout by Tutorials (1st Edition)
Год издания: 2020
Автор: Jayven Nhan & Libranner Santos
Издательство: Razeware LLC
ISBN: Отсутствует
Язык: Английский
Формат: PDF/EPUB
Качество: Издательский макет или текст (eBook)
Количество страниц: 381
Описание: This book teaches you Auto Layout, Apple’s elegant solution to making your user interfaces flexible and adaptable.

Примеры страниц

Оглавление

About the Cover
What You Need
Book License
Book Source Code & Forums
Chapter 1: Introducing Auto Layout
Chapter 2: Construct Auto Layout with the Interface Builder
Chapter 3: Stack View
Chapter 4: Construct Auto Layout with Code
Chapter 5: Scroll View
Chapter 6: Self-Sizing Views
Chapter 7: Layout Guides
Chapter 8: Content-Hugging & Compression-Resistance Priorities
Chapter 9: Animating Auto Layout Constraints
Chapter 10: Adaptive Layout
Chapter 11: Dynamic Type
Chapter 12: Internationalization & Localization
Chapter 13: Common Auto Layout Issues
Chapter 14: Under the Hood of Auto Layout
Chapter 15: Optimizing Auto Layout Performance
Chapter 16: Layout Prototyping with Playgrounds
Chapter 17: Auto Layout for External Displays
Chapter 18: Designing Custom Controls
Conclusion

iPhone

Post 23-May-2020 23:00

[Quote]

Red Hat RHCSA 8 Cert Guide: EX200 (Certification Guide)
Год издания: 2020
Автор: Sander van Vugt
Жанр или тематика: Компьютерная литература
Издательство: Pearson IT Certification
ISBN: 978-0-13-593813-3
Язык: Английский
Формат: PDF
Качество: Издательский макет или текст (eBook)
Интерактивное оглавление: Да
Количество страниц: 740
Описание: Learn, prepare, and practice for Red Hat RHCSA 8 (EX200) exam success with this Cert Guide from Pearson IT Certification, a leader in IT Certification learning.
  • Master Red Hat RHCSA 8 EX200 exam topics
  • Assess your knowledge with chapter-ending quizzes
  • Review key concepts with exam-preparation tasks
  • Practice with four unique practice tests
  • Learn from two full hours of video training from the author’s Red Hat Certified System Administrator (RHCSA) Complete Video Course, 3rd Edition.
Red Hat RHCSA 8 Cert Guide is a best-of-breed exam study guide. Leading Linux consultant, author, and instructor Sander van Vugt shares preparation hints and test-taking tips, helping you identify areas of weakness and improve both your conceptual knowledge and hands-on skills. Material is presented in a concise manner, focusing on increasing your understanding and retention of exam topics.

Примеры страниц

Оглавление

Introduction xxiv
Part I: Performing Basic System Management Tasks
CHAPTER 1 Installing Red Hat Enterprise Linux 3
CHAPTER 2 Using Essential Tools 29
CHAPTER 3 Essential File Management Tools 53
CHAPTER 4 Working with Text Files 81
CHAPTER 5 Connecting to Red Hat Enterprise Linux 8 99
CHAPTER 6 User and Group Management 121
CHAPTER 7 Permissions Management 143
CHAPTER 8 Confi guring Networking 167
Part II: Operating Running Systems
CHAPTER 9 Managing Software 197
CHAPTER 10 Managing Processes 233
CHAPTER 11 Working with Systemd 253
CHAPTER 12 Scheduling Tasks 271
CHAPTER 13 Confi guring Logging 285
CHAPTER 14 Managing Storage 309
CHAPTER 15 Managing Advanced Storage 339
Part III: Performing Advanced System Administration Tasks
CHAPTER 16 Basic Kernel Management 367
CHAPTER 17 Managing and Understanding the Boot Procedure 385
CHAPTER 18 Essential Troubleshooting Skills 401
CHAPTER 19 An Introduction to Bash Shell Scripting 423
Part IV: Managing Network Services
CHAPTER 20 Confi guring SSH 443
CHAPTER 21 Managing Apache HTTP Services 457
CHAPTER 22 Managing SELinux 471
CHAPTER 23 Confi guring a Firewall 497
CHAPTER 24 Accessing Network Storage 511
CHAPTER 25 Confi guring Time Services 527
CHAPTER 26 Final Preparation 541
CHAPTER 27 Theoretical Pre-Assessment Exam 545
Part V: RHCSA RHEL 8 Practice Exams
RHCSA Practice Exam A 549
RHCSA Practice Exam B 551
APPENDIX A Answers to the “Do I Know This Already?”
Quizzes and Review Questions 553
Glossary 587
Index 609
Online Elements:
RHCSA Practice Exam C
RHCSA Practice Exam D
APPENDIX B Memory Tables
APPENDIX C Memory Tables Answer Key
APPENDIX D Study Planner
Glossary

iPhone

Post 01-Jan-2020 14:55

[Quote]

Swift. Основы разработки приложений под iOS, iPadOS и macOS
Год издания: 2020
Автор: Усов В.
Издательство: Питер
ISBN: 978-5-4461-1402-3
Серия: Библиотека программиста
Язык: Русский
Формат: PDF
Качество: Издательский макет или текст (eBook)
Интерактивное оглавление: Да
Количество страниц: 497
Описание: Язык Swift молод, он растет, развивается и изменяется, хотя основные подходы к программированию и разработке уже сформировались. В новом, пятом издании книги была полностью переработана первая часть книги, что делает знакомство с языком Swift более комфортным, а весь текст актуализирован в соответствии с возможностями Swift 5.
В ходе долгого и плодотворного общения с читателями появилось множество идей, благодаря которым новое издание стало еще более полезным и насыщенным учебными материалами. Теперь вы не только изучите Swift, но и получите начальные сведения о принципах разработки полноценных приложений.
Мир Swift постоянно меняется, людей со значительным багажом знаний и опыта за плечами еще просто не существует в силу возраста языка, поэтому вы можете стать одним из первых специалистов.

Примеры страниц

Оглавление

Читателю 14
Введение 16
Часть I. Подготовка к разработке Swift-приложений 25
Глава 1. Подготовка к разработке в macOS 26
Глава 2. Подготовка к разработке в Linux 39
Глава 3. Подготовка к разработке в Windows 43
Часть II. Базовые возможности Swift 45
Глава 4. Отправная точка 46
Глава 5. Фундаментальные типы данных 77
Часть III. Контейнерные типы данных 112
Глава 6. Кортежи (Tuple) 113
Глава 7. Последовательности и коллекции 122
Глава 8. Диапазоны (Range) 132
Глава 9. Массивы (Array) 139
Глава 10. Наборы (Set) 155
Глава 11. Словари (Dictionary) 164
Глава 12. Строка — коллекция символов (String) 174
Часть IV. Основные возможности Swift 183
Глава 13. Операторы управления 184
Глава 14. Опциональные типы данных 224
Глава 15. Функции 240
Глава 16. Замыкания (closure) 261
Глава 17. Дополнительные возможности 281
Глава 18. Ленивые вычисления 290
Часть V. Введение в разработку приложений 293
Глава 19. Консольное приложение «Сумма двух чисел» 294
Глава 20. Консольная игра «Отгадай число» 309
Часть VI. Нетривиальные возможности Swift 314
Глава 21. Введение в объектно-ориентированное программирование 316
Глава 22. Перечисления 322
Глава 23. Структуры 338
Глава 24. Классы 345
Глава 25. Свойства 353
Глава 26. Сабскрипты 364
Глава 27. Наследование 370
Глава 28. Псевдонимы Any и AnyObject 379
Глава 29. Инициализаторы и деинициализаторы 382
Глава 30. Удаление экземпляров и ARC 391
Глава 31. Опциональные цепочки 399
Глава 32. Расширения 404
Глава 33. Протоколы 409
Глава 34. Разработка приложения в Xcode Playground 417
Глава 35. Универсальные шаблоны 436
Глава 36. Обработка ошибок 444
Глава 37. Нетривиальное использование операторов 451
Часть VII. Введение в мобильную разработку 455
Глава 38. Разработка приложения под iOS 456
Глава 39. Паттерны проектирования при разработке в Xcode 490
Заключение 495

iPhone

Post 18-Dec-2019 01:25

[Quote]

Unix Power Tools. 3rd Edition.
Год издания: 2002
Автор: Jerry Peek, Shelley Powers, Tim O`Reilly, Mike Loukides.
Жанр или тематика: Операционные системы
Издательство: O'Reilly Media, Inc.
ISBN: 978-0596003302
Язык: Английский
Формат: PDF
Качество: Изначально компьютерное (eBook)
Интерактивное оглавление: Да
Количество страниц: 1611
Описание: With the growing popularity of Linux and the advent of Darwin, Unix has metamorphosed into something new and exciting. No longer perceived as a difficult operating system, more and more users are discovering the advantages of Unix for the first time. But whether you are a newcomer or a Unix power user, you'll find yourself thumbing through the goldmine of information in the new edition of Unix Power Tools to add to your store of knowledge. Want to try something new? Check this book first, and you're sure to find a tip or trick that will prevent you from learning things the hard way.The latest edition of this best-selling favorite is loaded with advice about almost every aspect of Unix, covering all the new technologies that users need to know. In addition to vital information on Linux, Darwin, and BSD, Unix Power Tools 3rd Edition now offers more coverage of bash, zsh, and other new shells, along with discussions about modern utilities and applications. Several sections focus on security and Internet access. And there is a new chapter on access to Unix from Windows, addressing the heterogeneous nature of systems today. You'll also find expanded coverage of software installation and packaging, as well as basic information on Perl and Python.Unix Power Tools 3rd Edition is a browser's book...like a magazine that you don't read from start to finish, but leaf through repeatedly until you realize that you've read it all. Bursting with cross-references, interesting sidebars explore syntax or point out other directions for exploration, including relevant technical details that might not be immediately apparent. The book includes articles abstracted from other O'Reilly books, new information that highlights program tricks and gotchas, tips posted to the Net over the years, and other accumulated wisdom.Affectionately referred to by readers as "the" Unix book, UNIX Power Tools provides access to information every Unix user is going to need to know. It will help you think creatively about UNIX, and will help you get to the point where you can analyze your own problems. Your own solutions won't be far behind.

Примеры страниц

iPhone

Post 16-Oct-2019 18:20

[Quote]

UNIX. Профессиональное программирование (3-е изд.)
Год издания: 2018
Автор: W. Stevens, S. Rago / У. Стивенс, С. Раго
Издательство: СПб.: Питер
ISBN: 978-5-4461-0649-3
Серия: Для профессионалов
Язык: русский
Формат: PDF
Качество: издательский макет или текст (eBook)
Интерактивное оглавление: да
Количество страниц: 944
Описание:
Эта книга заслуженно пользуется популярностью у серьезных программистов во всем мире, поскольку содержит самую важную и практическую информацию об управлении ядрами UNIX и Linux. Без этих знаний невозможно написать эффективный и надежный код.
От основ — файлы, каталоги и процессы — вы постепенно перейдете к более сложным вопросам, таким как обработка сигналов и терминальный ввод/вывод, многопоточная модель выполнения и межпроцессное взаимодействие с применением сокетов.
В общей сложности в этой книге охвачены более 70 интерфейсов, включая функции POSIX асинхронного ввода/вывода, циклические блокировки, барьеры и семафоры POSIX.

Примеры страниц

Оглавление

Вступительное слово ко второму изданию
Предисловие
Введение
Изменения в третьем издании
Благодарности
Предисловие ко второму изданию
Введение
Изменения во втором издании
Благодарности
Предисловие к первому изданию
Введение
Стандарты UNIX
Структура книги
Примеры в книге
Перечень систем, использовавшихся для тестирования примеров
Благодарности
От издательства
Глава 1. Обзор ОС UNIX
1.1. Введение
1.2. Архитектура UNIX
1.3. Вход в систему
1.4. Файлы и каталоги
1.5. Ввод и вывод
1.6. Программы и процессы
1.7. Обработка ошибок
1.8. Идентификация пользователя
1.9. Сигналы
1.10. Представление времени
1.11. Системные вызовы и библиотечные функции
1.12. Подведение итогов
Упражнения
Глава 2. Стандарты и реализации UNIX
2.1. Введение
2.2. Стандартизация UNIX
2.2.1. ISO C
2.2.2. IEEE POSIX
2.2.3. Single UNIX Specification
2.2.4. FIPS
2.3. Реализации UNIX
2.3.1. UNIX System V Release 4
2.3.2. 4.4BSD
2.3.3. FreeBSD
2.3.4. Linux
2.3.5. Mac OS X
2.3.6. Solaris
2.3.7. Прочие версии UNIX
2.4. Связь между стандартами и реализациями
2.5. Ограничения
2.5.1. Пределы ISO C
2.5.2. Пределы POSIX
2.5.3. Пределы XSI
2.5.4. Функции sysconf, pathconf и fpathconf
2.5.5. Неопределенные пределы времени выполнения
2.6. Необязательные параметры
2.7. Макроопределения проверки особенностей
2.8. Элементарные системные типы данных
2.9. Различия между стандартами
2.10. Подведение итогов
Упражнения
Глава 3. Файловый ввод/вывод
3.1. Введение
3.2. Дескрипторы файлов
3.3. Функции open и openat
3.4. Функция creat
3.5. Функция close
3.6. Функция lseek
3.7. Функция read
3.8. Функция write
3.9. Эффективность операций ввода/вывода
3.10. Совместное использование файлов
3.11. Атомарные операции
3.12. Функции dup и dup2
3.13. Функции sync, fsync и fdatasync
3.14. Функция fcntl
3.15. Функция ioctl
3.16. /dev/fd
3.17. Подведение итогов
Упражнения
Глава 4. Файлы и каталоги
4.1. Введение
4.2. Функции stat, fstat и lstat
4.3. Типы файлов
4.4. set-user-ID и set-group-ID
4.5. Права доступа к файлу
4.6. Принадлежность новых файлов и каталогов
4.7. Функции access и faccessat
4.8. Функция umask
4.9. Функции chmod, fchmod и fchmodat
4.10. Бит sticky
4.11. Функции chown, fchown, fchownat и lchown
4.12. Размер файла
4.13. Усечение файлов
4.14. Файловые системы
4.15. Функции link, linkat, unlink, unlinkat и remove
4.16. Функции rename и renameat
4.17. Символические ссылки
4.18. Создание и чтение символических ссылок
4.19. Временные характеристики файлов
4.20. Функции futimens, utimensat и utimes
4.21. Функции mkdir, mkdirat и rmdir
4.22. Чтение каталогов
4.23. Функции chdir, fchdir и getcwd
4.24. Специальные файлы устройств
4.25. Коротко о битах прав доступа к файлам
4.26. Подведение итогов
Упражнения
Глава 5. Стандартная библиотека ввода/вывода
5.1. Введение
5.2. Потоки и объекты FILE
5.3. Стандартные потоки ввода, вывода и сообщений об ошибках
5.4. Буферизация
5.5. Открытие потока
5.6. Чтение из потока и запись в поток
5.7. Построчный ввод/вывод
5.8. Эффективность стандартных функций ввода/вывода
5.9. Ввод/вывод двоичных данных
5.10. Позиционирование в потоке
5.11. Форматированный ввод/вывод
5.12. Подробности реализации
5.13. Временные файлы
5.14. Потоки ввода/вывода в памяти
5.15. Альтернативы стандартной библиотеке ввода/вывода
5.16. Подведение итогов
Упражнения
Глава 6. Информация о системе и файлы данных
6.1. Введение
6.2. Файл паролей
6.3. Теневые пароли
6.4. Файл групп
6.5. Идентификаторы дополнительных групп
6.6. Различия реализаций
6.7. Прочие файлы данных
6.8. Учет входов в систему
6.9. Информация о системе
6.10. Функции даты и времени
6.11. Подведение итогов
Упражнения
Глава 7. Окружение процесса
7.1. Введение
7.2. Функция main
7.3. Завершение работы процесса
7.4. Аргументы командной строки
7.5. Список переменных окружения
7.6. Организация памяти программы на языке C
7.7. Разделяемые библиотеки
7.8. Распределение памяти
7.9. Переменные окружения
7.10. Функции setjmp и longjmp
7.11. Функции getrlimit и setrlimit
7.12. Подведение итогов
Упражнения
Глава 8. Управление процессами
8.1. Введение
8.2. Идентификаторы процесса
8.3. Функция fork
8.4. Функция vfork
8.5. Функции exit
8.6. Функции wait и waitpid
8.7. Функция waitid
8.8. Функции wait3 и wait4
8.9. Гонка за ресурсами
8.10. Функции exec
8.11. Изменение идентификаторов пользователя и группы
8.12. Интерпретируемые файлы
8.13. Функция system
8.14. Учет использования ресурсов процессами
8.15. Идентификация пользователя
8.16. Планирование процессов
8.17. Временные характеристики процесса
8.18. Подведение итогов
Упражнения
Глава 9. Взаимоотношения между процессами
9.1. Введение
9.2. Вход с терминала
9.3. Вход в систему через сетевое соединение
9.4. Группы процессов
9.5. Сеансы
9.6. Управляющий терминал
9.7. Функции tcgetpgrp, tcsetpgrp и tcgetsid
9.8. Управление заданиями
9.9. Выполнение программ командной оболочкой
9.10. Осиротевшие группы процессов
9.11. Реализация в FreeBSD
9.12. Подведение итогов
Упражнения
Глава 10. Сигналы
10.1. Введение
10.2. Концепция сигналов
10.3. Функция signal
10.4. Ненадежные сигналы
10.5. Прерванные системные вызовы
10.6. Реентерабельные функции
10.7. Семантика сигнала SIGCLD
10.8. Надежные сигналы. Терминология и семантика
10.9. Функции kill и raise
10.10. Функции alarm и pause
10.11. Наборы сигналов
10.12. Функция sigprocmask
10.13. Функция sigpending
10.14. Функция sigaction
10.15. Функции sigsetjmp и siglongjmp
10.16. Функция sigsuspend
10.17. Функция abort
10.18. Функция system
10.19. Функции sleep, nanosleep и clock_nanosleep
10.20. Функция sigqueue
10.21. Сигналы управления заданиями
10.22. Имена и номера сигналов
10.23. Подведение итогов
Упражнения
Глава 11. Потоки
11.1. Введение
11.2. Понятие потоков
11.3. Идентификация потоков
11.4. Создание потока
11.5. Завершение потока
11.6. Синхронизация потоков
11.6.1. Мьютексы
11.6.2. Предотвращение тупиковых ситуаций
11.6.3. Функция pthread_mutex_timedlock
11.6.4. Блокировки чтения-записи
11.6.5. Блокировки чтения-записи с тайм-аутом
11.6.6. Переменные состояния
11.6.7. Циклические блокировки
11.6.8. Барьеры
11.7. Подведение итогов
Упражнения
Глава 12. Управление потоками
12.1. Введение
12.2. Пределы для потоков
12.3. Атрибуты потока
12.4. Атрибуты синхронизации
12.4.1. Атрибуты мьютексов
12.4.2. Атрибуты блокировок чтения-записи
12.4.3. Атрибуты переменных состояния
12.4.4. Атрибуты барьеров
12.5. Реентерабельность
12.6. Локальные данные потоков
12.7. Принудительное завершение потоков
12.8. Потоки и сигналы
12.9. Потоки и fork
12.10. Потоки и операции ввода/вывода
12.11. Подведение итогов
Упражнения
Глава 13. Процессы-демоны
13.1. Введение
13.2. Характеристики демонов
13.3. Правила программирования демонов
13.4. Журналирование ошибок
13.5. Демоны в единственном экземпляре
13.6. Соглашения для демонов
13.7. Модель клиент-сервер
13.8. Подведение итогов
Упражнения
Глава 14. Расширенные операции ввода/вывода
14.1. Введение
14.2. Неблокирующий ввод/вывод
14.3. Блокировка записей
14.4. Мультиплексирование ввода/вывода
14.4.1. Функции select и pselect
14.4.2. Функция poll
14.5. Асинхронный ввод/вывод
14.5.1. Асинхронный вывод в System V
14.5.2. Асинхронный ввод/вывод в BSD
14.5.3. Асинхронный ввод/вывод в POSIX
14.6. Функции readv и writev
14.7. Функции readn и writen
14.8. Операции ввода/вывода с отображаемой памятью
14.9. Подведение итогов
Упражнения
Глава 15. Межпроцессные взаимодействия
15.1. Введение
15.2. Неименованные каналы
15.3. Функции popen и pclose
15.4. Сопроцессы
15.5. FIFO
15.6. XSI IPC
15.6.1. Идентификаторы и ключи
15.6.2. Структура прав доступа
15.6.3. Конфигурируемые пределы
15.6.4. Преимущества и недостатки
15.7. Очереди сообщений
15.8. Семафоры
15.9. Разделяемая память
15.10. Семафоры POSIX
15.11. Свойства взаимодействий типа клиент-сервер
15.12. Подведение итогов
Упражнения
Глава 16. Межпроцессные взаимодействия в сети: сокеты
16.1. Введение
16.2. Дескрипторы сокетов
16.3. Адресация
16.3.1. Порядок байтов
16.3.2. Форматы адресов
16.3.3. Определение адреса
16.3.4. Присваивание адресов сокетам
16.4. Установка соединения
16.5. Передача данных
16.6. Параметры сокетов
16.7. Экстренные данные
16.8. Неблокирующий и асинхронный ввод/вывод
16.9. Подведение итогов
Упражнения
Глава 17. Расширенные возможности IPC
17.1. Введение
17.2. Сокеты домена UNIX
17.3. Уникальные соединения
17.4. Передача дескрипторов файлов
17.5. Сервер открытия файлов, версия 1
17.6. Сервер открытия файлов, версия 2
17.7. Подведение итогов
Упражнения
Глава 18. Терминальный ввод/вывод
18.1. Введение
18.2. Обзор
18.3. Специальные символы ввода
18.4. Получение и изменение характеристик терминала
18.5. Флаги режимов терминала
18.6. Команда stty
18.7. Функции для работы со скоростью передачи
18.8. Функции управления линией связи
18.9. Идентификация терминала
18.10. Канонический режим
18.11. Неканонический режим
18.12. Размер окна терминала
18.13. termcap, terminfo и curses
18.14. Подведение итогов
Упражнения
Глава 19. Псевдотерминалы
19.1. Введение
19.2. Обзор
19.3. Открытие устройств псевдотерминалов
19.4. Функция pty_fork
19.5. Программа pty
19.6. Использование программы pty
19.7. Дополнительные возможности
19.8. Подведение итогов
Упражнения
Глава 20. Библиотека базы данных
20.1. Введение
20.2. Предыстория
20.3. Библиотека
20.4. Обзор реализации
20.5. Централизация или децентрализация?
20.6. Одновременный доступ
20.7. Сборка библиотеки
20.8. Исходный код
20.9. Производительность
20.10. Подведение итогов
Упражнения
Глава 21. Взаимодействие с сетевым принтером
21.1. Введение
21.2. Протокол печати через Интернет
21.3. Протокол передачи гипертекста
21.4. Очередь печати
21.5. Исходный код
21.6. Подведение итогов
Упражнения
Приложение А. Прототипы функций
Приложение В. Различные исходные тексты
Приложение С. Варианты решения некоторых упражнений

iPhone

Post 16-Oct-2019 05:30

[Quote]

Saving Data on Android (1st Edition)
Год издания: 2019
Автор: Jennifer Bailey, Aldo Olivares Dominguez, Dean Djermanovic
Издательство: Razeware LLC
ISBN: 978-1942878896
Язык: Английский
Формат: PDF/EPUB
Качество: Издательский макет или текст (eBook)
Количество страниц: 290
Описание: A book that will teach you to persist data on Android — saving locally or remotely — along with the modern techniques for synchronization, allowing your app to be reactive and always up-to-date.

Примеры страниц

Оглавление

Book License
Who This Book Is For
What You Need
Book Source Code & Forums
About the Cover
Chapter 1: Using Files
Chapter 2: Shared Preferences
Chapter 3: SQLite Database
Chapter 4: ContentProvider
Chapter 5: Room Architecture
Chapter 6: Entity Definitions
Chapter 7: Mastering Relations
Chapter 8: The DAD Pattern
Chapter 9: Using Room with Google's Architecture Components
Chapter 10: Migrations with Room
Chapter 11: Firebase Overview
Chapter 12: Introduction to Firebase Realtime Database
Chapter 13: Reading to & Writing from Realtime Database
Chapter 14: Realtime Database Offline Capabilities
Chapter 15: Usage & Performance
Chapter 16: Introduction to Cloud Firestore
Chapter 17: Managing Data with Cloud Firestore
Chapter 18: Reading Data from Cloud Firestore
Chapter 19: Securing Data in Cloud Firestore
Chapter 20: Cloud Storage
Conclusion
Доп. информация:
Source codes:
https://yadi.sk/d/3SN6IRLcI_roVw
https://drive.google.com/open?id=1EjCFo-2XJt7UpINa-CrjThMRzjcJn2dJ

iPhone

Post 16-Oct-2019 05:30

[Quote]

SwiftUI by Tutorials (1st Edition)
Год издания: 2019
Автор: Antonio Bello, Phil Laszkowicz, Bill Morefield и др.
Издательство: Razeware LLC
ISBN: Отсутствует
Язык: Английский
Формат: PDF/EPUB
Качество: Издательский макет или текст (eBook)
Количество страниц: 362
Описание: Build fluid and engaging declarative UI for your apps — using less code — with SwiftUI!
With SwiftUI, you can define what your app’s UI should do with concise, declarative language, and say goodbye to tons of confusing UIKit code.
Build modern, responsive UI and animations that look great on iOS, iPadOS, watchOS, tvOS or even macOS!

Примеры страниц

Оглавление

Book License
Book Source Code & Forums
What You Need
About the Cover
Chapter 1: Introduction
Chapter 2: Getting Started
Chapter 3: Understanding SwiftUl
Chapter 4: Integrating SwiftUl
Chapter 5: The Apple Ecosystem
Chapter 6: Intro to Controls: Text & Image
Chapter 7: State & Data Flow
Chapter 8: Controls and User Input
Chapter 9: Introducing Stacks and Containers
Chapter 10: Lists & Navigation
Chapter 11: Testing and Debugging
Chapter 12: Handling User Input
Chapter 13: Drawing and Custom Graphics
Chapter 14: Animations
Chapter 15: Complex Interfaces
Conclusion
Доп. информация:
Source codes:
https://yadi.sk/d/3SN6IRLcI_roVw
https://drive.google.com/open?id=1EjCFo-2XJt7UpINa-CrjThMRzjcJn2dJ

iPhone

Post 16-Oct-2019 05:30

[Quote]

Catalyst by Tutorials (1st Edition)
Год издания: 2019
Автор: Marin Bencevic, Nick Bonatsakis, Andy Pereira
Издательство: Razeware LLC
ISBN: Отсутствует
Язык: Английский
Формат: PDF/EPUB
Качество: Издательский макет или текст (eBook)
Количество страниц: 196
Описание: Run iOS apps natively on macOS with Catalyst!
The Catalyst framework lets you port your iOS apps to macOS. But like everything else with Apple, it’s not always as straightforward as you’d like.
This book will show you how to design your apps to work well on macOS, what you can and can’t port between the two platforms, and any other "gotchas" to keep an eye out for when building apps under Catalyst.

Примеры страниц

Оглавление

Book License
What You Need
Book Source Code & Forums
About the Cover
Introduction
Chapter 1: The Checkbox
Chapter 2: Migrating to Split View Controller
Chapter 3: Drag & Drop
Chapter 4: Setting the Scene(s)
Chapter 5: Adding Some Context
Chapter 6: The Keyboard
Chapter 7: Preferences & Settings Bundle
Chapter 8: Making Your App Feel at Home on macOS
Chapter 9: The Mouse
Chapter 10: Barista Training: Menu Bar
Chapter 11: Barista Training: Toolbar
Chapter 12: Barista Training: The Touch Bar
Chapter 13: Releasing on the App Store
Chapter 14: Third-Party Distribution
Conclusion
Доп. информация:
Source codes:
https://yadi.sk/d/3SN6IRLcI_roVw
https://drive.google.com/open?id=1EjCFo-2XJt7UpINa-CrjThMRzjcJn2dJ

iPhone

Post 16-Oct-2019 05:30

[Quote]

Combine: Asynchronous Programming with Swift (Early Access Edition)
Год издания: 2019
Автор: Scott Gardner, Shai Mishali, Florent Pillet и др.
Издательство: Razeware LLC
ISBN: Отсутствует
Язык: Английский
Формат: PDF/EPUB
Качество: Издательский макет или текст (eBook)
Количество страниц: 260
Описание: The best book to master declarative asynchronous programming with Swift using the Combine framework!
The introduction of Combine into the Swift ecosystem now gives you a native way to manage asynchronous events in Swift, meaning you don’t have to rely on third-party reactive frameworks for event-driven systems.

Примеры страниц

Оглавление

Early Access Edition
What You Need
Book License
Book Source Code & Forums
Chapter 1: Hello, Combine!
Chapter 2: Publishers & Subscribers
Chapter 3: Transforming Operators
Chapter 4: Filtering Operators
Chapter 5: Combining Operators
Chapter 6: Time Manipulation Operators
Chapter 7: Sequence Operators
Chapter 8: In Practice Project "Collage"
Chapter 9: Combine for Networking
Chapter 10: Debugging Combine
Chapter 11: Combine Timers
Chapter 12: Key-Value Observing
Chapter 13: Resources in Combine
Chapter 14: In Practice Project "News"
Conclusion
Доп. информация:
Source codes:
https://yadi.sk/d/3SN6IRLcI_roVw
https://drive.google.com/open?id=1EjCFo-2XJt7UpINa-CrjThMRzjcJn2dJ

iPhone

Post 25-Aug-2019 20:20

[Quote]

Ubuntu Linux c нуля
Год издания: 2018
Автор: Сергей Волох
Издательство: БХВ-Петербург
ISBN: 978-5-9775-3953-1
Язык: Русский
Формат: PDF
Качество: Отсканированные страницы + слой распознанного текста
Интерактивное оглавление: Нет
Количество страниц: 402
Описание: С позиции пользователя рассмотрена работа в популярной операционной системе Ubuntu Linux, в том числе установка и настройка системы, драйверов для работы с принтерами, сканерами и другим периферийным оборудованием. Описан процесс установки программ и настройка подключения к Интернету. Даны советы по использованию графического режима и командной строки. Описаны системные службы Ubuntu Linux, освещены вопросы по пользовательским правам доступа. Приведена информация по поиску неисправностей работы сети и устранению сбоев системы. Материал книги актуален и применим для работы с другими Linux-подобными операционными системами.

Примеры страниц

Мои остальные раздачи -

iPhone

Post 24-Jul-2019 19:15

[Quote]

Linux Driver Development for Embedded Processors, Second Edition
Год издания: 2018
Автор: Alberto Liberal de los Rios
Жанр или тематика: Linux programming
Издательство: Independently published
ISBN: 9781729321829
Язык: Английский
Формат: PDF
Качество: Изначально компьютерное (eBook)
Интерактивное оглавление: Да
Количество страниц: 589
Описание: From Amazon.com:
The flexibility of embedded Linux, the availability of powerful, energy efficient processors designed for embedded computing and the low cost of new processors are encouraging many industrial companies to come up with new developments based on embedded processors. Current engineers have powerful tools in their hands for developing applications previously unimagined, but they need to understand the countless features that Linux offers today. This book will teach you how to develop device drivers for Device Tree embedded Linux systems. You will learn how to write different types of Linux drivers, as well as the appropriate Application Program Interfaces (APIs) and methods to interface with kernel and user spaces.
This book is meant to be practical, but also provides an important theoretical base. Nearly thirty drivers are written and ported to three different processors. You can choose between the NXP i.MX7D, Microchip SAMA5D2 and Broadcom BCM2837 processors to develop and test the drivers, whose implementation is described in detail in the practical lab sections of the book. Before you start reading, I encourage you to acquire one of these processor boards whenever you have access to some GPIOs, and at least one SPI and I2C controller. The hardware configurations of the different evaluation boards used to develop the drivers are explained in detail throughout this book; one of the boards used to implement the drivers is the famous Raspberry PI 3 Model B board.
You will learn how to develop drivers, from the simplest ones that do not interact with any external hardware, to drivers that manage different kind of devices: accelerometers, DACs, ADCs, RGB LEDs, Multi-Display LED controllers, I/O expanders, buttons, and USB HID devices. You will also develop DMA drivers, drivers that manage interrupts, and drivers that write/read on the internal registers of the processor to control external devices. To ease the development of some of these drivers, you will use different types of frameworks: Miscellaneous framework, LED framework, UIO framework, Input framework and the IIO industrial framework. This second edition has been updated to the v4.9 LTS kernel.
Since the end of March 2019, a new chapter and an appendix have been added to the text of the book. These are: Chapter 13, “Linux USB Device Drivers” and Appendix, “Porting Kernel Modules to the Microchip SAMA5D27-SOM1”. These two new chapters can be downloaded from the Github of this book for readers who have acquired the book before that date. In the Chapter 13, you will learn how to create a fully functional USB HID device based on the Microchip PIC32MX microcontroller that will send/receive data to/from a Linux USB Host device based on the Microchip SAMA5D27 processor; several custom Linux USB device drivers will be developed throughout this chapter. The Appendix describes the hardware settings for the ATSAMA5D27-SOM1-EK1 board that are needed to test the practical labs described throughout this book. To run the labs on this board, the SAMA5D27-SOM1 drivers based on the v4.14 LTS kernel and the SAMA5D27-SOM1 device tree settings can be downloaded from the GitHub repository of this book.

Примеры страниц



Оглавление

Preface..................................................................................................................13
Chapter 1: Building the System..........................................................................19
Bootloader..............................................................................................................20
Linux Kernel............................................................................................................22
System Call Interface and C Runtime Library.........................................................25
System Shared Libraries........................................................................................26
Root Filesystem......................................................................................................27
Linux Boot Process.................................................................................................28
Building a Linux Embedded System.......................................................................30
Setting up Ethernet Communication.......................................................................31
Building a Linux Embedded System for the NXP i.MX7D Processor.....................32
Introduction.............................................................................................................32
Host Packages.......................................................................................................33
Setting up the Repo Utility......................................................................................33
Yocto Project Setup and Image Building................................................................33
Working Outside of Yocto.......................................................................................36
Building the Linux Kernel........................................................................................38
Installing a TFTP Server.........................................................................................41
Installing a NFS Server...........................................................................................42
Setting the U-Boot Environment Variables.............................................................42
Building a Linux Embedded System for the Microchip
SAMA5D2 Processor..............................................................................................43
Introduction.............................................................................................................43
Host Packages.......................................................................................................44
Yocto Project Setup and Image Building................................................................44
Working Outside of Yocto.......................................................................................46
Building the Linux Kernel........................................................................................47
Installing a TFTP Server.........................................................................................49
Installing a NFS Server...........................................................................................49
Setting the U-Boot Environment Variables.............................................................50
Building a Linux Embedded System for the Broadcom
BCM2837 Processor...............................................................................................50
Raspbian................................................................................................................50
Building the Linux Kernel........................................................................................51
Copying Files to your Raspberry Pi........................................................................54
Working with Eclipse...............................................................................................55
Eclipse Configuration for Working with Kernel Sources.........................................56
Eclipse Configuration for Developing Linux Drivers...............................................67
Chapter 2: The Linux Device and Driver Model.................................................73
Bus Core Drivers....................................................................................................74
Bus Controller Drivers.............................................................................................76
Device Drivers........................................................................................................77
Introduction to the Device Tree...............................................................................78
Chapter 3: The Simplest Drivers.........................................................................83
Licensing.................................................................................................................84
LAB 3.1: "helloworld" Module.................................................................................84
Listing 3-1: helloworld_imx.c...................................................................................85
Listing 3-2: Makefile................................................................................................86
helloworld_imx.ko Demonstration...........................................................................86
LAB 3.2: "helloworld with parameters" Module.......................................................87
Listing 3-3: helloworld_imx_with_parameters.c.......................................................88
helloworld_imx_with_parameters.ko Demonstration...............................................88
LAB 3.3: "helloworld timing" Module.......................................................................88
Listing 3-4: helloworld_imx_with_timing.c...............................................................89
helloworld_imx_with_timing.ko Demonstration.......................................................90
Chapter 4: Character Drivers..............................................................................91
LAB 4.1: "helloworld character" Module.................................................................93
Registration and Unregistration of Character Devices...........................................94
Listing 4-1: helloworld_imx_char_driver.c...............................................................98
Listing 4-2: Makefile..............................................................................................102
Listing 4-3: ioctl_test.c..........................................................................................102
helloworld_imx_char_driver.ko Demonstration.....................................................102
Add the Module to the Kernel Build......................................................................103
Creating Device Files with devtmpfs.....................................................................104
LAB 4.2: "class character" Module.......................................................................105
Listing 4-4: helloworld_imx_class_driver.c............................................................107
helloworld_imx_class_driver.ko Demonstration....................................................109
Miscellaneous Character Driver............................................................................109
Registering a Minor Number.................................................................................110
LAB 4.3: "miscellaneous character" Module.........................................................111
Listing 4-5: misc_imx_driver.c...............................................................................111
misc_imx_driver.ko Demonstration.......................................................................113
Chapter 5: Platform Drivers...............................................................................115
LAB 5.1: "platform device" Module.......................................................................117
Listing 5-1: hellokeys_imx.c..................................................................................120
hellokeys_imx.ko Demonstration..........................................................................122
Documentation to Interact with the Hardware......................................................123
Hardware Naming Convention..............................................................................123
Pin Controller........................................................................................................124
Pin Control Subsystem.........................................................................................127
Device Tree Pin Controller Bindings.....................................................................134
GPIO Controller Driver..........................................................................................138
GPIO Descriptor Consumer Interface...................................................................140
Obtaining and Disposing GPIOs...........................................................................141
Using GPIOs.........................................................................................................141
GPIOs Mapped to IRQs........................................................................................143
GPIOs in Device Tree...........................................................................................143
Exchanging Data between Kernel and User Space.............................................144
MMIO (Memory-Mapped I/O) Device Access.......................................................145
LAB 5.2: "RGB LED platform device" Module......................................................147
LAB 5.2 Hardware Description for the i.MX7D Processor....................................147
LAB 5.2 Hardware Description for the SAMA5D2 Processor...............................149
LAB 5.2 Hardware Description for the BCM2837 Processor................................151
LAB 5.2 Device Tree for the i.MX7D Processor...................................................153
LAB 5.2 Device Tree for the SAMA5D2 Processor..............................................156
LAB 5.2 Device Tree for the BCM2837 Processor...............................................159
LAB 5.2 Code Description of the "RGB LED platform device" Module.................161
Listing 5-2: ledRGB_sam_platform.c....................................................................166
ledRGB_sam_platform.ko Demonstration.............................................................171
Platform Driver Resources....................................................................................172
Linux LED Class...................................................................................................174
LAB 5.3: "RGB LED class" Module.......................................................................176
LAB 5.3 DT for the i.MX7D, SAMA5D2 and BCM2837 Processors.....................176
LAB 5.3 Code Description of the "RGB LED class" Module.................................180
Listing 5-3: ledRGB_sam_class_platform.c..........................................................184
ledRGB_sam_class_platform.ko Demonstration...................................................188
Platform Device Drivers in the User Space..........................................................188
User Defined I/O: UIO...........................................................................................190
How UIO Works....................................................................................................192
Kernel UIO API.....................................................................................................193
LAB 5.4: "LED UIO platform" Module...................................................................195
LAB 5.4 DT for the i.MX7D, SAMA5D2 and BCM2837 Processors.....................195
LAB 5.4 Code Description of the "LED UIO platform" Module.............................197
Listing 5-4: led_sam_UIO_platform.c....................................................................199
Listing 5-5: UIO_app.c..........................................................................................201
led_sam_UIO_platform.ko with UIO_app Demonstration......................................203
Chapter 6: I2C Client Drivers.............................................................................205
The Linux I2C Subsystem.....................................................................................206
Writing I2C Client Drivers.....................................................................................210
I2C Client Driver Registration...............................................................................210
Declaration of I2C Devices in Device Tree...........................................................212
LAB 6.1: "I2C I/O expander device" Module.........................................................214
LAB 6.1 Hardware Description for the i.MX7D Processor....................................214
LAB 6.1 Hardware Description for the SAMA5D2 Processor...............................214
LAB 6.1 Hardware Description for the BCM2837 Processor................................216
LAB 6.1 Device Tree for the i.MX7D Processor...................................................216
LAB 6.1 Device Tree for the SAMA5D2 Processor..............................................218
LAB 6.1 Device Tree for the BCM2837 Processor...............................................220
LAB 6.1 Code Description of the "I2C I/O expander device" Module...................221
Listing 6-1: io_imx_expander.c.............................................................................224
io_imx_expander.ko Demonstration......................................................................228
The Sysfs Filesystem............................................................................................229
The Kobject Infrastructure....................................................................................230
LAB 6.2: "I2C multidisplay LED" Module..............................................................233
LAB 6.2 Hardware Description for the i.MX7D Processor....................................235
LAB 6.2 Hardware Description for the SAMA5D2 Processor...............................235
LAB 6.2 Hardware Description for the BCM2837 Processor................................235
LAB 6.2 Device Tree for the i.MX7D Processor...................................................235
LAB 6.2 Device Tree for the SAMA5D2 Processor..............................................237
LAB 6.2 Device Tree for the BCM2837 Processor...............................................239
Unified Device Properties Interface for ACPI and Device Tree............................240
LAB 6.2 Code Description of the "I2C multidisplay LED" Module........................242
Listing 6-2: ltc3206_imx_led_class.c.....................................................................246
ltc3206_imx_led_class.ko Demonstration.............................................................254
Chapter 7: Handling Interrupts in Device Drivers...........................................257
Linux Kernel IRQ Domain for GPIO Controllers...................................................260
Device Tree Interrupt Handling.............................................................................268
Requesting Interrupts in Linux Device Drivers......................................................272
LAB 7.1: "button interrupt device" Module............................................................274
LAB 7.1 Hardware Description for the i.MX7D Processor....................................274
LAB 7.1 Hardware Description for the SAMA5D2 Processor...............................274
LAB 7.1 Hardware Description for the BCM2837 Processor................................274
LAB 7.1 Device Tree for the i.MX7D Processor...................................................274
LAB 7.1 Device Tree for the SAMA5D2 Processor..............................................276
LAB 7.1 Device Tree for the BCM2837 Processor...............................................277
LAB 7.1 Code Description of the "button interrupt device" Module......................278
Listing 7-1: int_imx_key.c......................................................................................280
int_imx_key.ko Demonstration..............................................................................282
Deferred Work......................................................................................................283
Softirqs.................................................................................................................284
Tasklets................................................................................................................286
Timers...................................................................................................................286
Threaded Interrupts..............................................................................................290
Workqueues.........................................................................................................292
Locking in the Kernel............................................................................................296
Locks and Uniprocessor Kernels..........................................................................297
Sharing Spinlocks between Interrupt and Process Context.................................297
Locking in User Context.......................................................................................298
Sleeping in the Kernel...........................................................................................298
LAB 7.2: "sleeping device" Module.......................................................................300
LAB 7.2 Device Tree for the i.MX7D Processor...................................................301
LAB 7.2 Device Tree for the SAMA5D2 Processor..............................................302
LAB 7.2 Device Tree for the BCM2837 Processor...............................................303
LAB 7.2 Code Description of the "sleeping device" Module.................................305
Listing 7-2: int_imx_key_wait.c..............................................................................308
int_imx_key_wait.ko Demonstration......................................................................312
Kernel Threads.....................................................................................................312
LAB 7.3: "keyled class" Module............................................................................313
LAB 7.3 Hardware Description for the i.MX7D Processor....................................314
LAB 7.3 Hardware Description for the SAMA5D2 Processor...............................314
LAB 7.3 Hardware Description for the BCM2837 Processor................................315
LAB 7.3 Device Tree for the i.MX7D Processor...................................................316
LAB 7.3 Device Tree for the SAMA5D2 Processor..............................................319
LAB 7.3 Device Tree for the BCM2837 Processor...............................................322
LAB 7.3 Code Description of the "keyled class" Module......................................324
Listing 7-3: keyled_imx_class.c.............................................................................331
keyled_imx_class.ko Demonstration.....................................................................343
Chapter 8: Allocating Memory with Linux Drivers..........................................345
Walking ARM MMU Translation Tables................................................................346
Linux Address Types............................................................................................353
User Process Virtual to Physical Memory Mapping..............................................354
Kernel Virtual to Physical Memory Mapping.........................................................355
Kernel Memory Allocators.....................................................................................357
PAGE Allocator.....................................................................................................357
Page Allocator API...............................................................................................358
SLAB Allocator.....................................................................................................358
SLAB Allocator API...............................................................................................361
Kmalloc Allocator..................................................................................................362
LAB 8.1: "linked list memory allocation" Module ........................................................363
Listing 8-1: linkedlist_imx_platform.c ...........................................................................366
linkedlist_imx_platform.ko Demonstration ...................................................................371
Chapter 9: Linux DMA in Device Drivers..........................................................373
Cache Coherency.................................................................................................373
Linux DMA Engine API.........................................................................................375
Types of DMA Mappings......................................................................................378
LAB 9.1: "streaming DMA" Module.......................................................................382
Listing 9-1: sdma_imx_m2m.c..............................................................................390
sdma_imx_m2m.ko Demonstration.......................................................................395
DMA Scather/Gather Mappings............................................................................396
LAB 9.2: "scatter/gather DMA device" Module.....................................................397
Listing 9-2: sdma_imx_sg_m2m.c.........................................................................400
sdma_imx_sg_m2m.ko Demonstration.................................................................407
DMA from User Space..........................................................................................407
LAB 9.3: "DMA from user space" Module.............................................................409
Listing 9-3: sdma_imx_mmap.c............................................................................411
Listing 9-4: sdma.c................................................................................................416
sdma_imx_mmap.ko Demonstration.....................................................................417
Chapter 10: Input Subsystem Framework for Device Drivers........................419
Input Subsystem Drivers.......................................................................................420
LAB 10.1: "input subsystem accelerometer" Module............................................423
Device Tree..........................................................................................................425
Input Framework as an I2C Interaction................................................................426
Input Framework as an Input Device....................................................................428
Listing 10-1: i2c_imx_accel.c................................................................................431
i2c_imx_accel.ko Demonstration..........................................................................433
Using SPI with Linux.............................................................................................435
The Linux SPI Subsystem....................................................................................437
Writing SPI Client Drivers.....................................................................................440
SPI Client Driver Registration...............................................................................440
Declaration of SPI Devices in Device Tree...........................................................442
LAB 10.2: "SPI accel input device" Module..........................................................446
LAB 10.2 Hardware Description for the i.MX7D Processor..................................446
LAB 10.2 Hardware Description for the SAMA5D2 Processor.............................447
LAB 10.2 Hardware Description for the BCM2837 Processor..............................447
LAB 10.2 Device Tree for the i.MX7D Processor.................................................447
LAB 10.2 Device Tree for the SAMA5D2 Processor............................................449
LAB 10.2 Device Tree for the BCM2837 Processor.............................................451
LAB 10.2 Code Description of the "SPI accel input device" Module....................451
Listing 10-2: adxl345_imx.c..................................................................................462
adxl345_imx.ko Demonstration.............................................................................476
Chapter 11: Industrial I/O Subsystem for Device Drivers...............................479
IIO Device Sysfs Interface....................................................................................481
IIO Device Channels.............................................................................................481
The iio_info Structure............................................................................................484
Buffers..................................................................................................................485
IIO Buffer Sysfs Interface.....................................................................................485
IIO Buffer Setup....................................................................................................485
Triggers................................................................................................................487
Triggered Buffers..................................................................................................487
Industrial I/O Events.............................................................................................489
Delivering IIO Events to User Space....................................................................492
IIO Utils.................................................................................................................494
LAB 11.1: "IIO subsystem DAC" Module..............................................................494
Device Tree..........................................................................................................495
Industrial Framework as an I2C Interaction..........................................................497
Industrial Framework as an IIO Device................................................................498
Listing 11-1: ltc2607_imx_dual_device.c...............................................................504
LAB 11.2: "IIO subsystem DAC" Module with "SPIDEV dual ADC user"
Application............................................................................................................508
LAB 11.2 Hardware Description for the i.MX7D Processor..................................510
LAB 11.2 Hardware Description for the SAMA5D2 Processor.............................510
LAB 11.2 Hardware Description for the BCM2837 Processor..............................510
LAB 11.2 Device Tree for the i.MX7D Processor.................................................511
LAB 11.2 Device Tree for the SAMA5D2 Processor............................................511
LAB 11.2 Device Tree for the BCM2837 Processor.............................................512
Listing 11-2: LTC2422_spidev.c...........................................................................512
ltc2607_imx_dual_device.ko with LTC2422_spidev Demonstration.....................516
LAB 11.3: "IIO subsystem ADC" Module..............................................................518
Device Tree..........................................................................................................518
Industrial Framework as a SPI Interaction............................................................520
Industrial Framework as an IIO Device................................................................521
Listing 11-3: ltc2422_imx_dual.c...........................................................................524
LTC2422_app User Space Application.................................................................526
Listing 11-4: ltc2422_app.c...................................................................................526
ltc2422_imx_dual.ko with ltc2422_app Demonstration.........................................529
LAB 11.4: "IIO subsystem ADC with hardware triggering" Module.......................529
LAB 11.4 DT for the i.MX7D, SAMA5D2 and BCM2837 Processors...................530
Sleep and Wake up in the Driver..........................................................................534
Interrupt Management..........................................................................................535
Listing 11-5: ltc2422_imx_trigger.c.......................................................................536
ltc2422_imx_trigger.ko with LTC2422_app Demonstration..................................540
Chapter 12: Using the Regmap API in Linux Device Drivers.........................541
Implementing Regmap..........................................................................................543
LAB 12.1: "SPI regmap IIO device" Module.........................................................546
Listing 12-1: adxl345_imx_iio.c.............................................................................557
adxl345_imx_iio.ko Demonstration.......................................................................569
References..........................................................................................................573
Index....................................................................................................................575
 

The time now is: Today 19:09

All times are GMT + 4 Hours