Техника портирования NetBSD на КПК (краткая шпаргалка)

EvAn аватар

Если у Вас есть КПК с Windows CE или Windows Mobile и Вы хотите попробовать запустить на нем NetBSD, то Ваша последовательность действий могла бы быть следующей:

1) трезво оценить свои познания в микропроцессорных системах и системном программировании, а также проверит наличие желания углубить эти свои познания;

2) оценить наличие свободного времени (отсутствие жены, ...);

3) подготовить комфортную среду для кросс-сборки (рекомендуется ПК с Linux или, собственно, с NetBSD);

4) загрузить из CVS-репозитория исходные тексты последней версии NetBSD, на момент написания этих строк это 4.99.XX, она же - HEAD;

5) изучить структуру загруженных исходных текстов, особенно каталоги sys/arch/arm, sys/arch/evbarm и sys/arch/hpcarm;

6) научиться осуществлять кросс-сборку для архитектур evbarm и hpcarm;

7) изучить страничку своего КПК на handhelds.org, а потом посмотреть в исходники NetBSD и выяснить, что уже реализовано, что - нет;

8) написать конфигурацию ядра для своего КПК, основываясь на конфигурациях из evbarm и hpcarm;

9) собрать сконфигурированное ядро;

10) изучить hpcboot - стандартный загрузчик NetBSD для PDA (sys/arch/hpc/stand/hpcboot);

11) добавить в hpcboot поддержку своего КПК (потребуется MS eVC и соответственно Windows) или написать собственный загрузчик (тогда можно обойтись пакетами pocketpc-* для Ubuntu или cegcc);

12) записать на карту памяти от КПК все необходимые файлы и запустить на нем NetBSD.

Если все эти этапы пройдены успешно, то можно приступить с следующему уровню увлекательной игры "Портирование NetBSD", а именно:

Написать код для неподдерживаемого оборудования своего КПК. Если это оборудование поддерживается Linux, то вам повезло, еще больше повезет, если Вы найдете документацию к этому оборудование.

Но и это еще не все. Ведь Вы наверняка не удовольствуетесь командной строкой...

PS. Даже если Вы не дойдете до Конца, то в любом случае Вы узнаете очень много и получите ничем незаменимый опыт. :)

(c) 2008 Симоненко Евгений А. aka EvAn. Написано в связи с периодически возникающими вопросами вида: "а как мне запустить NetBSD на своем КПК" или "а мой КПК поддерживает NetBSD".