The website "dmilvdv.narod.ru." is not registered with uCoz.
If you are absolutely sure your website must be here,
please contact our Support Team.
If you were searching for something on the Internet and ended up here, try again:

About uCoz web-service

Community

Legal information

Где искать информацию

Где искать информацию

Предыдущая  Содержание  Следующая V*D*V

Уровень ядра кадрового буфера и низкоуровневые драйверы кадрового буфера находятся в каталоге drivers/video/. Общие структуры  кадрового буфера определяются в include/linux/fb.h, а заголовки, зависимые от набора микросхем, находятся внутри include/video/. Драйвер fbmem, drivers/video/fbmem.c, создаёт символьные устройства /dev/fbX и внешний интерфейс для обработки команд ioctl кадрового буфера, выдаваемых пользовательскими приложениями.

 

Драйвер intelfb, drivers/video/intelfb/*, является низкоуровневым драйвером кадрового буфера для нескольких графических контроллеров Intel, таких, как Северный мост, интегрированный с 855 GME. Драйвер radeonfb, drivers/video/aty/*, является драйвером  кадрового буфера для графических карт Radeon Mobility AGP от ATI technologies. Все исходные файлы вида drivers/video/*fb.c являются драйверами кадрового буфера для графических контроллеров, в том числе тех, которые интегрированы в некоторые микропроцессоры.  Если вы пишете собственный низкоуровневый драйвер кадрового буфера, вы можете использовать в качестве отправной точки drivers/video/skeletonfb.c. Для получения дополнительной документации об уровне кадрового буфера смотрите Documentation/fb/*.

 

Главной страницей проекта кадрового буфера Linux является www.linux-fbdev.org. Этот веб-сайт содержит разделы HOWTO (Как сделать), ссылки на драйверы кадрового буфера и утилиты, а также ссылки на соответствующие веб-страницы.

 

Консольные драйверы, и на основе кадрового буфера, и другие, находятся внутри drivers/video/console/. Чтобы узнать, как printk() выводит сообщения ядра во внутренний буфер и вызывает консольные драйверы, смотрите kernel/printk.c. Таблица 12.2 содержит основные структуры данных, используемые в этой главе и их расположение в дереве исходных текстов. В Таблице 12.3 перечислены основные программные интерфейсы ядра, которые вы использовали в этой главе вместе с расположением их определений.

 

Таблица 12.2. Список структур данных

 

Структура данных

Местоположение

Описание

fb_info

include/linux/fb.h

Центральная структура данных, используемая низкоуровневыми драйверами кадрового буфера

fb_ops

include/linux/fb.h

Содержит адреса всех точек входа, предоставляемых низкоуровневыми драйверами кадрового буфера

fb_var_screen_info

include/linux/fb.h

Содержит изменяемую информацию,  передаваемую видео оборудованию,  такую, как разрешение по X, разрешение по Y и длительности HYSNC/VSYNC

fb_fix_screen_info

include/linux/fb.h

Неизменяемая информация от видео оборудования, такая, как начальный адрес кадрового буфера

fb_cmap

include/linux/fb.h

Цветовая таблица RGB для устройства с кадровым буфером

console

include/linux/console.h

Представление высокоуровневого консольного драйвера

consw

include/linux/console.h

Представление низкоуровневого консольного драйвера

 

 

Таблица 12.3. Список программных интерфейсов ядра

 

Интерфейс ядра

Местоположение

Описание

register_framebuffer()

drivers/video/fbmem.c

Регистрирует низкоуровневое устройство с кадровым буфером.

unregister_framebuffer()

drivers/video/fbmem.c

Отменяет регистрацию низкоуровневое устройство с кадровым буфером.

framebuffer_alloc()

drivers/video/fbsysfs.c

Выделяет память для структуры fb_info.

framebuffer_release()

drivers/video/fbsysfs.c

Обратна к framebuffer_alloc().

fb_alloc_cmap()

drivers/video/fbcmap.c

Выделяет память для карты цветов.

fb_dealloc_cmap()

drivers/video/fbcmap.c

Освобождает память карты цветов.

dma_alloc_coherent()

include/asmgeneric/dma-mapping.h

Выделяет и отображает согласованный буфер DMA. Смотрите pci_alloc_consistent() в Главе 10.

dma_free_coherent()

include/asmgeneric/dma-mapping.h

Освобождает согласованный буфер DMA. Смотрите pci_free_consistent() в Главе 10.

register_console()

kernel/printk.c

Регистрирует высокоуровневый консольный драйвер.

unregister_console()

kernel/printk.c

Отменяет регистрацию высокоуровневого консольного драйвера.

register_console()

take_over_console()

drivers/char/vt.c

Регистрирует/подключает низкоуровневый консольный драйвер.

unregister_console()

give_up_console()

drivers/char/vt.c

Разрегистрирует/отключает низкоуровневый консольный драйвер.

 

Предыдущая  Содержание  Следующая