-
Data: 2015-09-14 02:53:00
Temat: Re: [OT] Du?a kasa i kiepski wynik - dlaczego?
Od: Waldek Hebisch <h...@m...uni.wroc.pl> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]AK <n...@n...com> wrote:
> U?ytkownik "Waldek Hebisch" <a...@m...uni.wroc.pl> napisa?:
>
> > Z innej beczki, kilka lat temu zweryfikowano
> > formalnie mikrojado L4.
>
> Nie wierz?. C nie nadaje sie do weryfikacji formalnej poprawnosci programow
> w nim pisanych (chyba ze jest to baaardzo okrojone C - i to o wiele bardziej niz
Misra C),
> a jadro to jaderko na przyslowiowych "kilku kartkach" i "specjalnie pisane" pod
werfyfikacj?.
>
> W zwyklym C/C++ formalna weryfikacja pooprawnosci to zwykla
> uluda (i taka na zawsze zostanie).
>
Mikrojado L4 ma kolo 8000 lini kodu. Sa ograniczenia na to co sie
weryfikuje i na jezyk. ZCW weryfikacja obemuje np. sprawdzenie ze
nie ma przepelnien buforow. We efekci dostajesz z szukoscia
oczekiwana od C i najlepszym bezpieczenstwem jakie dzis daje
jakakolwiek techmika programowa. Kod L4 jest dostepny na sieci.
Za dokumentacje weryfikacji trzeba zaplacic grupa forse, wiec
ta czesc musisz przyjac na wiare,
A propo, Microsoft twierdzi ze maja lepsze metody i potrafia
zweryfikowac wieksze programy. Do calego Windowsa to daleko
(trzeba by milony linii), ale chca zwerufikwac kawalek
majacy kolo 60 tys. linii. Ostatnia wiadomosc jaka slyszalem
(rok czy dwa lata temu) ze zweryfkowali kolo 30 tys. linii.
Kod byl wczesnij napisany i ponoc jak sie cos nie chce
werifikowac to w kodzie poprawiaja tylko bugi, a przeciwnym
razie poprawija narzedzia.
Co do C to jest rozpracowana odpowiednia logika i ponoc teraz
nie sprawia wiecej problemow niz inne jezyki. Zeby bylo
jasne, weryfikcja polega na dodaniu (recznym) annotacji
i potem poprawnosc logiczna calosci sprawdza maszyna.
L4 wymagal cos kolo 8 linii annotacji na linie kodu.
Microsoft twierdzi ze przy ich metodzie wystarcza
kolo 1 lini annotacji na linie kodu. Na razie pisanie
annotacji wymaga duzo pracy i potrzeba do tego
kwalifikacji. Nie zmienia to faktu ze w przeszlosci
w mozna bylo tylko marzyc o weryfikacji na taka
skale.
Jesli interesuje Cie weryfikacja to mozesz popatrzyc na
pojekt CompCert:
compcert.inria.fr
Tam bierze sie normalny komilator C i weryfikje sie ze
kod maszynowy jest poprawnym tlumaczeniem zrodla.
--
Waldek Hebisch
h...@m...uni.wroc.pl
Następne wpisy z tego wątku
- 14.09.15 04:02 Waldek Hebisch
- 14.09.15 08:56 Tomasz Kaczanowski
- 14.09.15 10:16 AK
- 14.09.15 10:31 Tomasz Kaczanowski
- 14.09.15 10:38 AK
- 14.09.15 10:42 Tomasz Kaczanowski
- 14.09.15 10:54 AK
- 14.09.15 11:16 szemrany
- 14.09.15 12:31 Stachu 'Dozzie' K.
- 14.09.15 13:05 Marek Borowski
- 14.09.15 13:14 AK
- 14.09.15 14:05 AK
- 14.09.15 17:00 Waldek Hebisch
- 14.09.15 17:40 AK
- 14.09.15 18:03 Sebastian Biały
Najnowsze wątki z tej grupy
- TCL - problem z escape ostatniego \ w nawiasach {}
- Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- testy-wyd-sort - Podsumowanie
- Tworzenie Programów Nieuprzywilejowanych Opartych Na Wtyczkach
- Do czego nadaje się QDockWidget z bibl. Qt?
- Bibl. Qt jest sztucznie ograniczona - jest nieprzydatna do celów komercyjnych
- Co sciaga kretynow
- AEiC 2024 - Ada-Europe conference - Deadlines Approaching
- Jakie są dobre zasady programowania programów opartych na wtyczkach?
- sprawdzanie słów kluczowych dot. zła
- Re: W czym sie teraz pisze programy??
- Re: (PDF) Surgical Pathology of Non-neoplastic Gastrointestinal Diseases by Lizhi Zhang
- CfC 28th Ada-Europe Int. Conf. Reliable Software Technologies
- Młodzi programiści i tajna policja
- Ada 2022 Language Reference Manual to be Published by Springer
Najnowsze wątki
- 2024-11-02 piszę list do św Mikołaja
- 2024-11-01 karta SIM nie działa w konkretnym smartfonie.
- 2024-11-01 Mamy WZROST! O 50% wzrosła ilość kredytów gotówkowych
- 2024-11-01 Warszawa => Expert Recruiter 360 <=
- 2024-11-01 Warszawa => Technical Leader (Java Background) <=
- 2024-11-01 Warszawa => Account Manager - Usługi rekrutacyjne <=
- 2024-11-01 Warszawa => Head of International Freight Forwarding Department <=
- 2024-11-01 Warszawa => Programista Dynamics 365 CRM <=
- 2024-11-01 Warszawa => Dynamics 365 CRM Developer <=
- 2024-11-01 Warszawa => Junior Rekruter <=
- 2024-11-01 Chrzanów => Specjalista ds. PR Produktowego <=
- 2024-11-01 Białystok => Full Stack web developer (obszar .Net Core, Angular6+) <
- 2024-11-01 Łódź => Frontend Engineer (Three.js) <=
- 2024-11-01 Warszawa => Junior Rekruter <=
- 2024-11-01 Gdańsk => Programista Full Stack .Net <=