- средней скорострельности CPU c GPIO под управлением *nix подобной ОС
- поддержка ATA/SerialATA/CompactFlash HDD с FAT32
- поддержка TCP/IP по Ethernet 10/100
- возможность доступа к локальному винту через USB Mass Storage
- возможность оперативной отправки части записываемой информации на винт по сети
- возможность подключения к устройству стандартных коммуникационных USB устройств
Отсюда выглядит так, что в качестве операционной системы системы необходимо брать обычный Linux. Он сам по себе умеет работать с FAT32, имеет поддержку IDE, сетевых протоколов и для него существуют драйвера под стандартные коммуникационные USB устройства. К списку приведенному выше придется дотачать собственно, прикладную программу, занимающуюся обработкой данных, записью их на винт и отправкой в сеть, драйвер источника этих самых данных и арбитраж с внешней системой, пытающейся получить доступ к внутреннему винту по USB Mass Storage. Все остальное тем или иным образом включено в ядро Linux или может быть откомпилировано в качестве прикладных программ.
Теперь к выбору процессора. Существуют ли процессора, имеющие на борту все из выше перечисленных интерфейсов? Самым перспективным на данный момент является AXIS ETRAX100LX. У него на борту есть встроенный IDE, DDR SDRAM контроллер, Ethernet 10/100, USB Host (к сожалению, только 1.1), он поддерживает GPIO и на него честно портирован Linux. Плюс в процессоре реализованы механизмы управления виртуальной памятью, a-la x86 Protected Mode. Сильно смущает только его частота, составляющая "всего" 100MHz.
Другим кандидатом в процессора для этой системы выступает ARM AT91RM9200. Управление виртуальной памятью, как я понял из даташита - отсутствует. У него частота повыше, однако у него нет встроенного IDE, а это значит, что драйвер IDE под Linux придется разрабатывать самому. К тому же не до конца ясен статус порта Linux ядра для него. Я знаком с отладочной платой AndiBig, однако еще не видел информации об успешном запуске на этом процессоре полноценной OС. Плюс не ясно, как может функционировать Linux ядро без полноценной системы виртуальной памяти.
Вот так и проходит время
