KonSol — собственная операционная система для Arduino UNO | Shell, SD, Scheduler, файлы на 2 КБ RAM

12+
12+

6 часов назад

ПожаловатьсяНарушение авторских прав
12+
12+

6 часов назад

ПожаловатьсяНарушение авторских прав
12+
12+

6 часов назад

В этом видео — первый полноценный физический тест KonSol, нашей собственной малоресурсной операционной среды для классического Arduino UNO R3 / ATmega328P. Проект начинался с экспериментов с FreeRTOS. FreeRTOS отлично заработал с TFT и Touch, но при попытке одновременно использовать файловую систему microSD мы быстро упёрлись в ограничения ATmega328P: всего 32 КБ Flash и 2 КБ SRAM. Вместо дальнейшего ужимания современной RTOS-архитектуры мы пошли другим путём — сделали собственное маленькое ядро в духе ранних компьютеров. KonSol / KON-OS 0.1 использует: - кооперативный scheduler; - один общий AVR stack; - статические буферы; - Serial shell; - системные файловые сервисы; - microSD как постоянное хранилище; - никаких FreeRTOS; - никаких String; - никаких malloc/new в коде ядра. Сборка первой версии: Flash: 16930 / 32256 bytes — 52% SRAM globals: 1033 / 2048 bytes — 50% На реальном Arduino UNO после загрузки системы: FREE RAM: 1009 B В рабочем shell: FREE RAM: 834 B При этом система уже действительно работает с файловой системой SD. В тесте физически проверены команды: HELP INFO MEM PS UPTIME DIR / LS / TYPE CAT WRITE APPEND DEL RM MKDIR RMDIR CLS REBOOT Например: A:/ WRITE /KONTEST.TXT HELLO FROM KON-OS OK 17 B A:/ TYPE /KONTEST.TXT HELLO FROM KON-OS A:/ APPEND /KONTEST.TXT SECOND LINE OK 11 B Работает и собственный кооперативный планировщик: ID TASK PERIOD RUNS 0 SERIAL 1 ms 102636 1 CLOCK 100 ms 1026 То есть это уже не просто программа, которая выводит меню. У нас формируется постоянная системная среда со своим ядром, scheduler, shell и файловыми сервисами. Следующие этапы развития KonSol: KonSol 0.1 Kernel + Shell + SD PASS │ ▼ KonSol 0.2 Minimal TFT driver │ ▼ KonSol 0.3 Touch + File Manager │ ▼ KonSol 0.4 RUN / external APP / bytecode │ ▼ KON-Boot SD - native BIN - Flash Часть синтаксиса упрощена... Особенно интересное направление — KON-Boot: маленький загрузчик сможет выбирать нативный AVR-образ на microSD, записывать его во Flash ATmega328P и запускать. Тогда Arduino UNO фактически сможет превратиться в небольшой SD-based multi-boot computer. Исходный код, документация, руководство пользователя, руководство системного и функционального программиста и полный синтаксис команд находятся в репозитории: https://github.com/AIDevelopersMonster/Arduino-UNO-Shields Проект: labs/05-UNO-KON-OS/ Описание OS KonSol https://doi.org/10.5281/zenodo.23139756 Короткая подпись для начала ролика KonSol An operating environment for Arduino UNO 32 KB Flash • 2 KB RAM • microSD • Shell • Scheduler И я бы уже сейчас в видео и обложках писал именно KonSol, а KON-OS оставил техническим названием ядра/проекта внутри репозитория. #KonSol #KONOS #Arduino #ArduinoUNO #ATmega328P #OperatingSystem #EmbeddedOS #Microcontroller #ArduinoProject #EmbeddedSystems #microSD #8bitComputer

Название:

KonSol — собственная операционная система для Arduino UNO | Shell, SD, Scheduler, файлы на 2 КБ RAM

Категория:

Разное