Сначала о кросскомпиляции.Например есть тестовая программа "hello world", для компиляции ее под i386 используем gcc, для arm используем toolchain arm-linux-gcc. Далее, каждая их них корректно отрабатывает на своей платформе.
В случае с модулями ядра, получается следующее, насколько я понял:
1. Сначала нужно сконфигурировать ядро с поддержкой загрузки модулей
2. Для каждой платформы использовать свои linux-headers
3. Через CC использовать соответствующий toolchainЕсли я не прав, будьте добры поправьте. И объясните как это делать.
Да, еще несколько вопросов.
1. Чем отличаетс модуль ядра от драйвера
2. Как лучше организовать обмен информацией между пользовательским процессом и модулем ядраБуду благодарен за ответы.
Рекомендую почитать книгу Роберта Лав "Разработка ядра Linux" (http://www.williamspublishing.com/Books/5-8459-1085-4.html), отпадет много вопросов :)
Спасибо, буду читать.