10 repository-uri
Validates system execution patterns against defined models to ensure operational correctness.
Distinct from Runtime Debugging Tools: Distinct from general runtime debugging: focuses on formal verification of execution patterns rather than interactive state inspection.
Explore 10 awesome GitHub repositories matching testing & quality assurance · Runtime Verification. Refine with filters or upvote what's useful.
Kernel-ul Linux este un nucleu de sistem de operare monolitic care gestionează resursele hardware, memoria și programarea proceselor pe diverse arhitecturi de calcul. Oferă un mediu standardizat, compatibil POSIX, pentru execuția aplicațiilor, menținând în același timp un framework modular de drivere care permite încărcarea și eliminarea dinamică a interfețelor hardware. Proiectul se distinge prin setul său de instrumente de concurență de înaltă performanță, care utilizează primitive de sincronizare fără blocare și mecanisme de tip read-copy-update pentru a gestiona accesul la date partajate în medii multi-core. Încorporează o suită cuprinzătoare de urmărire și instrumentare a kernel-ului care permite monitorizarea neintruzivă a evenimentelor de sistem, execuția funcțiilor și metricile de latență. Mai mult, kernel-ul impune garanții stricte de stabilitate a interfeței și urmărirea ciclului de viață pentru a asigura compatibilitatea inversă pentru aplicațiile dependente. Dincolo de identitatea sa de bază, sistemul include capabilități extinse pentru abstractizarea hardware, implementarea protocoalelor de rețea și aplicarea politicilor de securitate. Suportă cerințe de inginerie specializate prin gestionarea stării de alimentare, optimizări pentru sisteme embedded și procese de boot bazate pe firmware. Arhitectura dispune, de asemenea, de framework-uri de diagnosticare robuste pentru analiza memoriei, verificarea execuției sistemului și validarea modelelor de programare concurentă. Repository-ul sursă oferă un sistem complet de build pentru transformarea codului în imagini binare executabile, incluzând instrumente pentru selectarea funcționalităților kernel-ului și optimizarea configurației pentru a adapta output-ul la cerințe hardware specifice.
Features robust diagnostic frameworks for verifying system execution against defined safety and correctness properties.
This project serves as a comprehensive technical reference for the architecture and design of data-intensive applications. It provides a structured analysis of the fundamental principles required to build reliable, scalable, and maintainable software systems, covering the core trade-offs inherent in modern data infrastructure. The repository explores the mechanics of distributed data management, including strategies for replication, partitioning, and achieving consensus across multiple nodes. It details the design of storage engines, indexing techniques, and transaction management models, whi
Validates distributed algorithms against formal models to ensure correctness across all execution states.
This project is a comprehensive, curated directory of static analysis, linting, and security scanning utilities. It serves as a central resource for developers to discover, compare, and select tools based on specific programming languages, licensing models, and integration requirements. The directory distinguishes itself by providing deep metadata for each listed utility, including community-driven popularity rankings, maintenance status, and deployment methods. By aggregating these tools into a single searchable index, it enables teams to identify solutions for enforcing coding standards, ma
Prove the absence of runtime errors, memory corruption, and undefined behavior through formal verification or symbolic execution techniques.
Z3 is an automated theorem prover and satisfiability modulo theories solver designed to determine the validity of complex logical formulas. It functions as a formal verification framework, enabling the systematic checking of hardware and software system specifications against defined logical constraints to identify inconsistencies or design flaws. The engine distinguishes itself through a combination of theory-specific decision procedures and symbolic execution capabilities. It employs conflict-driven clause learning and backtracking search algorithms to prune search spaces, while maintaining
Checks source code and system specifications against logical constraints to ensure correctness before deployment.
F Prime este un framework bazat pe componente, conceput pentru dezvoltarea și implementarea software-ului pentru sisteme embedded și zbor spațial. Acesta oferă o arhitectură modulară care decuplează logica software de interfețele de comunicare, permițând dezvoltatorilor să definească structurile sistemului printr-un limbaj de modelare specific domeniului. Această abordare bazată pe modele permite generarea automată de cod, asigurând consistența în topologii complexe de sistem, menținând în același timp contracte stricte de interfață între modulele software. Framework-ul se distinge prin sistemul său integrat de build și suita de operațiuni cu date la sol. Acesta automatizează întregul ciclu de viață al software-ului embedded, de la compilarea încrucișată și gestionarea dependențelor până la generarea interfețelor de telemetrie și comandă. Prin furnizarea unui mediu unificat atât pentru software-ul de zbor de la bord, cât și pentru monitorizarea la sol, facilitează integrarea, testarea și controlul sistemelor embedded distribuite pe diverse platforme hardware. Dincolo de arhitectura sa de bază, proiectul include instrumente cuprinzătoare pentru observabilitatea sistemului, inclusiv vizualizarea telemetriei în timp real, logarea evenimentelor și trasarea diagnosticelor. Acesta suportă o gamă largă de scenarii de implementare, de la medii bare-metal la sisteme de operare în timp real, și oferă mecanisme pentru gestionarea memoriei, modelarea comportamentului bazat pe stări și execuția asincronă a sarcinilor. Proiectul este menținut ca un depozit C++ cu documentație extinsă și suport pentru sistemul de build pentru dezvoltare multi-platformă.
Validates software state during execution by checking specified conditions and reporting violations.
seL4 is a formally verified microkernel whose C implementation is backed by machine-checked mathematical proofs of correctness, confidentiality, integrity, and availability. It enforces strict isolation between processes through hardware-enforced address space separation and a capability-based access control system, where each process holds explicit rights only to the resources it has been granted. The kernel exposes hardware resources through a minimal API of system calls that manage threads, address spaces, and inter-process communication, with synchronous IPC supporting sender-identifying b
Proves that the kernel's C implementation matches its formal specification, including fast-path execution.
Bosque este un limbaj de programare experimental și o platformă de dezvoltare concepută pentru construcția software asistată de mașină. Combină semantica programării funcționale cu sintaxa imperativă pentru a impune corectitudinea logicii și siguranța la runtime, oferind un mediu sigur din punct de vedere al tipurilor (type-safe) care utilizează modele de date structurate pentru a menține integritatea informațiilor pe tot parcursul ciclului de viață al aplicației. Platforma se distinge prin integrarea profundă cu instrumente de verificare formală, incluzând demonstratoare automate de teoreme și motoare de execuție simbolică. Prin transformarea codului sursă într-o reprezentare intermediară regularizată, sistemul permite raționamentul automat pentru a demonstra absența erorilor de runtime și a încălcărilor logice. Mai mult, runtime-ul este proiectat pentru performanță predictibilă, utilizând un interpretor specializat care elimină pauzele de garbage collection pentru a asigura o latență de execuție consistentă. Proiectul oferă o suită completă de instrumente pentru dezvoltarea de înaltă fiabilitate, acoperind gestionarea pachetelor de proiect, urmărirea dependențelor și verificarea automatizată a proprietăților codului. De asemenea, suportă designul de interfețe agnostice față de limbaj, permițând dezvoltatorilor să definească structuri de date partajate și contracte de servicii care asigură o validare consistentă pe diverse componente software.
Integrates automated theorem provers and symbolic execution engines to mathematically prove the absence of runtime errors and logic violations.
Diaphora este un instrument de diffing binar și un motor de similaritate conceput pentru a compara binare compilate și a identifica secțiunile de cod modificate sau potrivite. Acesta funcționează ca un plugin de inginerie inversă care mapează relațiile dintre funcții și detectează unitățile de compilare folosind analiza de asamblare și teoria grafurilor. Proiectul este specializat în analiza patch-urilor de vulnerabilitate, permițând utilizatorilor să detecteze remedierile de securitate prin compararea diferitelor versiuni ale unui binar. Acesta sincronizează metadatele de analiză, cum ar fi numele simbolurilor și comentariile, între binare și generează patch-uri prin compararea pseudo-codului decompilat. Motorul utilizează grafuri de control al fluxului și potrivirea euristică pentru a calcula rapoartele de similaritate între funcții. Capacitățile sale mai largi includ maparea grafurilor de apeluri, identificarea limitelor fișierelor obiect și gestionarea stării de analiză printr-o bază de date relațională pentru a facilita referințele încrucișate la scară largă.
Validates that the indices used during binary comparison retrieve accurate data.
Ikos is a formal verification suite and static analysis framework designed to prove the absence of undefined behaviors and runtime errors in C and C++ source code. It functions as an abstract interpretation tool that approximates program execution to identify potential crashes and software defects. The system utilizes a compiler front-end to translate source code into a specialized abstract representation. This process decouples language parsing from the analysis logic, allowing the framework to perform deep program analysis via a formal verification system. The toolkit covers several analys
Offers a collection of analysis tools that apply mathematical logic to source code to prove the absence of runtime errors.
Hercules is a security tool designed to protect Lua source code from reverse engineering and unauthorized analysis. It functions as a code transformation engine that secures application logic by applying multiple layers of obfuscation, including control flow manipulation and the wrapping of scripts within a custom virtual machine environment. The project distinguishes itself through a multi-stage pipeline architecture that allows for the development of custom, multi-layered protection strategies. By replacing standard language instructions with custom opcodes and reorganizing linear code into
Injects self-checking mechanisms into the bytecode to detect and block unauthorized modifications during the execution of the script.