1. Ставится загрузчик, который грузит приложение, в которое включен HAL на этапе компиляции. 2. HAL можно оформить как библиотеку. 3. HAL можно включить в загрузчик с предоставлением сервисов через таблицу функций. Ну а прерывания поделите, неужели под загрузку нельзя выделить один последовательный порт?