no_std
Rust bez biblioteki standardowej: tylko core, bez systemu operacyjnego i bez sterty, dopóki sam jej nie dostarczysz.
Umieszczenie #![no_std] na początku crate'a powoduje linkowanie z core zamiast std. Zostaje system typów, iteratory, Option, Result i atomiki — wszystko, co nie potrzebuje systemu. Znikają pliki, wątki, sieć i println!. Jeśli chcesz odzyskać Vec i Box, dodaj crate alloc i zarejestruj globalny alokator nad własną stertą.
Program musi też zdefiniować #[panic_handler], bo nie ma komu wypisać błędu. To fundament całego wbudowanego Rusta na celach takich jak thumbv7em-none-eabihf, a RTIC i Embassy dokładają strukturę na wierzchu. Ten sam atrybut służy jądrom i bootloaderom — wszystkiemu, co działa zanim pojawi się system, który można poprosić o pomoc.