Powodem, dla którego nie można znaleźć nazwy, jest to, że nie jest to system operacyjny - jest to brak systemu operacyjnego. Często jest to nazywane programowaniem typu "bare-metal".
Ogólna koncepcja programowania w trybie bare-metal polega na tym, że istnieje mały kod uniwersalny - "bootloader" - który konfiguruje kontroler pamięci i inne elementy sprzętowe na płycie, a następnie przekazuje kontrolę do twój program. (Systemy operacyjne mają również bootloadery, więc w tym sensie twój program to zastępujący system operacyjny.) Uboot to dość powszechny bootloader typu open-source, więc może to być dobre miejsce do rozpoczęcia wyszukiwania informacji.
Jedną z trudnych informacji na temat programowania w "bare-metal" jest to, że ponieważ nie istnieje system operacyjny obsługujący komunikację sprzętową, trzeba pomyśleć o "czym właściwie jest printf" jakie dane przechodzą do tego, co peryferyjne? " i "jak mogę tam dotrzeć?" Znowu niektóre programy rozruchowe zapewniają obsługę tego typu rzeczy, chociaż nie zawsze jest to łatwe, aby je połączyć. Znowu Uboot jest dobrym przykładem.
Tymczasem biblioteka C raczej będzie dostarczana przez Twój kompilator, a nie przez bootloader.
(Powinienem również dodać, jako notatkę z nazwy: Firma, w której pracuję, tworzy serię kompilatorów nagiego metalu i Linuksa, znanych jako Sourcery CodeBench.W przypadku CodeBench, wersje bare-metal są generalnie nazywane po specyfikacji ABI, której używają do łączenia programów, więc wersje "ELF" lub "EABI" to wszystkie kompilatory bare-metalowe, i myślę, że to dość powszechny sposób odwoływania się do tego Coś w tym stylu, więc zobaczysz także takie imię.)
Nie jestem do końca pewien, co masz na myśli. W jakiej architekturze szukasz systemu operacyjnego? Wiem o [uC/OS] (http://en.wikipedia.org/wiki/MicroC/OS-II) napisanym w C i działającym na mikrokontrolerach, ale mimo to jego funkcje są całkiem dobre. – ppeterka
Jeśli szukasz czegoś o małej powierzchni, Linux może z łatwością dopasować rachunek bez żadnych programów przestrzeni użytkownika, z wyjątkiem twojego i libc. Chociaż domyślny glibc ma duży rozmiar, istnieje wiele projektów libc o małych rozmiarach. – Linuxios