Angielskifrancuskihiszpański

Ad


Ulubiona usługa OnWorks

frama-c-gui — online w chmurze

Uruchom frama-c-gui u dostawcy bezpłatnego hostingu OnWorks przez Ubuntu Online, Fedora Online, emulator online Windows lub emulator online MAC OS

Jest to polecenie frama-c-gui, które można uruchomić u dostawcy bezpłatnego hostingu OnWorks przy użyciu jednej z naszych wielu darmowych stacji roboczych online, takich jak Ubuntu Online, Fedora Online, emulator online Windows lub emulator online MAC OS

PROGRAM:

IMIĘ


frama-c[.byte] - statyczny analizator programów w C

frama-c-gui[.byte] - graficzny interfejs frama-c

STRESZCZENIE


rama-c [ Opcje ] pliki

OPIS


rama-c to zestaw narzędzi dedykowanych do analizy kodu źródłowego napisanych w C. It
gromadzi kilka technik analizy statycznej w ramach jednej platformy współpracy. Ten
framework można rozszerzyć o dodatkowe wtyczki umieszczone w $FRAMAC_PLUGIN katalogiem.
Komenda

frama-c -pomoc

dostarczy pełną listę aktualnie zainstalowanych wtyczek.

frama-c-gui jest graficznym interfejsem użytkownika rama-c. Posiada te same opcje, co
wersja wiersza poleceń.

ramka-c.bajt i frama-c-gui.bajt są wersjami wiersza poleceń ocaml w kodzie bajtowym i
odpowiednio graficzny interfejs użytkownika.

Domyślnie Frama-C rozpoznaje .c pliki jako pliki C wymagające wstępnego przetworzenia i .i pliki jako
Pliki C, które zostały już wstępnie przetworzone. Niektóre wtyczki mogą rozszerzać listę rozpoznawanych
pliki. Wstępne przetwarzanie można dostosować za pomocą -cpp-polecenie i -cpp-dodatkowe-args
opcje.

OPCJE


Składnia

Opcje przyjmujące dodatkowy parametr można również zapisać pod formularzem

-opcja=moje pieniądze

Ta opcja jest obowiązkowa, gdy moje pieniądze zaczyna się od myślnika ('-')

Większość opcji, które nie mają parametrów, ma odpowiedni

-Nie-Opcja

opcja, która ma odwrotny skutek.

Pomoc Opcje

-Pomoc podaje krótkie powiadomienie o użyciu i listę zainstalowanych wtyczek.

-pomoc-jądra
wyświetla listę opcji rozpoznawanych przez jądro Frama-C

-gadatliwy n
Ustawia poziom szczegółowości (domyślnie 1). Ustawienie go na 0 spowoduje mniejszy postęp
wiadomości. Ten poziom można również ustawić na per wtyczka podstawa, z opcją -wtyczka-
gadatliwy n. Poziom szczegółowości jądra można kontrolować za pomocą opcji
-jądro-gadatliwe n.

-odpluskwić n
Ustawia poziom debugowania (domyślnie 0, co oznacza brak komunikatów debugowania). Ta opcja
ma takie same specjalizacje dla wtyczek (i jądra), jak -gadatliwy.

-cichy Ustawia poziom szczegółowości i debugowania na 0.

Opcje kontrolowania Frama-C jądro

-bezwzględny-ważny-zakres
uważa, że ​​wszystkie adresy numeryczne w zakresie minimum maksimum są ważne. Granice są
analizowane jako stałe całkowite ocaml. Domyślnie wszystkie adresy numeryczne są
uznane za nieważne.

-dodaj-ścieżkę p1[,p2[...,pn]]
dodaje katalogi przez do listy katalogów, w których znajdują się wtyczki
przeszukany

[-nie]-zezwalaj-duplikacja
umożliwia powielanie małych bloków podczas normalizacji testów i pętli.
W przeciwnym razie normalizacja używa etykiet i gotos. Większe bloki i bloki z nie-
trywialne przepływy kontrolne nigdy nie są duplikowane. Domyślnie tak.

[-nie]-przypis
odczytuje adnotację ACSL. To jest ustawienie domyślne. Adnotacje nie są wstępnie przetwarzane przez
domyślny. Posługiwać się -pp-adnot za to.

-duże-int-hex max
liczby całkowite większe niż max są wyświetlane szesnastkowo (domyślnie wszystkie liczby całkowite są
wyświetlane w postaci dziesiętnej)

-czek wykonuje kontrole integralności wewnętrznego AST (tylko dla programistów).

[-nie]-zwiń-call-cast
umożliwia niejawne rzutowanie między wartością zwracaną przez funkcję a lwartością, którą jest
przypisany do. W przeciwnym razie używana jest zmienna tymczasowa, a rzutowanie jest jawne.
Domyślnie tak.

[-nie]-zakładka
zwija wszystkie wyrażenia składniowo stałe w kodzie przed analizami. Domyślne
do nie.

[-nie]-kontynuuj-opisywanie-błędu
Podczas analizowania adnotacji zachowanie domyślne ( -Nie wersja tej opcji)
gdy wystąpi błąd sprawdzania typu, to odrzucenie pliku źródłowego, tak jak w przypadku
błędy sprawdzania typu w kodzie C. Gdy ta opcja jest włączona, kontroler czcionek
wyświetla tylko ostrzeżenie i odrzuca adnotację, ale sprawdzanie typu będzie kontynuowane
(ale błędy w kodzie C są nadal fatalne).

-cpp-polecenie cmd
Używa cmd jako polecenie do wstępnego przetwarzania plików C. Domyślnie do CPP środowisko
zmienna lub do

gcc -C -E -I.

jeśli nie jest ustawiony. Aby zachować adnotacje ACSL, preprocesor musi zachować
komentarze ( -C opcja dla gcc). %1 i %2 może być stosowany w cmd na oznaczenie
oryginalny plik źródłowy i odpowiednio przetworzony plik

-cpp-dodatkowe-args args
Podaje preprocesorowi dodatkowe argumenty. Jest to przydatne tylko wtedy, gdy
-przypis-przetwarzania wstępnego jest ustawiony. Wstępne przetwarzanie adnotacji odbywa się w dwóch oddzielnych
etapy przetwarzania. Pierwszym z nich jest normalne przejście do kodu C, które zachowuje makro
definicje. Są one następnie używane w drugim przebiegu, podczas którego umieszczane są adnotacje
wstępnie przetworzone. args są używane tylko dla pierwszego przebiegu, więc argumenty, które
nie powinien być używany dwukrotnie (np. dodatkowe dyrektywy include lub makro
definicje) musi zatem iść tam zamiast -cpp-polecenie.

[-nie]-dynlink
Gdy włączone, załaduj wszystkie dynamiczne wtyczki znalezione w ścieżce wyszukiwania (zobacz -wydruk-wtyczka-
ścieżka aby uzyskać więcej informacji na temat domyślnej ścieżki wyszukiwania). W przeciwnym razie tylko wtyczki
na wniosek -load-moduły zostanie załadowany. Zachowanie domyślne jest włączone.

-wyliczenia repr
Wybierz sposób określania reprezentacji wyliczonych typów. rama-c
-wyliczenia pomoc podaje listę dostępnych opcji. Wartość domyślna to wyliczenia gcc

-liczba-cyfr n
Podczas wyprowadzania liczb zmiennoprzecinkowych wyświetl n cyfry. Domyślnie 12.

-float-flush do zera
Operacje zmiennoprzecinkowe wyrównane do zera

-zmiennoprzecinkowy-szesnastkowy
wyświetlacz pływa w postaci szesnastkowej

-float-normalny
wyświetlacz unosi się ze standardową procedurą Ocaml

-float-względny
wyświetl interwał pływaka jako [ Dolna granica++szerokość ]

[-nie]-force-rl-arg-eval
wymusza kolejność oceny od prawej do lewej dla argumentów wywołań funkcji. Inaczej
kolejność oceny pozostaje nieokreślona, ​​jak w standardzie C. Domyślnie nie.

-dziennik-wyłącz
Nie wyświetlaj dziennika bieżącej sesji. Widzieć -dziennik-włącz.

-dziennik-włącz
Domyślnie włączone, zrzuca dziennik wszystkich działań wykonanych podczas bieżącego
Sesja Frama-C w formie skryptu ocaml, który można odtworzyć -Załaduj-
scenariusz. Nazwę skryptu można ustawić za pomocą -nazwa-dziennika opcja.

-nazwa-dziennika Nazwa
Ustaw nazwę pliku dziennika (bez .ml rozbudowa). Domyślnie do
frama_c_journal.

-zainicjowane-dopełnienie-lokalne
Niejawna inicjalizacja wartości lokalnych ustawia bity dopełnienia na 0. Jeśli fałsz, bity dopełniania
są pozostawione niezainicjowane (domyślnie tak).

[-nie]-zachowaj-komentarze
Próbuje zachować komentarze podczas ładnego drukowania kodu źródłowego (domyślnie nie).

[-no]-zatrzymaj-przełącznik
Kiedy -uprość-cfg jest ustawiony, przechowuje instrukcje switch. Domyślnie nie.

-zachowaj-nieużywane-określone-funkcje
See -usuń-nieużywane-określone-funkcje

[-no]-lib-wpis
Wskazuje, że punkt wejścia jest wywoływany podczas wykonywania programu. Oznacza to w
W szczególności nie można zakładać, że zmienne globalne mają swoje początkowe wartości.
Wartość domyślna to -brak wpisu-lib: punkt wejścia jest również punktem początkowym
program i globaly mają swoją wartość początkową.

-obciążenie filet
wczytać (wcześniej zapisany) stan zawarty w filet.

-load-moduł m1[,m2[...,mn]]
ładuje moduły ocaml przez . Te moduły muszą być .cmxspliki dla
natywna wersja kodu Frama-c i .cmoor.cmapliki dla wersji kodu bajtowego (zobacz
w sekcji Dynlink podręcznika Ocaml, aby uzyskać więcej informacji). Wszystkie moduły, które są
obecne w ścieżkach wyszukiwania wtyczek są ładowane automatycznie.

-załaduj-skrypt s1[,s2,[...,sn]]
ładuje skrypty ocaml przez . Skrypty muszą być .mlpliki. Oni
musi być kompilowalny w oparciu tylko o standardową bibliotekę Ocaml i API Frama-C. Gdyby
potrzebny jest jakiś niestandardowy krok kompilacji, skompiluj je poza Frama-C i użyj
-load-moduł zamiast.

-machdep maszyna
zastosowania maszyna jako bieżąca konfiguracja zależna od maszyny (wielkość różnych
typy całkowite, końcowość, ...). Lista aktualnie obsługiwanych maszyn to
dostępne przez -machdep pomoc opcja. Wartość domyślna to x86_32

-Główny f
Zestawy f jako punkt wejścia do analizy. Domyślnie „główny”. Domyślnie jest to
traktowany jako punkt wyjścia analizowanego programu. Posługiwać się -lib-wpis if f
ma być wezwany w trakcie egzekucji.

-zaciemniać
wyświetla zaciemnioną wersję kodu (gdzie oryginalne identyfikatory są zastępowane)
przez bezsensowny) i wyjścia. Tabela korelacji między oryginałem a nowym
symbole są zachowywane na początku wyniku.

-okod filet
przekierowuje dobrze wydrukowany kod do filet zamiast standardowego wyjścia.

[-no]-oryginalna-nazwa
Podczas fazy normalizacji niektóre zmienne mogą zostać przemianowane, jeśli będą inne
zmienna o tej samej nazwie może współistnieć (np. zmienna globalna i
parametr). Gdy ta opcja jest włączona, za każdym razem wypisywany jest komunikat.
Domyślnie nie.

[-no]-ostrzegaj-podpisany-odrzucony
generować alarmy, gdy podpisane downcasty mogą przekroczyć zakres docelowy (domyślnie
nie).

[-no]-ostrzeżenie-podpisane-przepełnienie
generować alarmy dla podpisanych operacji, które się przepełniają (domyślnie tak).

[-nie]-ostrzegaj-unsigned-przygnębiony
generować alarmy, gdy nieoznaczone downcasty mogą przekroczyć zakres docelowy (domyślnie
do nie).

[-no]-ostrzegaj-niepodpisany-przepełnienie
generować alarmy dla operacji bez znaku, które się przepełniają (domyślnie nie).

[-nie]-pp-annot
adnotacje wstępne. Jest to obecnie możliwe tylko przy użyciu gcc (lub GNU
cpp) preprocesor. Domyślnie adnotacje nie są wstępnie przetwarzane.

[-nie]-drukuj
pretty-wypisuje kod źródłowy jako znormalizowany przez CIL (domyślnie no).

-print-libpath
wyświetla katalog, w którym zainstalowana jest biblioteka jądra Frama-C

-ścieżka-drukowania
alias -print-share-path

-print-ścieżka-wtyczek
wyświetla katalog, w którym Frama-C przeszukuje swoje wtyczki (może być nadpisany przez
FRAMAC_PLUGIN zmienna i -dodaj-ścieżkę opcjonalnie)

-print-share-path
wypisuje katalog, w którym Frama-C przechowuje swoje dane (może być nadpisany przez
FRAMAC_SHARE zmienny)

-usuń-nieużywane-określone-funkcje
przechowuje prototypy funkcji, które mają specyfikację ACSL, ale nie są używane w
kod. To jest ustawienie domyślne. Funkcje posiadające atrybut FRAMAC_BUILTIN są zawsze
trzymane.

-bezpieczne tablice
W przypadku tablic wielowymiarowych lub tablic, które są polami wewnątrz struktur, zakładamy, że
wszystkie dostępy muszą być powiązane (ustawione domyślnie). Odwrotną opcją jest -niebezpieczny-
tablice

-zapisać filet
Zapisuje stan Frama-C w filet po przeprowadzeniu analiz.

[-nie]-uprość-cfg
usuwa instrukcje break, continue i switch przed analizami. Domyślnie nie.

-następnie pozwala na komponowanie analiz: pierwszy przebieg Framy-C nastąpi z opcjami
zanim -następnie a drugi przebieg zostanie wykonany z opcjami po -następnie na
aktualny projekt od pierwszego uruchomienia.

-wtedy-on prj
Podobny do -następnie poza tym, że drugi bieg wykonywany jest w projekcie prj Jeśli nie ma takiego
projekt istnieje, Frama-C kończy działanie z błędem.

-czas filet
dołącza czas i datę użytkownika w podanym filet po wyjściu Frama-C.

-sprawdzanie typu
wymusza sprawdzanie typu plików źródłowych. Ta opcja ma znaczenie tylko wtedy, gdy nie ma dalej
wymagana jest analiza (ponieważ sprawdzanie typu nastąpi pośrednio przed analizą)
jest uruchomiony).

-poziom n
składniowo rozwijaj pętle n razy przed analizą. Może to być dość kosztowne
a niektóre wtyczki (np. analiza wartości) zapewniają bardziej wydajne sposoby wykonywania
to samo. Więcej informacji można znaleźć w odpowiednich instrukcjach. Może to również
być aktywowane na zasadzie per-loop za pośrednictwem pętla Pragma odwijać dyrektywa. ZA
wartość ujemna dla n zahamuje takie pragmy.

[-nie]-unicode
wyprowadza formuły ACSL ze znakami utf8. To jest ustawienie domyślne. Kiedy podano
-brak-unicode opcja, Frama-C użyje zamiast tego wersji ASCII. Zobacz instrukcję ACSL
do korespondencji.

-niebezpieczne-tablice
widzieć -bezpieczne tablice

[-no]-nieokreślony-dostęp
sprawdza, czy dostępy do odczytu/zapisu występują w nieokreślonej kolejności (zgodnie z C
pojęcie punktu sekwencji) są wykonywane w oddzielnych lokalizacjach. Z
-brak-nieokreślonego-dostępu, zakłada, że ​​tak jest zawsze (jest to ustawienie domyślne).

-wersja
wyprowadza ciąg wersji Frama-C

-ostrzegaj-dziesiętny-zmiennoprzecinkowy
ostrzega, gdy nie można dokładnie przedstawić stałej zmiennoprzecinkowej (np. 0.1).
może być jednym z Żaden, pewnego razulub cała kolekcja

[-no]-ostrzegaj-niezgłoszony-nazwij się
ostrzega, gdy funkcja jest wywoływana, zanim została zadeklarowana (ustawiona domyślnie).
Rama-C

Wtyczki specyficzny Opcje

Dla każdego wtyczka, Komenda

ramka-c -wtyczka-Pomoc

wyświetli listę opcji specyficznych dla wtyczki.

EXIT STATUS


0 Udana egzekucja

1 Nieprawidłowe dane wprowadzone przez użytkownika

2 Przerwanie przez użytkownika (zabicie lub równoważne)

3 Niezaimplementowana funkcja

4 5 6 Błąd wewnętrzny

125 Nieznany błąd

Status wyjścia większy niż 2 można uznać za błąd (lub żądanie funkcji w sprawie)
statusu wyjścia 3) i mogą być zgłaszane na BTS Frama-C (patrz niżej).

ŚRODOWISKO ZMIENNE


Możliwe jest kontrolowanie miejsc, w których Frama-C szuka swoich plików poprzez
następujące zmienne.

FRAMAC_LIB
Katalog, w którym zainstalowane są skompilowane interfejsy jądra

FRAMAC_PLUGIN
Katalog, w którym Frama-C może znaleźć standardowe wtyczki. Jeśli chcesz mieć wtyczki
w kilku miejscach użyj -dodaj-ścieżkę zamiast.

FRAMAC_SHARE
Katalog, w którym zainstalowane są dane Frama-C.

Korzystaj z frama-c-gui online za pomocą usług onworks.net


Darmowe serwery i stacje robocze

Pobierz aplikacje Windows i Linux

  • 1
    Phaser
    Phaser
    Phaser to szybka, darmowa i zabawna gra otwarta
    źródłowa struktura gry HTML5, która oferuje
    Renderowanie WebGL i Canvas w poprzek
    przeglądarek internetowych na komputery i urządzenia mobilne. Gry
    może być współ...
    Pobierz Phaser
  • 2
    Silnik WASAL
    Silnik WASAL
    VASSAL to silnik gry do tworzenia
    elektroniczne wersje tradycyjnej tablicy
    i gry karciane. Zapewnia wsparcie dla
    renderowanie elementów gry i interakcja,
    i ...
    Pobierz silnik VASSAL
  • 3
    OpenPDF — rozwidlenie iText
    OpenPDF — rozwidlenie iText
    OpenPDF to biblioteka Java do tworzenia
    i edycji plików PDF z LGPL i
    Licencja open source MPL. OpenPDF to
    LGPL/MPL open source następca iText,
    w ...
    Pobierz OpenPDF — rozwidlenie iText
  • 4
    SAGA GIS
    SAGA GIS
    SAGA - System do Automatyzacji
    Analizy geologiczne - to geografia
    Oprogramowanie systemu informacyjnego (GIS) z
    ogromne możliwości geodanych
    przetwarzanie i an...
    Pobierz SAGA GIS
  • 5
    Przybornik dla Java/JTOOpen
    Przybornik dla Java/JTOOpen
    IBM Toolbox for Java / JTOpen to
    biblioteka klas Java obsługująca
    klient/serwer i programowanie internetowe
    modeli do systemu z systemem OS/400,
    i5/OS, lub...
    Pobierz Zestaw narzędzi dla języka Java/JTOpen
  • 6
    D3.js
    D3.js
    D3.js (lub D3 dla dokumentów opartych na danych)
    to biblioteka JavaScript, która pozwala
    do tworzenia dynamicznych, interaktywnych danych
    wizualizacje w przeglądarkach internetowych. Z D3
    ty...
    Pobierz plik D3.js
  • więcej »

Komendy systemu Linux

Ad