Polyspace Code Prover

 

Polyspace Code Prover

Dimostrazione dell’assenza di errori di run-time nel software

Dimostrazione dell’assenza di errori critici di run-time

Analizza tutti i percorsi del codice rispetto a tutti i possibili input senza l’esecuzione del codice. Identifica le istruzioni che non subiranno mai un errore di run-time indipendentemente dalle condizioni di run-time e individuane altre che devono essere esaminate con attenzione.

Miglioramento della progettazione software e comprensione del codice

Analizza il flusso di controllo e di dati attraverso il codice C/C++ e scopri le informazioni di intervallo associate alle variabili e agli operatori.

Ottimizzazione delle prestazioni del software

Rimuovi il codice difensivo identificando operazioni sicure come la divisione per zero e gli overflow. Rileva i rami di codice che non possono essere eseguiti attraverso qualsiasi percorso di esecuzione. Identifica e rimuovi eventuali errori nella logica e nella struttura del programma al fine di ridurre il footprint di memoria.

Analisi dell’utilizzo delle variabili globali

Riduci il tempo dedicato al debug delle operazioni di lettura/scrittura sulle variabili globali, incluse le variabili condivise da attività o thread.
Usa il grafico ad accesso simultaneo per comprendere il flusso di controllo e di dati che può portare a problemi di corse di dati. Identifica le variabili globali inutilizzate al fine di ottimizzare il codice.

Assistenza per certificazione

Crea gli artefatti necessari per completare il processo di certificazione per gli standard industriali. Certificazione completata da TÜV SÜD per l’uso con gli standard IEC 61508 e ISO 26262. Utilizza report e artefatti per i processi DO-178C.

Integrazione con Simulink e Stateflow

Esegui l’analisi sul codice generato e ricollega i risultati a blocchi del modello Simulink sorgente e grafici Stateflow. Avvia l’analisi Polyspace® direttamente dall’ambiente Simulink.

Analisi interattiva sul desktop

Esegui l’analisi statica del codice su progetti software interi o su un sottogruppo. Utilizza lo strumento desktop per generare report e per rivedere e classificare i risultati.
Individua la causa principale di bug complessi in viste debugger per analizzare gradualmente ciascuna istruzione che porta a un errore di run-time. Organizza e configura i tuoi progetti, grazie al supporto nativo di oltre 60 compilatori C e C++ e alla configurazione automatica dell’analisi Polyspace estratta dal sistema di compilazione del progetto.

Test statici di sicurezza delle applicazioni

Dimostra l’assenza di vulnerabilità di sicurezza critiche come overflow del buffer, accesso alla memoria e overflow numerici. Riduci la necessità di test Fuzz analizzando il codice in tutti i percorsi di codice e input senza l’esecuzione di codice.

Analisi dell’impatto

Monitora e verifica formalmente l’impatto di una variabile specifica, locale o globale, su altre variabili o su costrutti specifici. Esegui l’analisi dei segnali per soddisfare i requisiti del CARB per i software OBD, comprova la libertà dalle interferenze nel contesto della ISO 26262 e analizza l’effetto dei parametri di calibrazione. Nel contesto della sicurezza software, esegui una taint analysis e il monitoraggio di un flusso di dati sensibili.