Зачем такие сложности? Завести свои таблицы векторов в ОЗУ и
грузить их из загрузчика или из приложения, а аппаратные
переадресовывать тудыть (вызов функции по указателю).
Это моё личное предвзятое мнение. Любое совпадение с реальностью является случайным и непреднамеренным.