Contenido principal

La traducción de esta página aún no se ha actualizado a la versión más reciente. Haga clic aquí para ver la última versión en inglés.

Ejecutar Polyspace Bug Finder en la interfaz de usuario de la plataforma Polyspace

Polyspace® Bug Finder™ identifica errores en tiempo de ejecución, problemas de simultaneidad, vulnerabilidades de seguridad y otros defectos en software integrado C y C++. Mediante el análisis estático, incluido el análisis semántico, Bug Finder analiza las estructuras de control, el flujo de datos y el comportamiento interprocedimental. Bug Finder permite clasificar y corregir fallos en una etapa temprana del proceso de desarrollo, ya que resalta los defectos en cuanto se detectan.

Puede ejecutar Bug Finder en proyectos de C/C++ completos desde la interfaz de usuario de la plataforma Polyspace o utilizando scripts. Para obtener más información, consulte:

  • Ejecutar Polyspace en la interfaz de usuario de la plataforma Polyspace

    Si es la primera vez que utiliza Polyspace, comience usando la interfaz de usuario de Polyspace. Puede obtener ayuda mediante funcionalidades como el nuevo menú de proyecto, configuración asistida y un registro de análisis resumido.

  • Ejecutar Polyspace desde la línea de comandos de Windows o Linux

    Una vez que configure un proyecto en la interfaz de usuario de la plataforma Polyspace y complete varias pruebas, podrá exportar la configuración a scripts que se ejecutan automáticamente o bajo demanda. También puede ejecutar un análisis de Polyspace directamente desde la línea de comandos del sistema operativo. Luego, puede guardar los comandos en archivos por lotes (Windows®) o scripts shell (Linux®) para ejecuciones posteriores. Si ejecuta productos de Polyspace Server utilizando herramientas de integración continua, como Jenkins®, puede reutilizar los scripts de los productos de escritorio de Polyspace.

  • Ejecutar Polyspace en MATLAB

    Si tiene una instalación de MATLAB®, es muy sencillo escribir scripts para ejecutar un análisis de Polyspace. Obtendrá todas las ventajas de crear scripts en el entorno de MATLAB, como ayuda automática con la sintaxis de funciones. Después de ejecutar un análisis, puede crear su propia visualización de los resultados utilizando gráficas y herramientas de visualización de MATLAB.

Archivos de ejemplo

Para seguir los pasos de este tutorial, copie los archivos de polyspaceroot\polyspace\examples\cxx\Bug_Finder_Example\sources en otra carpeta. En este caso, polyspaceroot es la carpeta de instalación de Polyspace; por ejemplo, C:\Program Files\Polyspace\R2025a.

Ejecutar Polyspace en la interfaz de usuario de la plataforma Polyspace

Abrir la interfaz de usuario de la plataforma Polyspace

Haga doble clic en el ejecutable polyspace-desktop-ui de polyspaceroot\polyspace\bin. En este caso, polyspaceroot es la carpeta de instalación de Polyspace; por ejemplo, C:\Program Files\Polyspace\R2025a. Consulte Installation Folder.

Si abre la interfaz de usuario de escritorio anterior y no ha establecido la interfaz de usuario de la plataforma Polyspace como la interfaz de usuario predeterminada, haga clic en el botón Try the new desktop UI y, opcionalmente, seleccione la casilla de verificación para hacer que la interfaz de usuario de la plataforma Polyspace sea la nueva interfaz de usuario predeterminada.

Si ha configurado un acceso directo a Polyspace en el escritorio o en el menú Start de Windows, haga doble clic en el acceso directo.

Añadir archivos fuente

Para ejecutar un análisis, es necesario crear un proyecto de Polyspace nuevo. Un proyecto de Polyspace dirige a las carpetas fuente y de inclusión en el sistema de archivos.

En la parte izquierda del panel Start Page, haga clic en New Project. Como alternativa, seleccione New > Project en la barra de tareas.

Seleccione una ubicación para guardar el proyecto e introduzca el nombre del proyecto. A continuación, añada las carpetas fuente y de inclusión. Seleccione Add Source Folder en la barra de tareas y vaya a la carpeta de los archivos fuente. En este tutorial, añada la carpeta en la que ha guardado los archivos fuente y de inclusión.

El nuevo proyecto está en el panel Projects. Las carpetas fuente se añaden al nodo Code del proyecto. Puede añadir más archivos o carpetas más tarde haciendo clic con el botón secundario en el proyecto o utilizando los botones de la barra de herramientas.

Más tarde, puede agrupar los proyectos guardándolos en un área de trabajo. Un área de trabajo permite agrupar proyectos relacionados y abrir todos los proyectos a la vez. Para obtener más información sobre cómo utilizar áreas de trabajo, consulte Manage Related Projects in Polyspace Platform User Interface Using Workspaces.

Configurar y ejecutar Polyspace

Puede cambiar las opciones predeterminadas asociadas a un análisis de Polyspace.

Haga doble clic en el nodo Configuration del panel Projects. En el panel Configuration, cambie las opciones según sea necesario. Para este tutorial, en la pestaña Static Analysis, seleccione Coding Rules & Code Metrics. Seleccione la opción Use custom checkers file y haga clic en el icono de carpeta. Se abre la ventana de selección de comprobadores (Checkers Selection). Seleccione MISRA C:2023 en la barra lateral y seleccione All encima de la lista de comprobaciones. Haga clic en Save changes para guardar el archivo de selección de comprobadores para el proyecto y cierre la ventana de selección de comprobadores.

Checkers selection window with the All check box selected for MISRA C:2023 rules

Para obtener más información sobre las opciones de configuración, señale cada opción. En el recuadro, haga clic en el enlace More help para obtener ayuda sensible al contexto sobre las opciones.

Option tooltip for the Use custom checkers file option

Seleccione la pestaña Project para volver a la barra de herramientas del proyecto. Para iniciar el análisis, haga clic en Find Issues en la barra de herramientas.

Se abre un panel en el que puede seguir el progreso del análisis. Una vez que Polyspace completa el análisis, los resultados aparecen en el panel Results. Haga doble clic en el archivo de resultados para abrir el panel de control de los resultados.

Información adicional

Para obtener información adicional sobre cómo ejecutar Polyspace en la interfaz de usuario de la plataforma Polyspace, consulte:

Ejecutar Polyspace desde la línea de comandos de Windows o Linux

Puede ejecutar Bug Finder desde la línea de comandos de Windows o Linux con archivos por lotes (.bat) o scripts shell (.sh).

Para ejecutar un análisis de Bug Finder, utilice el comando polyspace-bug-finder.

Para evitar tener que escribir la ruta completa al comando, añada la ruta polyspaceroot\polyspace\bin a la variable de entorno Path en el sistema operativo. En este caso, polyspaceroot es la carpeta de instalación de Polyspace; por ejemplo, C:\Program Files\Polyspace\R2025a.

Vaya a la carpeta donde guardó los archivos. Introduzca este comando:

polyspace-bug-finder -sources numerical.c,dataflow.c -I . -results-dir .
En este caso, . indica la carpeta actual. Las opciones utilizadas son:

  • -sources: especifica archivos fuente separados por comas.

  • -I: especifica la ruta a la carpeta de inclusión. Utilice la opción -I cada vez que desee añadir una carpeta de inclusión diferente.

  • -results-dir: especifica la ruta a la carpeta donde Polyspace Bug Finder guarda los resultados.

    Tenga en cuenta que la carpeta de resultados se elimina y se vuelve a rellenar cada vez que se ejecuta un análisis. Para evitar eliminar accidentalmente los archivos durante la limpieza en lugar de utilizar una carpeta existente que contenga otros archivos, especifique una carpeta dedicada para los resultados de Polyspace Bug Finder.

Cuando el análisis se completa, Bug Finder guarda los resultados en el archivo ps_results.psbf. Puede abrir este archivo desde la interfaz de usuario de la plataforma Polyspace utilizando este comando:

polyspace ps_results.psbf

En lugar de especificar fuentes separadas por comas directamente en la línea de comandos, puede enumerar las fuentes en un archivo de texto (un archivo por línea). Utilice la opción -sources-list-file para especificar este archivo de texto.

Información adicional

Para obtener más información sobre cómo ejecutar Polyspace desde la línea de comandos de Windows o de Linux, consulte:

Ejecutar Polyspace en MATLAB

Antes de ejecutar Polyspace desde MATLAB, debe vincular las instalaciones de Polyspace y MATLAB. Consulte Integrate Polyspace with MATLAB and Simulink.

Para ejecutar un análisis, utilice un objeto polyspace.Project. El objeto tiene dos propiedades:

  • Configuration: especifique las opciones de análisis, como carpetas fuente, de inclusión, de compilador y de resultados utilizando esta propiedad.

  • Results: después de que Polyspace haya completado el análisis, lea los resultados del análisis en una tabla de MATLAB utilizando esta propiedad.

Para ejecutar el análisis, utilice el método run de este objeto.

Para ejecutar Polyspace en el archivo de ejemplo numerical.c de polyspaceroot\polyspace\examples\cxx\Bug_Finder_Examples\sources, introduzca lo siguiente en la línea de comandos de MATLAB.

proj = polyspace.Project

% Configure analysis
proj.Configuration.Sources = {fullfile(polyspaceroot, 'polyspace', ... 
    'examples', 'cxx', 'Bug_Finder_Example', 'sources', 'numerical.c')};
proj.Configuration.TargetCompiler.Compiler = 'gnu4.9';
proj.Configuration.EnvironmentSettings.IncludeFolders = {fullfile(polyspaceroot, ...
'polyspace', 'examples', 'cxx', 'Bug_Finder_Example', 'sources')}
proj.Configuration.ResultsDir = fullfile(pwd,'results');

% Run analysis
bfStatus = proj.run('bugFinder');

% Read results
resObj = proj.Results;
bfSummary = getSummary(resObj, 'defects');
bfResults = getResults(resObj, 'readable');

Cuando el análisis se completa, Bug Finder guarda los resultados en el archivo ps_results.psbf. Puede abrir este archivo desde la interfaz de usuario de la plataforma Polyspace utilizando estos comandos:

resultsFile = fullfile(proj.Configuration.ResultsDir,'ps_results.psbf');
polyspaceBugFinder(resultsFile)

Información adicional

Para obtener más información sobre cómo ejecutar Polyspace en MATLAB, consulte:

Consulte también

Temas