2.2.1 Уровень аппаратных абстракций (HAL) |
Предыдущая Содержание Следующая |
Уровень аппаратных абстракций (hardware abstraction layer, HAL) виртуализирует оборудование платформы, так что различные драйверы могут быть легко перенесены на любое оборудование. HAL эквивалентен BSP (board support package, пакет поддержки аппаратуры), предоставляемому на большинстве RTOS, за исключением того, что BSP на коммерческих RTOS обычно имеет стандартные API, которые позволяют легко его переносить. Почему HAL Linux не имеют стандартных интерфейсов для подключения к остальной части ядра? Это наследство; поскольку Linux изначально предназначался для настольных систем x86 и поддержка других платформ был добавлена позже, первые разработчики не думали о стандартизации HAL. Однако, в последних версиях ядра идея придумать стандартные интерфейсы для подключения зависящего от платы программного обеспечения перенимается. Две известные архитектуры, ARM и PowerPC, имеют хорошо описанные структуры данных и API, которые упрощают перенос на новую плату. Ниже приведены некоторые встраиваемые процессоры (кроме x86), поддерживаемые ядром Linux 2.6.
▪MIPS ▪PowerPC ▪ARM ▪M68K ▪CRIS ▪V850 ▪SuperH
HAL имеет поддержку следующих аппаратных компонентов:
▪Процессор, кэш и MMU ▪Создание карты памяти ▪Поддержку обработки исключений и прерываний ▪DMA ▪Таймеры ▪Системная консоль ▪Управление шиной ▪Управление питанием
Функции, которые инициализируют платформы, более подробно объясняются в Разделе 2.4. Глава 3 подробно объясняет шаги по переносу Linux на платформы на базе MIPS.
|
Предыдущая Содержание Следующая |