Polyspace Bug Finder analysiert C/C++ Embedded Software-Code, um Codierfehler, Abweichungen von Codierregeln und Code-Metriken zu melden. Das Tool verwendet statische Analyse basierend auf abstrakter Interpretation, um mehr als 350 Arten von Codierfehlern zu identifizieren, wie Pufferüberläufe, Division-durch-Null-Fehler, Nebenläufigkeitsprobleme und andere Sicherheitsmängel.
Polyspace Bug Finder überprüft die Einhaltung von Codierregeln wie MISRA C™:2023, MISRA C++:2023, AUTOSAR C++14, CERT® C/C++ und CWE™. Es berechnet auch Code-Metriken wie die zyklomatische Komplexität. Sie können sogar Ihre eigenen Fehler und Codierstandards erstellen, um die Anforderungen Ihrer Organisation zu unterstützen.
Sie können Polyspace Bug Finder mit Polyspace Test integrieren, um die Code-Verifikation und das Testen zu vereinheitlichen, indem Sie dieselbe Projektkonfiguration verwenden und die Komplementarität der Werkzeuge nutzen, um die Ergebnisbewertung zu erleichtern. Die Integration in Simulink ermöglicht eine automatisierte Einrichtung und Rückverfolgbarkeit für generierten Code.
Unterstützung von Industriestandards wird mit dem IEC Certification Kit (für ISO 26262 und IEC 61508) und dem DO Qualification Kit (für DO-178) gewährleistet.
Fehler und Schwachstellen finden
Erkennen Sie mithilfe statischer Analyse mehr als 350 Fehler in C/C++, einschließlich Sicherheits-, Speicher-, numerischer und Nebenläufigkeitsfehler. Erweitern Sie integrierte Code-Checker mit Ihren eigenen. Die Ursachen komplexer Bugs lassen sich mit Debugger-ähnlichen Ansichten, Ablaufverfolgung und Aufrufdiagrammen identifizieren.
Einhaltung der Standards zum Codieren
Überprüfen Sie die Einhaltung von MISRA C:2023, MISRA C++:2023, AUTOSAR C++14, CERT C/C++, CWE und ISO/IEC TS 17961. Erstellen Sie benutzerdefinierte Codierstandards, um teamspezifische Regeln durchzusetzen.
Testen der statischen Applikationssicherheit
Erkennen Sie Sicherheitslücken und identifizieren Sie die Abfolge der Ereignisse, die zur Verwundbarkeit geführt haben. Durchsetzung sicherer Codierleitlinien mit CERT C/C++, CWE und ISO/IEC TS 17961 Prüfungen.
Zertifizierungsunterstützung
Erstellen Sie Artefakte, die zum Abschluss des Zertifizierungsprozesses für Sicherheitsstandards der Branche, wie IEC 61508, ISO 26262, ISO/SAE 21434 oder DO-178C, benötigt werden, bis zur höchsten Stufe der funktionalen Sicherheit oder der IT-Sicherheit. Rechtfertigen Sie Abweichungen und erstellen Sie umfassende Analyseberichte.
Integration in Simulink
Analysieren Sie den von Embedded Coder oder dSpace TargetLink® generierten Code und verfolgen Sie die Ergebnisse zurück zu Simulink-Blöcken oder Stateflow-Diagrammen. Starten Sie Analysen direkt aus Simulink für eine optimierte Einrichtung und Nachverfolgbarkeit.
Überwachung der Projektqualität
Überwachen Sie die Projektqualität mit projektbezogenen Dashboards, einschließlich Karten und Diagrammen für Fehler, Codierungsregeln und Code-Metriken. Navigieren Sie von der Projektebene bis zu einzelnen Dateien, um sich auf spezifische Ergebnisse der Codeanalyse zu konzentrieren.
Code mithilfe des Laufzeitverhaltens analysieren
Erstellen Sie automatisch eine Polyspace-Konfiguration aus Ihrem Build; legen Sie Compiler-, Ziel- und RTOS-Optionen fest; modellieren Sie Interrupts, Threads und Tasks, um Nebenläufigkeitsfehler, einschließlich Wettlaufsituationen und Deadlocks, zu erkennen.
Vereinheitlichen von statischer Analyse und dynamischen Tests
Verwalten Sie die statische Analyse (mit Polyspace Bug Finder und Polyspace Code Prover) sowie das Testen (mit Polyspace Test) – einschließlich Projektkonfiguration, Ausführung und Überprüfung – in einer einzigen Benutzeroberfläche. Kombinieren Sie Test- und Code-Analyse-Workflows, um unzuverlässige Tests zu identifizieren, unerreichbare Codezweige zu rechtfertigen oder komplexe Anforderungen an die Codeabdeckung zu unterstützen.
Produktressourcen:
Polyspace-Produktfamilie
Polyspace-Produkte machen kritischen Code sicher und geschützt, indem die Softwarequalität während des gesamten Entwicklungslebenszyklus getestet und überwacht wird.
Polyspace Access
Erkennen Sie Programmierfehler, überprüfen Sie die Ergebnisse statischer Analysen und überwachen Sie Software-Qualitätsmetriken.
Polyspace Copilot
KI-Assistent, optimiert für Polyspace.
Polyspace Test
Entwicklung, Verwaltung und Durchführung von Tests für C und C++ Code in Embedded Systems.
Polyspace as You Code
Identifizieren Sie Verstöße gegen Codierungsstandards und Software-Schwachstellen in Ihrer IDE.
Polyspace Test Server
Führen Sie Tests und Analysen der strukturellen Abdeckung von C/C++ Code auf Automatisierungsservern aus.
Polyspace Code Prover Server
Verifizieren Sie laufend und umfassend kritische Anweisungen in C und C++ Code in CI-Pipelines.
Polyspace Bug Finder
Überprüfen Sie Programmierregeln, Sicherheitsstandards und Codemetriken und finden Sie Bugs.
Polyspace Client for Ada
Erstellen Sie mithilfe formaler Methoden umfassende Verifikationen für Ada-Anweisungseinheiten.
Polyspace Bug Finder Server
Ermitteln Sie Softwarefehler und setzen Sie Programmierregeln in Ihren CI-Pipelines durch.
Polyspace Server for Ada
Erstellen Sie laufende und umfassende Verifikationen für kritische Ada-Codeanweisungen in CI-Pipelines.
Polyspace Code Prover
Erstellen Sie mithilfe formaler Methoden umfassende Verifikationen für besonders kritische C und C++ Anweisungen.
Polyspace Bug Finder – Häufig gestellte Fragen
Polyspace Bug Finder ist eine Desktop-Anwendung für statische Analyse, die Bugs, Verstöße gegen Codierungsregeln und Metriken zur Codequalität in C- und C++-Code erkennt.
Polyspace Bug Finder erkennt mehr als 350 Arten von C/C++-Codierungsfehlern, darunter numerische Bugs, Datenflussfehler, Speicherfehler, Nebenläufigkeitsfehler und allgemeine Programmierfehler, die Laufzeitfehler oder Sicherheitsprobleme verursachen können.
Polyspace Bug Finder prüft C/C++-Code anhand von Industriestandards wie MISRA C, MISRA C++, AUTOSAR C++14, JSF++, CWE, CERT C und CERT C++ und unterstützt die Durchsetzung benutzerdefinierter Codierungsregeln und Namenskonventionen.
Polyspace Bug Finder wendet statische Analysemethoden, einschließlich semantischer Analysen, an, um den Kontrollfluss, den Datenfluss und das interprozedurale Verhalten in C/C++-Code zu untersuchen, ohne den Code ausführen zu müssen.
Polyspace Bug Finder identifiziert Bugs, Verstöße gegen Codierungsregeln und Metriken zur Codequalität in gesamten Projekten während Integration und Verifikation. Polyspace Code Prover verwendet formale Methoden, um erschöpfend das Fehlen ausgewählter Laufzeitfehler nachzuweisen. Polyspace as You Code führt einen Teil der Polyspace Bug Finder-Analyse direkt in der IDE aus, um Entwicklern zu helfen, Probleme bereits beim Schreiben des Codes zu erkennen.
Polyspace Bug Finder wird interaktiv in einer Desktop-Oberfläche verwendet, während Polyspace Bug Finder Server für automatisierte Analysen in CI-Workflows und für das Teilen von Ergebnissen über Polyspace Access optimiert ist.
Ja, es kann automatisch generierten Code analysieren, wobei die Ergebnisse bis zu Simulink-Modellen und dSPACE TargetLink-Blöcken zurückverfolgbar sind. Wenn die Analyse aus Simulink ausgeführt wird, wird sie automatisch anhand des Modells und der Einstellungen zur Codegenerierung konfiguriert.
Es unterstützt Zertifizierungs-Workflows für IEC 61508, ISO 26262, EN 50128, EN 50657, IEC 62304, ISO 25119 und DO 178C/ED 12C durch Zertifizierungs- und Qualifizierungs-Kits und bietet zusätzliche Leitlinien für ISO/SAE 21434 und Automotive SPICE.
Es erzeugt Berichte über gefundene Bugs, Verstöße gegen Codierungsregeln und Codequalitätsmetriken wie zyklomatische Komplexität. Eine detailliertere, kontextreiche Überprüfung ist in der Polyspace-Desktopanwendung verfügbar.
Polyspace Bug Finder und Polyspace Test teilen sich dieselbe Desktop-Anwendung und Projektkonfiguration, was eine einheitliche Überprüfung der Ergebnisse statischer und dynamischer Analysen ermöglicht.