Razmotrite primer elektronske upravljačke jedinice (ECU) koja koristi tradicionalni statički ugrađeni softver. Bootloader je softverska komponenta koja se koristi i za pokretanje pokretanja glavnog ECU softvera, uključujući kopiranje softvera u RAM memoriju, i za obavljanje bilo kakvih provera softvera pre pokretanja. Bootloader je takođe odgovoran za ažuriranje softvera, primanje, proveru i pisanje ažuriranog softvera u memoriju, obično Flash memoriju. Stoga se često koristi i termin Flash Bootloader.
Da li se isti bootloaderi koriste u razvoju i proizvodnji?
Obično se isti bootloader može koristiti u razvoju vozila i povezanih ECU-ova i u normalnoj proizvodnji, sa zaštitom kako bi se osiguralo da proizvodni ECU-ovi imaju mnoge mogućnosti razvoja ili deaktivirane inženjerske pokretače. Tokom razvoja vozila često je poželjno ukloniti sigurnosne mehanizme proizvodnih bootloadera kako bi se omogućilo brzo postavljanje razvojnog softvera.
Sigurni bootloader
Sve više svi pokretači moraju biti sigurni. Međutim, tradicionalno je ovo bila razlika, koja se obično primenjuje radi zaštite funkcionalnosti koja se bavi sigurnošću, sigurnošću, a ponekad i performansama.
Bootloaderi obično proveravaju softversku memoriju ECU-a prilikom pokretanja i primljenog softvera pre ažuriranja softvera i u memoriji nakon toga.
Mehanizmi obično uključuju:
- Autentifikacija softvera primljenog i/ili prisutnog u memoriji u vreme pokretanja, često korišćenjem heša softverskog binarnog softvera za proveru ispravnosti generisane sigurnim procesom kompilacije zvanično objavljenih verzija softvera.
- Autentifikacija pošiljaoca pomoću semena i ključa, zaštita sigurnih podataka unutar ECU pomoću zaštićene memorije i memorijskih mapa za definisanje pristupačnih/prepisanih područja.
Dvostruki pokretač
Neke implementacije bootloadera su u dva dela, otuda i termin dual bootloader. U ovom slučaju, primarni pokretač se ne može ažurirati, kao deo obezbeđivanja bootloadera. Ovo se odnosi na pokretanje modula i ažuriranje sekundarnog bootloadera. Sekundarni bootloader se može ažurirati, putem zaštićenog procesa, omogućavajući modifikacije procesa ažuriranja softvera, na primer, memorijske mape, omogućavajući njihovo normalno zaključavanje. Ova vrsta bootloadera je sada ređa zbog novih metoda obezbeđivanja procesa ažuriranja pomoću ugrađenog sigurnog hardvera, na primer, HSM (Hardware Secure Module).
Imajte na umu da je ovaj termin poput dvostrukog pokretanja, gde su dostupni blokovi sa dva pokretanja ili pune memorije, što omogućava ažuriranje na neiskorišćenoj verziji dok je jedna verzija aktivna. Ovo zahteva dodatnu memoriju u svakom ECU-u koji podržava ovaj metod ažuriranja.
Capital Embedded Bootloader
Capital Embedded Bootloader podržava pouzdana ažuriranja ECU tokom razvoja, u proizvodnji vozila i tokom životnog veka vozila, putem povezanih dijagnostičkih alata ili metodologija preko vazduha. Standardizovani ISO 14229 UDS protokol koristi se u nizu uobičajenih mrežnih sabirnica vozila, Ethernet, CAN/CAN-FD, LIN, FlekRai, a moguće je koristiti i druge metode kao što su ASAM kalibracioni protokoli. Cybersecurity bezbednost je ključni aspekt toka ažuriranja softvera i funkcije koje omogućavaju autentifikaciju softvera, a opcije sigurnog pokretanja su deo rešenja. Da bi se zadovoljili specifični zahtevi OEM (proizvođači originalne opreme) i MCU, dostupna je široka podrška za širok spektar ECU projekata.
Koja je razlika između OTA i FOTA?
OTA (over the air) ažuriranje ili FOTA (firmver preko vazduha) je metoda za postizanje prijema novog softvera za ugrađeni uređaj, na primer, automobilski ECU, na daljinski način, a ne putem direktno povezanog servisnog alata u radionici. Ovo može zahtevati neke mogućnosti ugrađenog dijagnostičkog testera u koordinacionom ECU i/ili sposobnosti oporavka i samo-testiranja u samom bootloaderu.