16 февраля 2021 года разработчик Дэвид Гивен представил порт ОС Fuzix для микроконтроллера Raspberry Pi Pico RP2040. Причем буквально за несколько дней перед этим он портировал Fuzix на микроконтроллер ESP8266 и записал об этом отдельное видео.
В порте Fuzix на RP2040 есть поддержка SD-карт для установки файловой системы UNIX и файла подкачки, а также поддерживается полный набор основных инструментов, включая запуск до 15 процессов, запуск пользовательских двоичных файлов, использующих до 64 КБ кода и данных каждый, работает последовательная консоль на UART0, доступен полный набор бинарных файлов ядра Fuzix — fsck, оболочка Bourne, стандартные инструменты Unix, клон vi, а также несколько простых игр.
Гивен пояснил, что текущий порт Fuzix на RP2040 запускается стабильно, но еще требует доработки. На данный момент в нем нет поддержки многозадачности, пайпов и бортовой флэш-памяти NAND.
Разработчик уточнил, что это наоборот хорошо, что порт использует только одно ядро двухъядерного чипа Arm Cortex-M0+, оставляя возможность для задействования другого ядра и PIO блоков для различных других целей. Вдобавок порт Fuzix потребляет для работы только часть из 269 КБ оперативной памяти устройства.
Гивен заметил, что Raspberry Pi Pico работает немного медленнее ESP8266, но он еще не пробовал разгонять микроконтроллер. Он рассказал, что при штатных частотах производительности RP2040 вполне достаточно для интерактивного Unix.
Для создания порта Fuzix на RP2040 Гивен использовал существующую документацию и SDK Raspberry Pi Pico. Для сборки системы он использовал cmake. Также он использовал при создании порта OpenOCD для Pico.
Инструкция по установке ОС Fuzix и схема программирования микроконтроллера Raspberry Pi Pico RP2040 находятся в этом архиве.
В январе этого года Raspberry Pi Foundation представила микроконтроллер Pi Pico за $4 на своем кремнии. За обработку данных отвечает двухъядерный процессор Arm Cortex M0+, работающий на частоте до 133 МГц. Также присутствует 264 КБ встроенной оперативной памяти и 2 МБ флэш-памяти, USB 1.1 и каналы ввода-вывода общего назначения (пользователю доступны 26, из которых три являются аналоговыми входами). Подробное описание микроконтроллера приведено в этой публикации.
Fuzix — это UNIX-подобная минималистичная операционная система (потребляющая очень мало объема ресурсов) для слабых процессоров, например, на базе архитектуры Zilog Z80. Ее создал в 2014 году разработчик ядра Linux Алан Кокс. Fuzix состоит из ядра, компилятора C и набора основных UNIX-подобных приложений.