no_std
Rust без стандартной библиотеки: только core, без операционной системы и без кучи, если вы не принесли свою.
Строка #![no_std] в начале крейта подключает к нему core вместо std. Остаются система типов, итераторы, Option, Result и атомики — всё, что не требует ОС. Пропадают файлы, потоки, сеть и println!. Если нужны Vec и Box, подключите крейт alloc и зарегистрируйте глобальный аллокатор поверх собственной кучи.
Программа обязана определить и #[panic_handler]: выводить сообщение об ошибке некому. Это основа всего embedded-Rust на таких целях, как thumbv7em-none-eabihf, а RTIC и Embassy надстраивают поверх структуру. Тот же атрибут служит ядрам и загрузчикам — всему, что работает до появления операционной системы, у которой можно попросить помощи.