Ravenscar i ZFP – czyli profile runtime w Adzie

Dzisiaj zgłębię temat profili runtime’owych w Adzie. Pozwalają one określić z jakich funkcji języka możemy korzystać w projekcie. Dzięki temu mamy lepszą kontrolę nad zużyciem pamięci, wydajnością i bezpieczeństwem aplikacji. Rozwiązanie w Adzie jest dużo lepsze niż w innych językach, z którymi miałem do czynienia, ponieważ blokuje użycie niechcianych konstrukcji już na poziomie kompilacji.

Artykuł powstał w ramach “Tygodnia z Adą” podczas którego od poniedziałku do piątku będą ukazywać się materiały na temat języka Ada. Będzie między innymi dlaczego Ada tak dobrze nadaje się do safety-critical, pokażę swoje pierwsze próby z pisaniem programów w Adzie, a także postaram się uruchomić Adę na STM32.

Continue reading

Unit testy w Adzie

Ada została wymyślona jako język, w który swoją składnią utrudnia popełnianie błędów. Dlatego część przypadków sprawdzanych zwykle przez unit testy w Adzie w ogóle się nie skompiluje. Jednak mimo wszystko unit testy pozostają ważnym elementem sprawdzania poprawności działania systemu. Co więcej normy dotyczące systemów safety-critical często nakazują wykorzystanie unit testów i osiągnięcie odpowiedniego pokrycia kodu. Z tego artykułu dowiecie się jak wygląda wsparcie dla unit testów w Adzie.

Artykuł powstał w ramach “Tygodnia z Adą” podczas którego od poniedziałku do piątku będą ukazywać się materiały na temat języka Ada. Będzie między innymi dlaczego Ada tak dobrze nadaje się do safety-critical, pokażę swoje pierwsze próby z pisaniem programów w Adzie, a także postaram się uruchomić Adę na STM32.

Continue reading

Ada na STM32

Po pierwszych próbach z Adą na PC, pora uruchomić ją na mikrokontrolerze. W tym celu posłużę się płytką STM32F4DISCO. W dzisiejszym odcinku dowiesz się, czy trudno jest zacząć z Adą na STM32 i jakimi gotowymi bibliotekami możesz się wspomagać. Zobaczymy też sobie kilka cech Ady ważnych z punktu widzenia embedded jak na przykład deklarowanie zmiennych jako Volatile, czy deklarowanie odpowiedników struktur packed i pól bitowych z C.

Artykuł powstał w ramach “Tygodnia z Adą” podczas którego od poniedziałku do piątku będą ukazywać się materiały na temat języka Ada. Będzie między innymi dlaczego Ada tak dobrze nadaje się do safety-critical, pokażę swoje pierwsze próby z pisaniem programów w Adzie, a także postaram się uruchomić Adę na STM32.

Continue reading

Mój pierwszy program w Adzie

Mamy już za sobą wprowadzenie do języka Ada. Pora więc coś w niej napisać. W tym artykule pokażę całą drogę od instalacji toolchaina aż do napisania pierwszego programu – kolejki FIFO opartej na buforze cyklicznym. W trakcie implementacji poznamy kilka podstawowych “ficzerów” Ady

Artykuł powstał w ramach “Tygodnia z Adą” podczas którego od poniedziałku do piątku będą ukazywać się materiały na temat języka Ada. Będzie między innymi dlaczego Ada tak dobrze nadaje się do safety-critical, pokażę swoje pierwsze próby z pisaniem programów w Adzie, a także postaram się uruchomić Adę na STM32.

Continue reading

Ada – najlepszy język do systemów safety-critical

Ada to najbardziej zalecany język do systemów safety-critical. Zainteresowałem się nim bardziej już jakiś czas temu, ale do tej pory nie było okazji się w niego bardziej zagłębić. Sytuacja zmieniła się podczas Embedded World, kiedy to otrzymałem dwie książki o Adzie. Po ich lekturze nabrałem przekonania, że więcej systemów (nie tylko safety-critical) powinno powstawać w tym języku. A przede wszystkim więcej ludzi powinno go znać. Ten artykuł jest wprowadzeniem do Ady z opisem elementów wyróżniających ją na tle innych języków.

Artykuł powstał w ramach “Tygodnia z Adą” podczas którego od poniedziałku do piątku będą ukazywać się materiały na temat języka Ada. Będzie między innymi dlaczego Ada tak dobrze nadaje się do safety-critical, pokażę swoje pierwsze próby z pisaniem programów w Adzie, a także postaram się uruchomić Adę na STM32.

Continue reading

Event Storming

Event Storming to bardzo modny ostatnio termin. Co się pod nim kryje? Do czego może być przydatny? W ostatnim czasie słyszałem wiele na ten temat, czytałem, oglądałem różne prezentacje. Jednak podczas SegFault University Gdańsk nadarzyła się okazja, żeby uczestniczyć w warsztatach z Event Stormingu i zobaczyć jak to wygląda w praktyce. W tym poście opiszę do czego jest przydatny Event Storming. Nie zabraknie oczywiście również odniesienia do możliwego wykorzystania w projektach embedded.

Continue reading

Wiosenne konferencje – SegFault University, Boiling Frogs i 4Developers

Ostatnie tygodnie upłynęły mi pod znakiem konferencji. Byłem w Gdańsku na SegFault University, we Wrocławiu na Boiling Frogs i w Warszawie na 4Developers. A wcześniej jeszcze w Norynberdze na Embedded World, co już zdążyłem opisać na blogu. Na trzech pierwszych występowałem ze swoją prezentacją o systemach safety-critical. Przy okazji dodałem nową stronę, gdzie można znaleźć informacje o moich przeszłych i przyszłych prezentacjach.

Continue reading

Jakość oprogramowania – prezentacje z Embedded World

Pod koniec lutego byłem na targach i konferencji Embedded World 2019. Poza relacją z samego wydarzenia (do przeczytania pod tym linkiem) postanowiłem opisać tematy poruszane na prezentacjach z części konferencyjnej. Było już więc o Embedded Security i o systemach operacyjnych czasu rzeczywistego. Dzisiaj pora na kolejny duży temat jakim jest jakość oprogramowania. Będzie więc o standardzie MISRA C, statycznej analizie i zwinnym podejściu do wytwarzania systemów safety-critical. Każdy z tych tematów posiadał oddzielną ścieżkę podczas konferencji. W przeciwieństwie do wpisu o RTOSach nie będę opisywał każdej prezentacji po kolei. Zamiast tego opiszę konkluzje płynące z każdej ze ścieżek.

Continue reading

Embedded World – prezentacje o RTOSach

Podczas Embedded World jednym z często powtarzających się tematów były systemy operacyjne czasu rzeczywistego, czyli RTOSy. Nie zabrakło także Linuxa. W tym wpisie opiszę kilka prezentacji na ten temat.

Continue reading

Embedded Security – wprowadzenie

Podczas Embedded World 2019 dużo miejsca poświęcono tematowi Embedded Security. To wyraźne odwrócenie trendu ignorowania problemów podatności i zabezpieczeń tego typu systemów, które dominowało do tej pory. Na pewno duży wpływ na to ma rozwój Internet Of Things zapewniający nam stały dopływ niezabezpieczonych urządzeń. Swoje w tym temacie na pewno zrobiły też podatności związane z hardware’m takie jak Meltdown i Spectre. Sam w żadnym wypadku nie uważam się od eksperta od Embedded Security, ale chętnie podzielę się wiedzą otrzymaną podczas konferencji i dołożę cegiełkę do zwiększania świadomości programistów o tego typu zagrożeniach.

Continue reading

© 2019 ucgosu.pl

Theme by Anders NorénUp ↑