FSCQ är det första filsystemet med ett maskinkontrollerbart bevis (med hjälp av Coq proof assistenten) att dess genomförande uppfyller dess specifikation och vars specifikation inkluderar krascher. FSCQ undviker sannolikt fel som har plågat tidigare filsystem, till exempel att utföra diskar utan tillräckliga hinder eller att glömma bort att nolla ut katalogblock. Om en krasch inträffar vid en inopportun tid, dessa buggar kan leda till dataförlust. FSCQ: s teorem bevisar att, under någon sekvens av krascher följt av omstarter, FSCQ kommer att återställa filsystemet korrekt utan att förlora data. För att ange FSCQ:s teorem introduceras Crash Hoare-logiken (CHL), som utökar den traditionella Hoare-logiken med ett kraschtillstånd, ett återvinningsförfarande och logiska adressutrymmen för att specificera disktillstånd på olika abstraktionsnivåer. CHL minskar också bevisarbetet för utvecklare genom korrekturautomation. Med hjälp av CHL har vi utvecklat, specificerat och bevisat att FSCQ-filsystemet är korrekt. Även om FSCQ design är relativt enkel, experiment med FSCQ körs som en användarnivå filsystem visar att det är tillräckligt för att köra Unix program med användbar prestanda. FSCQ:s specifikationer och bevis krävde betydligt mer arbete än implementeringen, men arbetet var hanterbart även för ett litet team av några forskare.
Vårt arbete har likheter med Crash Hoare Logic (CHL) REF.
Using Crash Hoare logic for certifying the FSCQ file system
{'venue': "SOSP '15", 'journal': None, 'mag_field_of_study': ['Computer Science']}