WHO WATCHES THE WATCHMEN? Protecting Operating System Reliability Mechanisms Bj ¨ orn D ¨ obel, Hermann H¨ artig Hollywood, 10/07/2012
Splitting Systems Bank App DOpE VPFS Linux L4/Fiasco.OC Microkernel D ¨ obel, H¨ artig, 10/07/2012 slide 2 of 13 Who Watches the Watchmen?
Assumption: Res & NonRes Cores NonRes NonRes NonRes Core Core Core NonRes NonRes Core Core ResCore NonRes NonRes Core Core NonRes NonRes NonRes Core Core Core D ¨ obel, H¨ artig, 10/07/2012 slide 3 of 13 Who Watches the Watchmen?
Transparent Replication as OS Service Replicated Unreplicated Replicated Driver Application Application L4 Runtime Romain Environment L4/Fiasco.OC microkernel Reliable Computing Base [DHE12] B. D ¨ obel, H. H¨ artig, M. Engel: “ Operating System Support for Redundant Multithreading ” , EMSOFT 2012 D ¨ obel, H¨ artig, 10/07/2012 slide 4 of 13 Who Watches the Watchmen?
Romain: Structure NonRes NonRes NonRes NonRes NonRes NonRes Replica Replica Replica Memory System = Manager Call Proxy Romain Res Res D ¨ obel, H¨ artig, 10/07/2012 slide 5 of 13 Who Watches the Watchmen?
Three Alternatives for Signalling 1. Thread Migration 2. Synchronous notifications 3. Shared-memory polling D ¨ obel, H¨ artig, 10/07/2012 slide 6 of 13 Who Watches the Watchmen?
Alternative #1: Thread Migration Rep NonRes Res Rep NonRes D ¨ obel, H¨ artig, 10/07/2012 slide 7 of 13 Who Watches the Watchmen?
Alternative #1: Thread Migration handle Rep NonRes Res NonRes D ¨ obel, H¨ artig, 10/07/2012 slide 7 of 13 Who Watches the Watchmen?
Alternative #2: Notifications Rep n o t i fi c a t i o n Handler NonRes notification Res Rep NonRes D ¨ obel, H¨ artig, 10/07/2012 slide 8 of 13 Who Watches the Watchmen?
Alternative #2: Notifications Rep r e a c t i v a t e Handler NonRes reactivate Res Rep NonRes D ¨ obel, H¨ artig, 10/07/2012 slide 8 of 13 Who Watches the Watchmen?
Alternative #3: Shared-Memory Polling o l l p Rep Handler NonRes Memory Res Rep NonRes D ¨ obel, H¨ artig, 10/07/2012 slide 9 of 13 Who Watches the Watchmen?
Alternative #3: Shared-Memory Polling o l l p w Rep r i t e Handler NonRes Memory Res e t i Rep r w NonRes D ¨ obel, H¨ artig, 10/07/2012 slide 9 of 13 Who Watches the Watchmen?
Alternative #3: Shared-Memory Polling p Rep o l l Handler NonRes Memory Res l l o Rep p NonRes D ¨ obel, H¨ artig, 10/07/2012 slide 9 of 13 Who Watches the Watchmen?
Evaluation • MiBench, single-threaded – susan: image filter – CRC32: checksumming a file • Benchmarks with highest overhead in [DHE12] • Test machine: – 12 Intel Core i7 CPUs @ 2.6 GHz – Replicas pinned to dedicated physical cores – Hyperthreading off • Double (DMR) and triple (TMR) modular redundancy D ¨ obel, H¨ artig, 10/07/2012 slide 10 of 13 Who Watches the Watchmen?
Overhead to Unreplicated Execution Overhead by signalling method Migration 60 Sync IPC Shared Mem 50 Overhead in % 40 30 20 10 susan CRC32 susan CRC32 DMR TMR D ¨ obel, H¨ artig, 10/07/2012 slide 11 of 13 Who Watches the Watchmen?
Transparent Replication as OS Service • This paper: – Protection of RCB components – Efficient signalling • [ DHE12 ] : – Application replication – Transmission errors • To be done: – Multithreading (determinism) – Device drivers, I/O – Scalability Analysis D ¨ obel, H¨ artig, 10/07/2012 slide 12 of 13 Who Watches the Watchmen?
Key Points • Reliable Computing Base • Assumption: Hardware with varying resilience levels • Replication as OS Service • Efficient signalling between Res and NonResCores • Hardware wishlist: – Memory isolation between NonResCores – Fast inter-core notifications (e.g., Intel SCC) D ¨ obel, H¨ artig, 10/07/2012 slide 13 of 13 Who Watches the Watchmen?
Recommend
More recommend