Deux: Autonomic Testing System for Operating System Upgrades

Leon L. Wu; Gail E. Kaiser; Jason Nieh; Christian Murphy

Deux: Autonomic Testing System for Operating System Upgrades
Wu, Leon L.
Kaiser, Gail E.
Nieh, Jason
Murphy, Christian
Computer Science
Persistent URL:
Columbia University Computer Science Technical Reports
Operating system upgrades and patches sometimes break applications that worked fine on the older version. We present an autonomic approach to testing of OS updates while minimizing downtime, usable without local regression suites or IT expertise. Deux utilizes a dual-layer virtual machine architecture, with lightweight application process checkpoint and resume across OS versions, enabling simultaneous execution of the same applications on both OS versions in different VMs. Inputs provided by ordinary users to the production old version are also fed to the new version. The old OS acts as a pseudo-oracle for the update, and application state is automatically re-cloned to continue testing after any output discrepancies (intercepted at system call level) - all transparently to users. If all differences are deemed inconsequential, then the VM roles are switched with the application state already in place. Our empirical evaluation with both LAMP and standalone applications demonstrates Deux's efficiency and effectiveness.
Computer science
Item views
text | xml
Suggested Citation:
Leon L. Wu, Gail E. Kaiser, Jason Nieh, Christian Murphy, , Deux: Autonomic Testing System for Operating System Upgrades, Columbia University Academic Commons, .

Columbia University Libraries | Policies | FAQ