Sciweavers

ASPLOS
2012
ACM

Path-exploration lifting: hi-fi tests for lo-fi emulators

12 years 8 months ago
Path-exploration lifting: hi-fi tests for lo-fi emulators
Processor emulators are widely used to provide isolation and instrumentation of binary software. However they have proved difficult to implement correctly: processor specifications have many corner cases that are not exercised by common workloads. It is untenable to base other system security properties on the correctness of emulators that have received only ad-hoc testing. To obtain emulators that are worthy of the required trust, we propose a technique to explore a high-fidelity emulator with symbolic execution, and then lift those test cases to test a lower-fidelity emulator. The high-fidelity emulator serves as a proxy for the hardware specification, but we can also further validate by running the tests on real hardware. We implement our approach and apply it to generate about 610,000 test cases; for about 95% of the instructions we achieve complete path coverage. The tests reveal thousands of individual differences; we analyze those differences to shed light on a number of ...
Lorenzo Martignoni, Stephen McCamant, Pongsin Poos
Added 20 Apr 2012
Updated 20 Apr 2012
Type Journal
Year 2012
Where ASPLOS
Authors Lorenzo Martignoni, Stephen McCamant, Pongsin Poosankam, Dawn Song, Petros Maniatis
Comments (0)