AutoBash- Improving Configuration Management with .ppt

上传人:confusegate185 文档编号:378732 上传时间:2018-10-09 格式:PPT 页数:32 大小:711KB
下载 相关 举报
AutoBash- Improving Configuration Management with .ppt_第1页
第1页 / 共32页
AutoBash- Improving Configuration Management with .ppt_第2页
第2页 / 共32页
AutoBash- Improving Configuration Management with .ppt_第3页
第3页 / 共32页
AutoBash- Improving Configuration Management with .ppt_第4页
第4页 / 共32页
AutoBash- Improving Configuration Management with .ppt_第5页
第5页 / 共32页
亲,该文档总共32页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

1、1,AutoBash: Improving Configuration Management with Operating System Causality Analysis,Ya-Yunn Su, Mona Attariyan, and Jason Flinn University of Michigan,2,Motivation,Configuration management is frustrating! Users may have to Change environment variables Edit configuration files Manage inter-applic

2、ation dependenciesCurrent approach: Ask friends, search on-line, read manual, Try potential solutions Carefully undo wrong solutions,3,AutoBash solves these problems,Problems with current approach,Applying solutions is time-consumingUndoing a wrong solution can be hardHard to know how a problem was

3、solvedA “solution” may cause new problems,Automatically tries many solutions,Provides undo capability,Explains solution to user,Automatically runs regression tests,4,AutoBash overview,Problem Detected,5,Outline,Motivation AutoBash design and implementation Observation mode Replay mode Health monitor

4、ing mode Evaluation Conclusion,6,Observation mode,A modified bash shell User types in commands to solve the problem,% command 1,% test if app works,% undo testing,% undo command 1,% command 2,7,Verifying a solution is tedious,AutoBash automatically tests using predicates Predicate: Tests if an appli

5、cation functions correctly Returns true/false if the test passes/fails,wget http:/localhost/$USER,Predicate example for a web server,% command 1,% test if app works,% undo testing,% rollback command 1,% command 2,8,Undoing testing is tedious,Predicate testing has no side effects Executed speculative

6、ly and rolled back Speculator SOSP 05 Process-level speculative execution,Speculative execution makes predicate testing safe,9,Undo can be hard,AutoBash speculatively executes each action Light-weight checkpoint and rollback,Speculative execution makes undo easy,% command 1,% test if app works,% und

7、o testing,% undo command 1,% command 2,% rollback command 1,10,Regression testing is hard,AutoBash automatically runs regression tests Executes predicates in the predicate database Ensures all predicates pass,P0,P1,P2,P3,P4,P5,CVS predicates,GCC cross-compiler predicates,Web server predicates,P6,P7,

8、P8,11,Regression tests can be slow,Problem: running all predicates can be slowOnly need to run predicates affected by an action Uses causality tracking to find affected predicates,12,Tracking causality,Output set kernel objects an action causally affectsInput set kernel objects a predicate causally

9、depends on,Predicate: grep “test” bar,Output set = file foo,Action: touch foo,Input set = file bar,13,Analyzing causality,AutoBash calculates the intersection Determines which predicates to run,Action: touch foo,file: foo,file: bar,Predicate: grep “test” bar,Do not run predicate,14,sh,Tracking outpu

10、t sets,An output set is tracked for each action,Process sh,Output set,Action: sh create_file.sh create_file.sh: touch foo,15,sh,sh,Predicate: sh testfile.sh testfile.sh: grep “test” bar,Tracking input sets,An input set is tracked for each predicate,Predicates input set,Process sh,16,Understanding so

11、lutions can be hard,AutoBash generates causal explanation Analyzes input and output sets,17,Causal explanation,ls l /home/$USER,metadata: /home/$USER/ public_html,wget index.html,metadata: /home/$USER,chmod +x /home/$USER,chmod +x /home/$USER/ public_html,wget $USER/cgi-bin/test.pl,wget $USER/index.

12、html,Actions,Kernel objects,Predicates,18,Outline,Motivation AutoBash design and implementation Observation mode Replay mode Health monitoring mode Evaluation Conclusion,19,Replay mode,Problem: finding a solution is time-consumingAutomatically searches for a solution No user input neededSpeculative

13、execution provides isolation User continues foreground task AutoBash runs replay mode in background,20,Initial predicate testing: Tracks input set for each predicate Determines passed/failed predicates,S2,S1,S0,How replay mode works,21,(2) Solution execution:Speculatively executes a solutionTracks s

14、olution output set,S2,S1,S0,How replay mode works,22,S0,(3) Verifying solution:Calculates intersectionRuns predicates with intersection,S2,S1,How replay mode works,Predicate fails,23,S2,S1,S0,How replay mode works,Discards solution with no intersection,24,(4) Regression tests:Calculates intersection

15、Runs predicates affected by solution,S2,S1,S0,How replay mode works,Predicates pass,Predicate passes,25,Speculative execution provides safetyCausality analysis provides speed,S2,S1,S0,How replay mode works,Predicate passes,S2,26,Health monitoring mode,Periodically executes all predicatesIf any predi

16、cate fails, AutoBash Runs replay mode to search for a solution Reports to the user to run observation mode,27,Outline,Motivation AutoBash Design and Implementation Observation mode Replay mode Health monitoring mode Evaluation Conclusion,28,Evaluation,Questions: What is the overhead of speculative e

17、xecution? How effective is causality analysis?Methodology: Evaluated CVS, gcc cross compiler, web server Manually created 10 bugs and 10 solutions Manually created 5-8 predicates,29,Total replay time (GCC),Without speculative executionWith speculative execution,Speculative execution overhead is negl

18、igible,1 2 3 4 5 6 7 8 9 10,30,Total replay time (GCC),Causal analysis improves predicate re-testing time by 67-99%,Without causality analysisWith causality analysis,1 2 3 4 5 6 7 8 9 10,31,Conclusion,Configuration management is frustratingAutoBash automates most tedious partsSpeculative execution makes AutoBash safeCausality analysis makes AutoBash fast,32,Questions?,Supported by,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 教学课件 > 大学教育

copyright@ 2008-2019 麦多课文库(www.mydoc123.com)网站版权所有
备案/许可证编号:苏ICP备17064731号-1