Сразу скажу, комп у меня слабенький и ждать 3-4 часа чтоб понять что забыл в конце оператора точку с запятой поставить, это не хорошо?!
При разработке необязательно использовать конфигурацию ядра со всеми включёнными опциями. Типичный конфиг который я использую при разработке собирается с нуля за 2 минуты.
Кроме того, ядерный Makefile понимает цели вида
*.o
. Т.е. можно взять и откомпилировать один файл из дерева исходников ядра. Например:
make init/main.o
.
Если ты меняешь что-то в исходниках, перекомпилироваться будет только то, что действительно зависит от того, что ты поменял. Поменяешь
.c
-- перекомпилируется единственный соответствующий ему файл
.o
.
как можно тестировать компоненты ядра
Это совсем другой вопрос. Под просто тестированием понимают проверку того, что код работает правильно, а не то, что он собрался.