USSR SHOP »
Магазин » Ядро ОС Linux
Купить Ядро ОС Linux
Описание товара:
Руководство системного программиста
Глава 1 6
1.1 Типографские соглашения. 6
1.2 Необходимые знания для изучения книги. 7
1.3 Наставление читателю. 7
Глава 2. 8
2.2.1 Пример - vgalib. 11
2.2.2 Пример : Преобразование мыши. 13
2.3 Основы драйверов устройств. 13
2.3.1 Область имени (именная область). 14
2.3.2 Выделение памяти. 14
2.3.3 Символьные и блочные устройства. 15
2.3.4. Прерывание или поочередное опрашивание устройств ? 16
2.3.5. Механизмы замораживания и активизации. 18
2.3.5.1.Усложненный механизм заморозки. 20
2.3.6. VFS. 20
2.3.6.1. Функция lseek(). 21
2.3.6.2. Функции read() и write(). 22
2.3.6.3 Функция readdir(). 23
2.3.6.4 Функция select(). 23
2.3.6.5 Функция ioctl(). 24
2.3.6.6.Функция mmap(). 26
2.3.6.7. Функции open() и release(). 26
2.3.6.8 Функция init(). 27
2.4 Cимвольные устройства. 28
2.4.1. Инициализация. 28
2.4.2 Прерывания или последовательный вызов ? 29
2.5 Дpайвеpы для блочных устpойств. 32
2.5.1 Инициализация 32
2.5.1.1 Файл blk.h 33
2.5.1.2. Опознание комплектующих PS. 34
2.5.2. Механизм кеширования буфера. 34
2.5.3. Strategy Routine. 35
2.6. Функции поддержки. 36
2.7. Написание драйвера SCSI. 52
2.7.1. Зачем нужны драйверы SCSI. 52
2.7.2. Что такое SCSI ? 52
2.7.2.1. Термины SCSI. 53
- 3 -
2.7.3. Команды SCSI. 56
2.7.4. С чего начинать ? 58
2.7.5. Введение: сбор инструментов. 58
2.7.6. Интерфейс SCSI в Linux. 59
2.7.6. Структура Scsi_Host. 59
2.7.7.1. Переменные в структуре Scsi_Host. 60
2.7.7.1.1. name 61
2.7.7.1.2. can_queue 61
2.7.7.1.3. this_id 61
2.7.7.1.4. sg_tablesize 61
2.7.7.1.5. cmd_per_lun 62
2.7.7.1.6. present 62
2.7.7.1.7. unchecked_isa_dma 63
2.7.7.2. Функции структуры Scsi_Host. 63
2.7.7.2.1. detect() 63
2.7.7.2.1.1. Запрос IRQ. 65
2.7.7.2.2. Запрос канала DMA. 67
2.7.7.2.3. info()
Глава 1 6
1.1 Типографские соглашения. 6
1.2 Необходимые знания для изучения книги. 7
1.3 Наставление читателю. 7
Глава 2. 8
2.2.1 Пример - vgalib. 11
2.2.2 Пример : Преобразование мыши. 13
2.3 Основы драйверов устройств. 13
2.3.1 Область имени (именная область). 14
2.3.2 Выделение памяти. 14
2.3.3 Символьные и блочные устройства. 15
2.3.4. Прерывание или поочередное опрашивание устройств ? 16
2.3.5. Механизмы замораживания и активизации. 18
2.3.5.1.Усложненный механизм заморозки. 20
2.3.6. VFS. 20
2.3.6.1. Функция lseek(). 21
2.3.6.2. Функции read() и write(). 22
2.3.6.3 Функция readdir(). 23
2.3.6.4 Функция select(). 23
2.3.6.5 Функция ioctl(). 24
2.3.6.6.Функция mmap(). 26
2.3.6.7. Функции open() и release(). 26
2.3.6.8 Функция init(). 27
2.4 Cимвольные устройства. 28
2.4.1. Инициализация. 28
2.4.2 Прерывания или последовательный вызов ? 29
2.5 Дpайвеpы для блочных устpойств. 32
2.5.1 Инициализация 32
2.5.1.1 Файл blk.h 33
2.5.1.2. Опознание комплектующих PS. 34
2.5.2. Механизм кеширования буфера. 34
2.5.3. Strategy Routine. 35
2.6. Функции поддержки. 36
2.7. Написание драйвера SCSI. 52
2.7.1. Зачем нужны драйверы SCSI. 52
2.7.2. Что такое SCSI ? 52
2.7.2.1. Термины SCSI. 53
- 3 -
2.7.3. Команды SCSI. 56
2.7.4. С чего начинать ? 58
2.7.5. Введение: сбор инструментов. 58
2.7.6. Интерфейс SCSI в Linux. 59
2.7.6. Структура Scsi_Host. 59
2.7.7.1. Переменные в структуре Scsi_Host. 60
2.7.7.1.1. name 61
2.7.7.1.2. can_queue 61
2.7.7.1.3. this_id 61
2.7.7.1.4. sg_tablesize 61
2.7.7.1.5. cmd_per_lun 62
2.7.7.1.6. present 62
2.7.7.1.7. unchecked_isa_dma 63
2.7.7.2. Функции структуры Scsi_Host. 63
2.7.7.2.1. detect() 63
2.7.7.2.1.1. Запрос IRQ. 65
2.7.7.2.2. Запрос канала DMA. 67
2.7.7.2.3. info()