embedded Linux
Pro și contra ale sistemului de operare
(Embedded Linux)
Ce oferă sistemul de operare?
Cele mai multe dintre problemele (rezonabile) ale sistemelor integrate pot fi rezolvate fără un sistem de operare (normal „bucată de fier“ cortexului M4 sau ARM7 poate lucra cu o rețea de canal Ethernet, au serverul web la bord memorie flash, afișaj grafic). Sistemul de operare vă permite să creați sisteme sofisticate de colectare a datelor folosesc o varietate de instrumente și programe scrise pentru acest sistem (flash-player, animație, utilități de rețea ftp, ssh etc.).
Sistemele de operare arhitectura software sunt, de obicei, foarte diferite de arhitectura sistemului încorporat cu un singur independent aplicație, include lucrul cu drivere și algoritmi în sistem ca întreg. Sistemul de operare include multi-threading și multi-tasking, abilitatea de a rula mai multe programe simultan individuale.
Este demn de remarcat faptul că în cazul în care sistemul de operare nu are nici un driver și BSP nu au finalizat, lucrul cu fierul de călcat problema este complicată de mai multe ori, deoarece dezvoltatorul trebuie să înțeleagă elementele de bază și sistemul de operare, drivere, în același timp, se bucură de experiența de a lucra cu fier la un nivel scăzut.
Pe de altă parte, trebuie să înțelegem că, prin crearea sarcină de sistem încorporat nu este de a face un calculator cu caracteristici complete pe desktop, ci doar „intermediare“, care nu poate avea chiar și un ecran la toate. Utilizarea sistemului de operare nu ar fi rezonabil dacă pur și simplu „LED-ul clipit,“ sau chiar doar pentru a afișa o imagine statică pe ecran în funcție de datele care provin de pe o singură interfață RS-232.
Cel mai frecvent utilizate Linux, deși în funcție de sarcină, și puteți utiliza alte sisteme de operare (pentru sarcini în timp real și microcontrolere low-end utiliza FreeRTOS, QNX, Windows CE).
De ce Linux?
În acest moment, Linux are suport bun pentru diferite arhitecturi. Linux este gratuit, ceea ce este important atunci când se creează dispozitive seriale. În cele mai multe din codul sursă Linux este liber, care nu este atât de important pentru un PC desktop, dar de multe ori devine important pentru dezvoltatorii de sisteme integrate ca codul sursă vă permit să construiască software-ul pentru platforma lor. Nu toată lumea are înțelegerea faptului că programele adunate sub desktop-ul (x86 arhitectura) nu vor fi difuzate pe alte arhitecturi (ARM, AVR32).
Pe ce „de fier“ ar trebui să creeze un sistem încorporat?
Cine este cel mai frecvent utilizate ARM (cortexul, tdmi), de asemenea, populare MIPS, AVR32 și altele. ARM are un suport bun în ceea ce privește software-ul finit și distribuțiile, are un record bun de consum de / putere de performanță. Multe programe portate pe ARM-arhitectura.
Ca intermitent blocurile rezultate?
Mulți dezvoltatori sunt obișnuiți standalone-aplicații pentru a crea un singur proiect în orice mediu de dezvoltare (IAR, Keil, ImageCraft, etc), înființat în cadrul unui proiect specific „piatră“, și coase folosind JTAG și UART. Cu încorporat curs sisteme mult mai mult tam-tam pentru dezvoltator. Multe sisteme de operare sunt încărcate de către dispozitivul de încărcare, care stă și cusătura ca o aplicație normală. În continuare (de obicei, folosind Ethernet, mai puțin RS-232) cu ajutorul unei console încărcător din sistemul de operare este încărcat. procesul de boot Linux, de exemplu, este descris pe mai multe site-uri de pe Internet. Trebuie remarcat faptul că, atunci când sistemul este gata și depanat, este posibil să se ia în considerare imaginea sistemului rezultat (de fapt, întreaga memorie flash OS) și în producția de cusut întreaga memorie flash.