C a wbudowany C
Rozwój programów wbudowanych to dziś szybko rozwijająca się dziedzina. Istnieje ciągła potrzeba pisania aplikacji osadzonych przy użyciu języków programowania wysokiego poziomu (takich jak C) głównie z dwóch powodów. Po pierwsze, wzrasta złożoność aplikacji osadzonych i zarządzanie aplikacjami przy użyciu języków niskiego poziomu, takich jak język asemblera, stało się bardzo trudne. Po drugie, ponieważ nowe modele procesorów są wypuszczane bardzo często, istnieje potrzeba ciągłego aktualizowania/dostosowywania wbudowanych programów do nowszych zestawów instrukcji. Funkcja ponownego wykorzystania obecna w językach takich jak C może zapewnić rozwiązanie obu tych problemów.
Wbudowany język C to krok w kierunku dostosowania języka programowania C do pisania wydajnych aplikacji osadzonych. Embedded C to rozszerzenie do języka programowania C, które umożliwia programistom korzystanie ze wszystkich przydatnych funkcji języka programowania wysokiego poziomu, jednocześnie umożliwiając bezpośrednią komunikację z docelowymi procesorami wbudowanymi w celu poprawy wydajności. Przez lata wielu niezależnych programistów C dodało rozszerzenia, aby wspierać dostęp do podstawowego sprzętu I/O. Embedded C to próba połączenia tych praktyk i zapewnienia jednolitej składni.
Co to jest C?
C to uniwersalny język programowania wysokiego poziomu opracowany przez Dennisa Ritchie w latach 70-tych. Przeznaczony jest głównie do tworzenia oprogramowania systemowego. Ale jest również bardzo często używany do tworzenia oprogramowania aplikacyjnego. Język programowania C jest tak popularny wśród wszystkich programistów, że kompilatory C istnieją dla prawie wszystkich architektur komputerowych. C wpłynął na wiele innych języków programowania komputerowego, takich jak C++ i Java. W rzeczywistości C++ został uruchomiony jako rozszerzenie do C i wraz z Javą zawiera składnię bardzo podobną do C.
Co to jest osadzony C?
Embedded C to rozszerzenie języka programowania C, które zapewnia obsługę tworzenia wydajnych programów dla urządzeń osadzonych. Nie jest częścią języka C. Został opracowany przez grupę roboczą ISO o nazwie „Rozszerzenia języka programowania C do obsługi procesorów wbudowanych” i jest opisany w Raporcie technicznym na temat wbudowanego języka C (TR 18037), który został opublikowany w lutym 2004 r. Rozwój wbudowanego języka C ma na celu dostarczenie wzrost wydajności funkcji używanych w DSP (Digital Signal Processing) i przetwarzania wbudowanego. Stara się umożliwić przenośne i wydajne tworzenie aplikacji w domenie systemów wbudowanych, dając bezpośredni dostęp do funkcji w procesorze docelowym.
Jaka jest różnica między językiem C a osadzonym C?
C jest szeroko stosowanym językiem programowania wysokiego poziomu ogólnego przeznaczenia, przeznaczonym głównie do programowania systemowego. Embedded C to rozszerzenie języka programowania C, które zapewnia obsługę tworzenia wydajnych programów dla urządzeń wbudowanych. Wbudowany C nie jest częścią języka C. C jest zwykle przeznaczony do programowania komputerów stacjonarnych, natomiast Embedded C jest bardziej odpowiedni do programowania wbudowanego. W przeciwieństwie do C, Embedded C umożliwia programistom bezpośrednią komunikację z procesorem docelowym, a tym samym zapewnia lepszą wydajność w porównaniu z C. C tworzy pliki wykonywalne zależne od systemu operacyjnego, podczas gdy Embedded C tworzy pliki, które są zwykle pobierane bezpośrednio do mikrokontrolerów. W przeciwieństwie do C, Embedded C ma typy stałopunktowe, wiele obszarów pamięci i mapowanie rejestrów we/wy.