Configuring Debugging as Search: Finding the Needle in the Haystack Andrew Whitaker, Richard S. Cox and Steven D. Gribble. University of Washington Presented.

Slides:



Advertisements
Similar presentations
Operating-System Structures
Advertisements

Chapter 8: Operating Systems and Utility Programs
Recovering Device Drivers Michael M Swift, Muthukaruppan Annamalai, Brian N Bershad and Henry Levy.
High Availability Deep Dive What’s New in vSphere 5 David Lane, Virtualization Engineer High Point Solutions.
Windows XP System Restore July 22 nd, 2006 CAEUG Meeting.
GENI Experiment Control Using Gush Jeannie Albrecht and Amin Vahdat Williams College and UC San Diego.
Discovering Computers Fundamentals, Third Edition CGS 1000 Introduction to Computers and Technology Fall 2006.
11 TROUBLESHOOTING Chapter 12. Chapter 12: TROUBLESHOOTING2 OVERVIEW  Determine whether a network communications problem is related to TCP/IP.  Understand.
Installing Windows XP Professional Using Attended Installation Slide 1 of 35Session 9 Ver. 1.0 CompTIA A+ Certification: A Comprehensive Approach for all.
Professor Michael J. Losacco CIS 1110 – Using Computers Operating Systems & Utility Programs Chapter 7.
Hands-On Microsoft Windows Server 2003 Administration Chapter 10 Monitoring and Troubleshooting Windows Server 2003.
11 INSTALLING WINDOWS XP Chapter 2. Chapter 2: Installing Windows XP2 INSTALLING WINDOWS XP  Prepare a computer for the installation of Microsoft Windows.
70-290: MCSE Guide to Managing a Microsoft Windows Server 2003 Environment Chapter 12: Managing and Implementing Backups and Disaster Recovery.
DASAN NETWORKS GPON Training
Chapter 11: Maintaining and Optimizing Windows Vista
Operating System Organization
1 Chapter Overview Introduction to Windows XP Professional Printing Setting Up Network Printers Connecting to Network Printers Configuring Network Printers.
McGraw-Hill/Irwin© 2006 The McGraw-Hill Companies, Inc. All rights reserved. 5-1.
Security. Physical security Protection from fire/water Protection from dust and extremes of temperature.
70-290: MCSE Guide to Managing a Microsoft Windows Server 2003 Environment, Enhanced Chapter 12: Managing and Implementing Backups and Disaster Recovery.
70-293: MCSE Guide to Planning a Microsoft Windows Server 2003 Network, Enhanced Chapter 14: Problem Recovery.
Ch 11 Managing System Reliability and Availability 1.
Lesson 4 Computer Software
Operating Systems What do you have left on your computer after you strip away all of the games and application programs you bought and installed? Name.
Module 3: Resolving Boot Process Issues. Overview Understanding the Boot Process Using Advanced Boot Options Using the Boot.ini file to Change Startup.
®® Microsoft Windows 7 for Power Users Tutorial 8 Troubleshooting Windows 7.
Hands-On Microsoft Windows Server 2008
Windows Azure Conference 2014 Running Docker on Windows Azure.
Windows XP Professional Windows XP Professional Overview Install and Upgrade Windows XP Pro Customize and Manage Windows XP Pro Troubleshoot Common Windows.
© 2006 Cisco Systems, Inc. All rights reserved.Cisco Public ITE PC v4.0 Chapter 5 1 Control Panel Applets.
ITE 1 Chapter 5. Chapter 5 is a Large Chapter It has a great deal of useful information about operating systems. You will find this VERY helpful when.
Hands-On Virtual Computing
Microsoft ® Official Course Module 10 Optimizing and Maintaining Windows ® 8 Client Computers.
Chapter Fourteen Windows XP Professional Fault Tolerance.
70-290: MCSE Guide to Managing a Microsoft Windows Server 2003 Environment, Enhanced Chapter 12: Managing and Implementing Backups and Disaster Recovery.
© 2012 The McGraw-Hill Companies, Inc. All rights reserved. 1 Third Edition Chapter 5 Windows XP Professional McGraw-Hill.
Problem Determination Your mind is your most important tool!
University of Management & Technology 1 Operating Systems & Utility Programs.
Systems Software Operating Systems. What is software? Software is the term that we use for all the programs and data that we use with a computer system.
14 Step-by-Step Instructions for an Upgrade Installation n Prepare for the installation Verify that all devices and applications are Windows 2000 compatible.
Chapter 33 Troubleshooting Windows Errors. STOP Errors  When Microsoft Windows XP encounters a serious problem  And the operating system can't continue.
Module 15 Managing Windows Server® 2008 Backup and Restore.
Supporting Windows 9x Chapter 12 Key Terms By Bill Ward.
Computer Software Operating Systems – Programs. Computer Language - Review We learnt that computers are made up of millions of tiny switches that can.
I T Essentials I Chapter 5 JEOPARDY Installing & UpgradingComputerBasicsErrorsServicePotpourri
CSC190 Introduction to Computing Operating Systems and Utility Programs.
Alessandro Cardoso, Microsoft MVP Creating your own “Private Cloud” with Windows 10 Hyper- V WIN443.
Jaime Frey Computer Sciences Department University of Wisconsin-Madison Condor and Virtual Machines.
Computer Operating Systems And Software applications.
By the end of this lesson you will be able to explain: 1. Identify the support categories for reported computer problems 2. Use Remote Assistance to connect.
Advance startup options Shift Restart. Restart options.
Troubleshooting Windows Vista Lesson 11. Skills Matrix Technology SkillObjective DomainObjective # Troubleshooting Installation and Startup Issues Troubleshoot.
OPERATING SYSTEM REVIEW. System Software The programs that control and maintain the operation of the computer and its devices The two parts of system.
OPERATING SYSTEMS (OS) By the end of this lesson you will be able to explain: 1. What an OS is 2. The relationship between the OS & application programs.
IBM Software Group © 2008 IBM Corporation IBM Tivoli Provisioning Manager 7.1 OS Management with TPM for OS Deployment.
Functions of Operating Systems V1.0 (22/10/2005).
MCSA Windows Server 2012 Pass Upgrading Your Skills to MCSA Windows Server 2012 Exam By The Help Of Exams4Sure Get Complete File From
PC Support & Repair Chapter 5 Operating Systems Part 2.
Windows Vista Configuration MCTS : Maintenance and Optimization.
Chapter Objectives In this chapter, you will learn:
Troubleshooting Tools
Operating System Review
CONFIGURING HARDWARE DEVICE & START UP PROCESS
Operating System Review
IS3440 Linux Security Unit 9 Linux System Logging and Monitoring
Operating System Review
Bethesda Cybersecurity Club
Operating Systems: A Modern Perspective, Chapter 3
The Troubleshooting theory
Presentation transcript:

Configuring Debugging as Search: Finding the Needle in the Haystack Andrew Whitaker, Richard S. Cox and Steven D. Gribble. University of Washington Presented by Aditya Y.S.V.

What does the paper talk about? This work addresses the problem of diagnosing configuration errors that cause a system to function incorrectly. The basic idea is to search for the time when the system transitioned to a failed state. The paper presents a tool CHRONUS which automates this.

Motivation 1970’s 2000’s People costs Hardware costs Total ownership cost breakdown

Existing Approaches Prevention: never known to work for anything Recovery: Windows XP restore. The problem with this is that it is a transition in itself and so it isn’t always safe. Expert Systems: “Static Database” of known error configurations. Correction from this can be automated. Better example than the one given in paper is an Intrusion Detection System.

The Basic Approach System failure Why? External analysis tools When? Chronus

System Overview Chronus reveals when a system failed Chronus pro-actively logs system states Time system was NOT working system was working failure transition

system was NOT working system was working Problem Formulation Requirements: time travel, testing, search Time transition

System Overview Time Travel Time travel disks, virtual machines Testing Software probes, copy-on-write disks SearchBinary search Design componentsDesign choices

Time Travel Persistent vs. Transient state captures Chronus :- Only persistent storage. Application layer restarts are not useful where configurations outside the application(like in the OS) also play a role in its working.

Storage layer Trade off RDMS Disk Completeness Semantics CVS File System

Time-travel Disk Overhead

Virtual Machines The various states are checked by doing a virtual reboot of the system. Virtual reboot is faster than physical reboot Good way for terminating failed tests. Potentially be able to check more than one state at a time. (they don’t do this in the paper)

Disadvantages of VM Performance Overhead May not be able to expose the latest devices and device drivers Cannot diagnose errors within the virtualization layer itself such as updates to physical device driver.

Testing Automated diagnosis uses a user supplied “software probe”. It has a manual method of software probe if all you remember is a series of GUI actions There exist “non-deterministic” errors, and they cannot be reproduced.

Search Binary search Spurious Errors Strategy to overcome spurious errors.

Phase #1: Normal operation Child VM runs normal user programs Parent VM records disk writes to a time-travel disk –Each block write represents an instant in time  Denali Virtual Machine Monitor Parent Virtual Machine disk requests Time-travel disk Child Virtual Machine

Phase #2: Debug Mode Disk Time-travel Disk (T begin )  Denali Virtual Machine Monitor Parent Virtual Machine probe Was the system correct? disk requests Child Virtual Machine User command: search T begin T end

“Why?” Chronus only tells you WHEN and not why a system failed. For answering why, we need to have other tools. Unix “diff” is mentioned as one of them.

Case Study: Mozilla Web Browser Mozilla Web Browser on the NetBSD OS Methodology: install several extensions Symptom: Mozilla freezes on startup –Fails to respond to user input

Debugging the Mozilla Hang Step 1: write a probe that tests the behavior: blocks if Mozilla hangs #!/bin/sh mozilla & sleep 5 mozilla -remote ping() echo ‘SUCCESS’ > /TTOUTPUT

Mozilla Hang …….. Step 2: invoke search over a time range: % search -begin end : SUCCESS : FAILURE : FAILURE : SUCCESS : SUCCESS : FAILURE : FAILURE : SUCCESS : FAILURE : FAILURE : SUCCESS : SUCCESS : FAILURE : FAILURE : SUCCESS

Mozilla Hang ……. Step 3: compute the change: % attach time-travel-disk % diff -r /before /after file /.mozilla/default/zc1irw5u.slt/chrome/chrome.rdf differs: <RDF:Description about="urn:mozilla:package:stockticker”... c:author="Jeremy Gillick" c:authorURL=" c:description="Shows your favorite stocks in a customized ticker." c:displayName="StockTicker 0.4.2”

THANK YOU