Mam takie pytanie:
Opisz sposób tworzenia oprogramowanie typu Bare Metal dla systemu wbudowanego w oparciu o system przerwań.
Co to w ogóle jest oprogramowanie Bare Metal? Jak odpowiedzieć na to pytanie?
Mam takie pytanie:
Opisz sposób tworzenia oprogramowanie typu Bare Metal dla systemu wbudowanego w oparciu o system przerwań.
Co to w ogóle jest oprogramowanie Bare Metal? Jak odpowiedzieć na to pytanie?
Podręcznikowej definicji Ci nie podam, ale chodzi o soft działający na małych mikrokontrolerach typowo bez systemu operacyjnego. Typowo, bo FreeRTOS na AVR czy ARM np. też się tu wlicza. W skrócie: jeżeli to jest system wbudowany (nie wiem czy twardym wymogiem jest tutaj też brak modułu ochrony pamięci, na pewno jest to częsta sytuacja), w którym musisz pisać bezpośrednio po rejestrach procesora dla skonfigurowania tego czy owego, a zmiana kawałka aplikacji wiąże się z uploadem całego wsadu, to możesz mówić o baremetal. Granica jest płynna, bo widziałem już FreeRTOSa przystosowanego do odpalania aplikacji w formacie ELF z karty SD, ale to raczej wyjątek.
Wiki podaje to: https://en.m.wikipedia.org/wiki/Bare_machine co pi razy oko pokrywa się z podaną przeze mnie definicją. Intuicyjnie: jeżeli „machasz” nogą procesora z pominięciem systemu operacyjnego (ew. syscall do tego służący daje się prosto rozebrać do postaci zapisu do rejestru) to z dużym prawdopodobieństwem jest to bare-metal.
Bare-metal to mikrokontroler bez systemu operacyjnego, pamieci virtualnej , wypiepszony main loop , albo jakis framework z calbackami ktory dziala w main loopie ale jako programista tego frameworku tego nie wiedzisz. Bare-metal ze walisz prosto w rejestry ktore sa metalowe :) bez osłony typu kernel linux.