Co to jest standardowe oprogramowanie sprzętowe?


Najlepsza odpowiedź

Standardowa pamięć ROM / oprogramowanie sprzętowe to oficjalne oprogramowanie zaprojektowane przez producenta dla konkretnego urządzenia.

Prawdziwie dostępny ROM to jeden typ, który nie podlega żadnym kosmetycznym / funkcjonalnym zmianom w kodzie przez producenta sprzętu.

Np .: Android działający na pikselach Google, telefony Nexus.

A Pamięć ROM producenta lub przewoźnika to inny rodzaj oprogramowania sprzętowego, które przechodzi ulepszenia interfejsu, modyfikacje i instalacje aplikacji specyficznych dla producenta.

Np .: Android działa na urządzeniach Samsung (TouchWiz UI + aplikacje Samsung), Xiaomi (aplikacje MIUI +), HTC (aplikacje HTC Sense +), Asus (aplikacje ZenUI +)…

Zwykle najczęściej wybierane jest oprogramowanie standardowe zamiast oprogramowania niestandardowego, ponieważ przechodzi wiele testów fazy zapewniające lepsze bezpieczeństwo, stabilność i pakiet wolny od błędów przed wdrożeniem lub wydania.

Odpowiedź

Oprogramowanie sprzętowe to zasadniczo oprogramowanie, ale takie, które współpracuje ze sprzętem. Podczas gdy oprogramowanie, które znamy, jest napisane do działania na procesorach ogólnego przeznaczenia, oprogramowanie układowe jest napisane tak, aby działało na specjalnych procesorach. Oprogramowanie układowe niewiele różni się od oprogramowania. Podczas gdy w oprogramowaniu będziesz czytał z wejścia standardowego (klawiatura) i zapisywał na wyjście standardowe (ekran), w oprogramowaniu możesz odczytywać z pinu (np. Poziom napięcia) i zapisywać na pinie (np. Zmiana poziomu napięcia). Lub w oprogramowaniu, które czytasz z pliku tekstowego i zapisujesz do pliku tekstowego, w oprogramowaniu sprzętowym będziesz czytać z bloku pamięci i zapisywać w bloku pamięci.

Oprogramowanie układowe jest zwykle napisane w asemblerze, C / C ++ . Jedną dużą różnicą w oprogramowaniu sprzętowym jest to, że wykonanie programu jest wysoce deterministyczne. Oprogramowanie układowe można napisać tak, aby uruchamiało tylko Twój program, nic więcej. Nie ma zadań w tle. Uruchamia tylko twój kod i tylko twój kod. Jest to bardzo ważne w przypadku większości oprogramowania układowego, na przykład w samochodach, gdzie musisz mieć absolutną pewność, że Twój fragment kodu jest uruchamiany, gdy powinien być uruchomiony, bez opóźnień. W oprogramowaniu sprzętowym możesz dokładnie wiedzieć, ile czasu zajmie wykonanie określonego zadania, ponownie, ponieważ działa tylko twój kod. Możesz przyjrzeć się dezasemblacji swojego kodu, policzyć instrukcje i dokładnie wiedzieć, ile czasu zajmie wykonanie określonego zadania. Jest to coś, czego nie można zrobić z oprogramowaniem działającym na procesorze ogólnego przeznaczenia na systemie operacyjnym. Istnieją oczywiście systemy operacyjne dla oprogramowania układowego, RTOS (system operacyjny czasu rzeczywistego), które w jakiś sposób zachowują się trochę jak normalny system operacyjny na PC, ale nadal z bardzo niskim narzutem. Ale kiedy precyzja i synchronizacja są ważne, piszesz oprogramowanie szkieletowe.

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *