Manual de Usuario-Blast

Published on January 2017 | Categories: Documents | Downloads: 31 | Comments: 0 | Views: 498
of 7
Download PDF   Embed   Report

Comments

Content

Manual de usuario
Model checker

MANUAL DE USUARIO

0

Índice

Introducción ........................................................................................................................................ 2
¿Qué es model checker? ................................................................................................................. 2
Software a validar .............................................................................................................................. 2
Comando de ayuda ............................................................................................................................. 3
Requisitos del sistema ...................................................................................................................... 3
Requisitos a instalar Blast Versión 2.5 Windows .......................................................................... 3
PASOS A INSTALAR A LINUX ................................................................................................................ 4
¿Qué es el OCaml? ........................................................................................................................ 5
Ejemplos del BLAST ........................................................................................................................... 5

MANUAL DE USUARIO

1

Introducción
BLAST (Berkeley Lazy Abstraction Software verification Tool) es una verificación automática de la
herramienta para comprobar temporal de las propiedades de seguridad de los programas en C. Dado
un programa en C y temporal de la seguridad de la propiedad, la Explosión de estática demuestra
que el programa satisface la seguridad de la propiedad, o proporciona una ruta de ejecución que
presenta una violación de la propiedad (o, ya que el problema es indecidible, no se termina). La
explosión de construcciones, explora, y refina las abstracciones del estado del programa espacio
basado en lo perezoso predicado de la abstracción y de interpolación basado predicado
descubrimiento.
Se habla de este model checker para hacer pruebas ya que se necesitan muchas instalaciones para
que se pueda correr bien en el computador y la iniciativa de este manual es para que los podremos
instruir que requisitos necesita su computador para que pudiese funcionar de manera perfecta y
hacer chequeo de sus pruebas de sus programas.

¿Qué es model checker?
La verificación de modelos (o Model checking) es un método automático de verificación de un
sistema formal, en la mayoría de las ocasiones derivado del hardware o del software de un sistema
informático. El sistema es descrito mediante un modelo, que debe satisfacer una especificación
formal descrita mediante una fórmula, a menudo escrita en alguna variedad de lógica temporal.
El modelo suele estar expresado como un sistema de transiciones, es decir, un grafo dirigido, que
consta de un conjunto de vértices y arcos. Un conjunto de proposiciones atómicas se asocia a cada
nodo. Así pues, los nodos representan los estados posibles de un sistema, los arcos posibles
evoluciones del mismo, mediante ejecuciones permitidas, que alteran el estado, mientras que las
proposiciones representan las propiedades básicas que se satisfacen en cada punto de la ejecución.

Software a validar
PROGRAMA: “Problema del viajero”
Este programa puede hacer aproximaciones para encontrar la ruta mas corta en base a intercambios
simples entre dos puntos o por medio de invertir el sentido de una parte del recorrido.
Las ciudades son distribuidas a lo largo de una circunferencia de radio igual a 1, por lo tanto el costo
final esperado debe de ser un valor cercano a 2*pi.

MANUAL DE USUARIO

2

Comando de ayuda
Ayuda:

Muestra este archivo.

Guarda:

Le indica el programa que debe de guardar los datos de las ciudades en un archivo
(Guarda el ángulo y las coordenadas). La extensión del archivo debe ser .dat

Iniciar:

Inicia la búsqueda de mejores rutas.

Muestra:

Muestra los datos de las ciudades.

Pesos:

Muestra los costos entre cada ciudad.

Tour:

Muestra cada nuevo tour encontrado. Los nuevos recorridos se muestran durante la
búsqueda de rutas

Salir:

Termina la ejecución del programa

Requisitos del sistema
La aplicación funciona hasta en un ordenador simple pero el procesamiento será algo lento,
prácticamente con cualquier sistema operativo. Aun así dispone de ciertos requerimientos. Dichos
requerimientos se fundamentan principalmente en que se ha implementado mediante el lenguaje de
programación C ya que necesita de una tipo terminal como la que utiliza Linux ya que es la parte
esencial de este model checker que necesita.

Requisitos a instalar Blast Versión 2.5 Windows
1. Se necesita tener instalado el cygwin para que pueda funcionar. Se puede encontrar en su
página oficial https://www.cygwin.com/. En su página tiene tanto para La arquitectura tanto
de 32bits y 64 bits.
2. Tener 3 archivos .dll (cygwin1.dll, cyggmp-3.dll, and KERNEL32.dll)
3. Descargar un archive .zip (blast-2.5_win32-bin-x86.zip)
4. Sacados de su página oficial del blast http://mtc.epfl.ch/software-tools/blast/index-epfl.php

MANUAL DE USUARIO

3

PASOS A INSTALAR A LINUX
1. Descargar BLAST de la fuente de distribución.
2. Descomprimir y desempaquetar el código fuente de distribución. Esto creará un directorio
llamado blast-2.4 cuya estructura se explica a continuación.
tar xvfz blast-2.4.tar.gz

3. Entrar al directorio blast-2.4/explosión y ejecutar GNU Make para compilar la distribución.
cd blast-2.4/blast
make distclean
make

4. Ahora debe encontrar los ejecutables pblast.opt y spec.opt en el directorio bin. Estos son
enlaces simbólicos a los archivos del mismo nombre en el directorio psrc y especificaciones,
respectivamente. El ejecutable pblast.opt es Blast model checker, el ejecutable de spec.opt
es la especificación instrumentada.
5. También debe descargar e instalar el Simplify Theorem Prover . Esto implica la colocación
de los archivos ejecutables Simplify (Linux) o Simplify.exe (Windows) en el directorio bin.
Además, Blast tiene interfaces con el Cvc Theorem de Prover, si usted desea instalar y
utilizar esta herramienta para el theorem prover de llamadas.
De nuevo, esto implica poner el ejecutable para la Cvc en el directorio bin. Tenga en cuenta
que en el orden del Blast para el uso de Simplificar o Cvc, el archivo ejecutable para
Simplificar y Cvc debe estar en la ruta de acceso actual.
Es una buena idea añadir la Explosión bin del directorio a la ruta de acceso. El Blast también
puede utilizar cualquier otro SMT-LIB compatible teorema de armario para sus consultas.
6. La explosión también viene con una independiente de la GUI. Para instalar la GUI, usted
debe descargar e instalar el LablGTK paquete, además de Ocaml. Después de haber
instalado LablGTK, usted puede construir la interfaz gráfica de usuario por ir al directorio
blast-2.4 y escribir:
make gui
Esto va a crear la GUI ejecutable blastgui.opt en el directorio bin.

7. Blast (de hecho la GUI) requiere el uso de la variable de entorno BLASTHOME. Por lo tanto,
usted debe establecer la variable de entorno BLASTHOME para que apunte al directorio de
explosión-2.4/explosión de donde has descargado Blast.

MANUAL DE USUARIO

4

Puede descargar versiones ejecutables de Blast para Linux y Windows con Cygwin. Usted debe de
forma independiente descargar e instalar el Simplify Theorem Prover Blast requiere que el Simplify
Theorem este dentro del path.
Tambien hay mas maneras de instalar el blast. Por ejemplo Usted necesitará OCaml para construir
Blast. Blast ha sido probado en Linux y en Windows con Cygwin.

¿Qué es el OCaml?
Es un propósito general de fuerza industrial lenguaje de programación con un énfasis en la
expresividad y la seguridad. Es la tecnología de elección en las empresas donde un solo
error te puede costar millones y la velocidad de los asuntos, y que hay una comunidad
activa que se ha desarrollado un amplio conjunto de bibliotecas.
Si desea utilizar Blast en Windows, entonces usted debe conseguir una completa
instalación de Cygwin y el código fuente en OCaml distribución y compilarlo usted mismo
usando el Cygwin herramientas (como contraposición a conseguir el nativo Win32-código
de la versión de OCaml).

Ejemplos del BLAST
Comprobación De La Accesibilidad
La forma más sencilla de escribir un programa que la Blast debe comprobar es especificar una
etiqueta C, en un programa de ubicación que no debe ser alcanzado.
El model checker Blast comprueba si una etiqueta en el código fuente de C es alcanzable. El
comando básico para el funcionamiento de Blast es "pblast.opt prog.c -de inicio principal -L errlabel".
Este se ejecuta el modelo de ficha en el programa prog.c y comprueba la accesibilidad del error de
etiqueta errlabel, a partir de la ubicación inicial de la función de inicio.
Cuando termine la corrida con una traza de error o un mensaje de que el error era inalcanzable (o,
desde la accesibilidad problema es indecidible, el programa no puede terminar). Los valores
predeterminados para iniciar y errlabel son los principales y ERROR, respectivamente.
Por lo tanto, la invocación de Explosión con pblast.opt prog.c comprueba si el programa ERROR de
etiqueta se puede llegar, cuando comience la ejecución de la función principal.

MANUAL DE USUARIO

5

Considere el seguimiento del programa C:
int main() {
int x,y;
if (x > y) {
x = x - y;
if (x <= 0) {
ERROR: goto ERROR;
}
}
}

Cualquier otra de la seguridad de la propiedad puede ser transformada a la accesibilidad de la
comprobación de programa de instrumentación. Por ejemplo, más sofisticados, las especificaciones
están instrumentados en el código de preprocesamiento paso tal que la falla de la especificación de
cantidades para llegar a un determinado error de etiqueta. Esto también significa que usted puede
añadir sus propias anotaciones directamente en el código, y un especial de error etiqueta para
significar la violación de la propiedad que desea comprobar.

MANUAL DE USUARIO

6

Sponsor Documents

Or use your account on DocShare.tips

Hide

Forgot your password?

Or register your new account on DocShare.tips

Hide

Lost your password? Please enter your email address. You will receive a link to create a new password.

Back to log-in

Close