АнглийскийФранцузскийИспанский

Ad


Значок OnWorks

frama-c-gui - Интернет в облаке

Запустите frama-c-gui в бесплатном хостинг-провайдере OnWorks через Ubuntu Online, Fedora Online, онлайн-эмулятор Windows или онлайн-эмулятор MAC OS

Это команда frama-c-gui, которую можно запустить в бесплатном хостинг-провайдере OnWorks, используя одну из наших многочисленных бесплатных онлайн-рабочих станций, таких как Ubuntu Online, Fedora Online, онлайн-эмулятор Windows или онлайн-эмулятор MAC OS.

ПРОГРАММА:

ИМЯ


frama-c [.byte] - статический анализатор программ на C

frama-c-gui [.byte] - графический интерфейс frama-c

СИНТАКСИС


фрама-с [ кредита ] файлов

ОПИСАНИЕ


фрама-с представляет собой набор инструментов, предназначенных для анализа исходного кода, написанного на C. Это
объединяет несколько методов статического анализа в единую платформу для совместной работы. Этот
framework может быть расширен дополнительными плагинами, размещенными в $ FRAMAC_PLUGIN каталог.
Команда

кадра-с-помощь

предоставит полный список установленных плагинов.

фрама-си-гуй это графический пользовательский интерфейс фрама-с. Он имеет те же параметры, что и
версия для командной строки.

кадр-c.byte и frama-c-gui.byte являются версиями байт-кода командной строки ocaml и
графический пользовательский интерфейс соответственно.

По умолчанию Frama-C распознает .c файлы как файлы C, требующие предварительной обработки и .i файлы как
Файлы C уже были предварительно обработаны. Некоторые плагины могут расширять список распознаваемых
файлы. Предварительную обработку можно настроить с помощью -cpp-команда и -cpp-дополнительные аргументы
настройки.

ДОПОЛНИТЕЛЬНЫЕ УСЛУГИ, НЕ ВКЛЮЧЕННЫЕ В ПАКЕТ


Синтаксис

Опции, принимающие дополнительный параметр, также можно записать в форме

-вариант=остановить

Эта опция обязательна, когда остановить начинается с тире ('-')

Большинство параметров, не имеющих параметров, имеют соответствующий

-нет-Option

вариант, имеющий противоположный эффект.

Документи кредита

-Помощь дает краткое уведомление об использовании и список установленных плагинов.

-ядро-помощь
печатает список опций, распознаваемых ядром Frama-C

-подробный n
Устанавливает уровень детализации (по умолчанию 1). Установка его на 0 приведет к меньшему прогрессу
Сообщения. Этот уровень также можно установить на плагин основа, с опцией -плагин-
подробный n. Уровень детализации ядра можно контролировать с помощью опции
-ядро-подробный n.

-отлаживать n
Устанавливает уровень отладки (по умолчанию 0, что означает отсутствие отладочных сообщений). Этот вариант
имеет ту же специализацию для каждого плагина (и ядра), что и -подробный.

-тихо Устанавливает уровень детализации и отладки на 0.

Опции управление Frama-C's ядро

-абсолютный допустимый диапазон
считает, что все числовые адреса в диапазоне мин Макс действительны. Границы
анализируется как целочисленные константы ocaml. По умолчанию все числовые адреса
считается недействительным.

-добавить путь p1 [, p2 [..., pn]]
добавляет каталоги через в список каталогов, в которых находятся плагины
поиск

[-no] -allow-duplication
позволяет дублировать небольшие блоки во время нормализации тестов и циклов.
В противном случае для нормализации используются метки и переходы. Большие блоки и блоки с не-
тривиальный поток управления никогда не дублируется. По умолчанию да.

[-no] -annot
читает аннотацию ACSL. Это значение по умолчанию. Аннотации не обрабатываются
дефолт. Использовать -пп-аннот для этого.

-большие-целые-шестнадцатеричные Макс
целые числа больше, чем Макс отображаются в шестнадцатеричном формате (по умолчанию все целые числа
отображается в десятичной системе счисления)

-чек выполняет проверки целостности внутреннего AST (только для разработчиков).

[-no] -collapse-call-cast
позволяет неявное преобразование между значением, возвращаемым функцией, и значением lvalue, которое оно
назначен. В противном случае используется временная переменная, и приведение делается явным.
По умолчанию да.

[-no] -constfold
сворачивает все синтаксически постоянные выражения в коде перед анализом. По умолчанию
к нет.

[-no] -continue-annot-error
При анализе аннотации поведение по умолчанию ( -нет версия этой опции)
при возникновении ошибки проверки типов необходимо отклонить исходный файл, как в случае с
ошибки проверки типов в коде C. Если этот параметр включен, проверка типов будет
вывести только предупреждение и отменить аннотацию, но проверка типов продолжится
(однако ошибки в коде C по-прежнему фатальны).

-cpp-команда CMD
Пользы CMD как команду для предварительной обработки файлов C. По умолчанию CPP охрана окружающей среды
переменная или

gcc -C -E -I.

если он не установлен. Чтобы сохранить аннотации ACSL, препроцессор должен сохранять
комментарии ( -C вариант для gcc). %1 и %2 может быть использован в CMD обозначить
исходный исходный файл и предварительно обработанный файл соответственно

-cpp-дополнительные аргументы арг
Дает дополнительные аргументы препроцессору. Это полезно только тогда, когда
-preprocess-аннот установлен. Предварительная обработка аннотаций выполняется двумя отдельными предварительными
этапы обработки. Первый - это нормальный проход кода C, который сохраняет макрос
определения. Затем они используются во втором проходе, во время которого аннотации
предварительно обработанный. арг используются только для первого прохода, так что аргументы, которые
не следует использовать дважды (например, дополнительные директивы include или макрос
определения), таким образом, должны идти туда вместо -cpp-команда.

[-no] -dynlink
Когда он включен, загрузите все динамические плагины, найденные в пути поиска (см. -print-плагин-
путь для получения дополнительной информации о пути поиска по умолчанию). В противном случае только плагины
запрошенный -load-модули будет загружен. Поведение по умолчанию включено.

-перечисления магнезии
Выберите способ определения представления перечислимых типов. фрама-с
-перечисления помощь дает список доступных опций. По умолчанию gcc-перечисления

-плавающие цифры n
При выводе чисел с плавающей запятой отображайте n цифры. По умолчанию 12.

-плавно-промывка до нуля
Операции с плавающей запятой сбрасываются до нуля

-флот-шестигранник
отображать числа с плавающей запятой как шестнадцатеричный

-float-нормальный
отображение поплавков со стандартной программой Ocaml

-плавучий родственник
отображать интервал с плавающей запятой как [ нижняя граница++ширина ]

[-no] -force-rl-arg-eval
устанавливает порядок оценки справа налево для аргументов вызовов функций. Иначе
порядок оценки остается неопределенным, как в стандарте C. По умолчанию нет.

-журнал-отключить
Не выводить журнал текущего сеанса. Видеть -журнал-включить.

-журнал-включить
По умолчанию выгрузка журнала всех действий, выполненных за текущий
Сеанс Frama-C в виде сценария ocaml, который можно воспроизвести с помощью -нагрузка-
скрипт. Имя скрипта можно задать с помощью -название-журнала опцию.

-название-журнала имя
Задайте имя файла журнала (без .ml расширение). По умолчанию
frama_c_journal.

-инициализированные-заполнение-локальные
Неявная инициализация locals устанавливает биты заполнения в 0. Если false, биты заполнения
остаются неинициализированными (по умолчанию да).

[-no] -keep-комментарии
Пытается сохранить комментарии при красивой печати исходного кода (по умолчанию нет).

[-no] -keep-переключатель
После появления -упростить-cfg установлен, сохраняет операторы переключения. По умолчанию нет.

-keep-неиспользуемые-указанные-функции
Читать -remove-неиспользуемые-указанные-функции

[-no] -lib-entry
Указывает, что точка входа вызывается во время выполнения программы. Это означает, что в
в частности, нельзя предполагать, что глобальные переменные имеют свои начальные значения.
По умолчанию используется -no-lib-запись: точка входа также является отправной точкой
программа и глобальные переменные имеют свое начальное значение.

-load файл
загрузить (ранее сохраненное) состояние, содержащееся в файл.

-load-модуль m1 [, m2 [..., mn]]
загружает модули ocaml через . Эти модули должны быть .cmxsфайлы для
версия с собственным кодом Frama-c и .cmoor.смафайлы для версии байт-кода (см.
раздел Dynlink руководства Ocaml для получения дополнительной информации). Все модули, которые
присутствующие в плагине пути поиска загружаются автоматически.

-load-скрипт s1 [, s2, [..., sn]]
загружает скрипты ocaml через . Скрипты должны быть .mlфайлы. Они
должен быть компилируемым, полагаясь только на стандартную библиотеку Ocaml и API Frama-C. Если
требуется некоторый настраиваемый шаг компиляции, скомпилируйте их вне Frama-C и используйте
-load-модуль .

-махдеп машина
использования машина как текущая машинно-зависимая конфигурация (размер различных
целочисленные типы, бесконечность, ...). Список поддерживаемых в настоящее время машин:
доступны через -махдеп помощь вариант. По умолчанию x86_32

-основной f
Наборы f как отправная точка анализа. По умолчанию - main. По умолчанию это
рассматривается как отправная точка анализируемой программы. Использовать -lib-запись if f
должен быть вызван в середине казни.

запутывать
печатает обфусцированную версию кода (где оригинальные идентификаторы заменяются
бессмысленным) и выходит. Таблица соответствия между оригиналом и новым
символы сохраняются в начале результата.

-окод файл
перенаправляет красиво напечатанный код на файл вместо стандартного вывода.

[-no] -orig-name
На этапе нормализации некоторые переменные могут быть переименованы при изменении
переменная с тем же именем может сосуществовать (например, глобальная переменная и формальная
параметр). Когда эта опция включена, сообщение печатается каждый раз, когда это происходит.
По умолчанию нет.

[-no] -warn-signed-downcast
генерировать сигналы тревоги, когда подписанные понижающие передачи могут превышать целевой диапазон (по умолчанию
нет).

[-no] -warn-подписано-переполнение
генерировать аварийные сигналы для подписанных операций, которые переполняются (по умолчанию - да).

[-no] -warn-unsigned-downcast
генерировать аварийные сигналы, когда неподписанные понижающие передачи могут превышать целевой диапазон (по умолчанию
к нет).

[-no] -warn-unsigned-overflow
генерировать аварийные сигналы для беззнаковых операций, которые переполняются (по умолчанию нет).

[-no] -pp-annot
предварительная обработка аннотаций. В настоящее время это возможно только при использовании gcc (или GNU
cpp) препроцессор. По умолчанию аннотации предварительно не обрабатываются.

[-no] -print
красиво печатает исходный код, как нормализованный CIL (по умолчанию нет).

-print-libpath
выводит каталог, в котором установлена ​​библиотека ядра Frama-C

-печать-путь
псевдоним -print-поделиться-путь

-print-плагин-путь
выводит каталог, в котором Frama-C ищет свои плагины (может быть перекрыт
FRAMAC_PLUGIN переменная и -добавить путь опция)

-print-поделиться-путь
выводит каталог, в котором Frama-C хранит свои данные (может быть перекрыт
FRAMAC_SHARE Переменная)

-remove-неиспользуемые-указанные-функции
хранит прототипы функций, которые имеют спецификацию ACSL, но не используются в
код. Это значение по умолчанию. Функции, имеющие атрибут FRAMAC_BUILTIN всегда
хранится.

-safe-массивы
Для многомерных массивов или массивов, которые являются полями внутри структур, предполагается, что
все доступы должны быть связаны (установлено по умолчанию). Противоположный вариант - -безопасно-
массивы

-спасти файл
Сохраняет состояние Frama-C в файл после сдачи анализов.

[-no] -simplify-cfg
удаляет операторы break, continue и switch перед анализом. По умолчанию нет.

-затем позволяет составлять анализы: будет выполнен первый запуск Frama-C с опциями
до -затем и второй запуск будет выполнен с опциями после -затем на
текущий проект с первого запуска.

-Затем на PRJ
Похожий на что -затем за исключением того, что второй запуск выполняется в проекте PRJ Если нет такого
проект существует, Frama-C завершается с ошибкой.

-время файл
добавляет время и дату пользователя в данный файл когда Frama-C уйдет.

-typeheck
принудительно проверяет типы исходных файлов. Эта опция актуальна только в том случае, если больше нет
требуется анализ (поскольку проверка типов неявно выполняется до анализа
запускается).

-уровень n
синтаксически развернуть циклы n раз до анализа. Это может быть довольно дорого
а некоторые плагины (например, анализ стоимости) предоставляют более эффективные способы выполнения
тоже самое. См. Соответствующие руководства для получения дополнительной информации. Это также может
активироваться для каждого цикла с помощью поиска прагма развернуть директива. А
отрицательное значение для n будет препятствовать таким прагмам.

[-no] -unicode
выводит формулы ACSL с символами utf8. Это значение по умолчанию. Когда дается
-нет-юникод вариант, Frama-C будет использовать версию ASCII. См. Руководство по ACSL.
для корреспонденции.

-unsafe-массивы
посмотреть -safe-массивы

[-no] -unspecified-access
проверяет, что доступ для чтения / записи происходит в неопределенном порядке (согласно C
стандартное понятие точки последовательности) выполняются в разных местах. С участием
-нет-неопределенного-доступа, предполагает, что это всегда так (это значение по умолчанию).

-версия
выводит строку версии Frama-C

-предупреждать-десятичное-с плавающей запятой
предупреждает, когда константа с плавающей запятой не может быть точно представлена ​​(например, 0.1).
может быть одним из никто, консолидироватьили Найти

[-no] -warn-undeclared-callee
предупреждает, когда функция вызывается до того, как она была объявлена ​​(установлено по умолчанию).
Frama-С

Плагины конкретный кредита

Для каждого плагин, команда

фрама-с -плагин-Помощь

предоставит список параметров, относящихся к плагину.

ВЫХОД статус


0 Успешное исполнение

1 Неверный ввод пользователя

2 Прерывание пользователя (уничтожение или эквивалент)

3 Не реализованная функция

4 5 6 Внутренняя ошибка

125 Неизвестная ошибка

Статус выхода больше 2 может рассматриваться как ошибка (или запрос функции для случая
статуса выхода 3), и о них можно сообщить на BTS Frama-C (см. ниже).

ОКРУЖАЮЩАЯ СРЕДА ПЕРЕМЕННЫЕ


Можно контролировать места, где Frama-C ищет свои файлы, через
следующие переменные.

ФРАМАК_ЛИБ
Каталог, в котором установлены скомпилированные интерфейсы ядра.

FRAMAC_PLUGIN
Каталог, в котором Frama-C может найти стандартные плагины. Если вы хотите иметь плагины
в нескольких местах используйте -добавить путь .

FRAMAC_SHARE
Каталог, в котором установлены данные Frama-C.

Используйте frama-c-gui в Интернете с помощью сервисов onworks.net


Бесплатные серверы и рабочие станции

Скачать приложения для Windows и Linux

  • 1
    Pharser
    Pharser
    Phaser - это быстрый, бесплатный и увлекательный
    исходный игровой фреймворк HTML5, который предлагает
    WebGL и рендеринг Canvas через
    настольные и мобильные веб-браузеры. Игры
    может быть со ...
    Скачать Фазер
  • 2
    VASSAL Двигатель
    VASSAL Двигатель
    VASSAL - игровой движок для создания
    электронные версии традиционной доски
    и карточные игры. Он обеспечивает поддержку
    рендеринг и взаимодействие игровых элементов,
    и ...
    Скачать движок VASSAL
  • 3
    OpenPDF - форк iText
    OpenPDF - форк iText
    OpenPDF — это библиотека Java для создания
    и редактирование PDF-файлов с помощью LGPL и
    Лицензия с открытым исходным кодом MPL. OpenPDF – это
    LGPL/MPL преемник iText с открытым исходным кодом,
    и ...
    Скачать OpenPDF — форк iText
  • 4
    SAGA GIS
    SAGA GIS
    САГА - Автоматизированная система
    Геонаучный анализ - это географический
    Программное обеспечение информационной системы (ГИС) с
    огромные возможности для геоданных
    обработка и анализ ...
    Скачать ГИС САГА
  • 5
    Панель инструментов для Java / JTOpen
    Панель инструментов для Java / JTOpen
    IBM Toolbox for Java / JTOpen — это
    библиотека классов Java, поддерживающая
    клиент/сервер и интернет-программирование
    моделей в систему под управлением OS/400,
    i5/ОС, о...
    Скачать набор инструментов для Java/JTOpen
  • 6
    D3.js
    D3.js
    D3.js (или D3 для документов, управляемых данными)
    это библиотека JavaScript, которая позволяет вам
    для создания динамических интерактивных данных
    визуализации в веб-браузерах. С D3
    вы...
    Скачать D3.js
  • Больше »

Команды Linux

Ad