Как стать автором
Обновить

Micro Python — эффективная реализация Python 3 для микроконтроллеров

Время на прочтение1 мин
Количество просмотров42K


Английский разработчик Дэмьен Джордж (Damien George) сегодня официально объявил о выпуске Micro Python — эффективной реализация Python 3 для встроенных систем с малым объёмом оперативной памяти. Разработка этой версии началась в декабре, после удачной кампании по сбору средств на выпуск Pyboard — контроллера, работающего на Питоне.

«Хотя у Python много привлекательных функций, но его текущие реализации (читай, CPython) не подходят для встроенных систем, таких как микроконтроллеры и маленькие системы на кристалле, — пишет Дэмьен Джордж. — Причина в том, что CPython использует ужасно много оперативной памяти — и для стека, и для кучи — даже в простых операциях вроде сложения целых чисел».

Micro Python — новая реализация языка программирования Python 3, которая должна быть правильно совместима с CPython, в то же время используя минимальное количество ОЗУ, компактный компилятор и высокую производительность в среде выполнения.

Джордж объясняет, что добиться этого удалось за счёт нескольких трюков с указателями и оптимизацией кода. В результате, Micro Python поддерживает почти весь синтаксис Python 3.4 (работа ещё продолжается), а большинство скриптов занимают гораздо меньше ОЗУ и выполняются заметно быстрее, по сравнению с CPython.

Минимальный билд под ARM умещается в 80k, а со всеми функциями под Linux — в 200k. Базовая REPL-среда требует всего 2 килобайта ОЗУ.

Дополнительно, в Micro Python встроены два режима AOT-компиляции в нативный код, есть встроенный ассемблер для написания критичных ко времени приложений на микроконтроллере.

Реализация написана на C99 ANSI C и нормально компилируется под Unix (POSIX), Mac OS X, Windows и некоторых ARM-микроконтроллерах.
Теги:
Хабы:
Всего голосов 69: ↑65 и ↓4+61
Комментарии33

Публикации

Истории

Работа

Data Scientist
54 вакансии

Ближайшие события

4 – 5 апреля
Геймтон «DatsCity»
Онлайн
25 – 26 апреля
IT-конференция Merge Tatarstan 2025
Казань
20 – 22 июня
Летняя айти-тусовка Summer Merge
Ульяновская область