??????????????????????У???????????????????????????????3:1?????????????????????????????????????????????????????????????????????????????????????????????????λ??????????????????и????ε??????Oracle????????????????????????????????????????????????Щ?????
????Oracle????????????Щ??????????????????????????????????????????????????Χ??“????????????????????”??“??????????”????????????????????????????????????????Oracle?е????????????????????????????????????????в??????????????п??????????????????Oracle????????λ????????????10??????????????????????????????????????????????????????
??????????????????????????????????檔????Χ???????????????????
????1.??????ù???
????????????????????????????????????????Ч???????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????豸???????渴?????????????п?????Ч?????????????????
???????????????????????????????????????????????????????????????в??????÷?Χ???в?????????????Щ?????????????????????Щ???????????????????????????Щ?????????????????????ü????????????????????????????????????????????????????????????????????????????????ò????????????????????????????????£?????????????????????????????????????鵽??????????????п????????μ?????????????????????????????????????????????????bug???????????????????????????????????printf???????????Ρ????????????Щ????????????????
?????????????[Source-levelDebugger]????????????????????????????????á?????????????????????????????????Ч??????????????VxWorksTornadoII????gdb??????????
???????????????????[printf]printf???????????????????????????????????????????????й????е????????????????????????е???????????printf?????????????и?????????printf???CPU????????????????????????????????????????????
????ICE??JTAG??????[In- circuitEmulator]ICE??????????CPU??????豸???????????????????????????????????£???????CPU?????????????????????????????????????????????????????????????????????????Щ????????????????ICE????????????????CPU?????????bond-out??CPU.????????????????CPU???????????????????????????CPU?????????????Щ??????CPU????????????? “????”?????????????????????????????????ICE????????????????????????????ICE??????Щ?????????????????????????????????е?CPU????????????CPU??????????????????Щ???CPU??????????????3???CPU???????? JTAG??JointTestActionGroup????????????????????????IC???·???????????????н??????????????????????????
????ROM??????[ROMMonitor]ROM????????С??????????????ROM?У???????е?????????????????????????????????????????????????????????????????????????????????????????????????????????κ???????????????????1??????????????п??????????????????????????????????檔???ROM???????????????????????е??????ó????????????????????????????CPU????ó??????????????????ó?????ν???ROM???????
????Data??????[DataMonitor]??????????????CPU???е?????2??????????????????????????????????????????????????????仯?????
????OS??????[OperatingSystemMonitor]????????????????????????????л??????????????ж???????????棬??Щ????????????????????????????????????????棬????????????????????????????????ж???????????????
???????????????[Profiler]????????????CPU???????????profiler???????????????????????????CPU??????????????????????
?????????????[MemoryTeseter]??????????????????????????????й?????????????????????????????????????Щ??????????Ъ??????????????????????????
???????и?????[ExecutionTracer]???????CPU???????Щ???????????á????????????????????????????????????????????????????????????????з?????????Щ??
???????[CoverageTester]??????CPU???????????Щ???????????????Щ????????б???е????????????????????????????????????
????GUI???????[GUITester]?????????????????????????????????н???????Щ?????????????????????????????е??GUI?????????????????????п????????????в??????????書???????????????????????????????????????????ú???????????Rational?????robot??Mercury??Loadrunner????????????????????????豸???GUI??????????????????豸???в????????GUI?????????????????????????????????и????????????????????????????
???????????[Home-madetester]??????????У????????????????????????б?д?Щ????????????????????????????д??????????????????????????????????仯??????????﹫?????????????????bug??
????2.???緢?????????
???????????Σ?????????????飬?????????????????й???????????????????????????????????????????????緢????“????”???????????У????й???“????”???????????????????????????????????????????????????????????????????????????????й??????в???????й????????????????????飬???????й??????????????????????????????????????Щ???й????????????????С??п???????????е?bug????п????????????????????????????????????????á?
?????????????????????й???????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????п???????????????????????ζ???????????????????????????й?Σ?????????????????????????????????Щ?????????????????????????????顢??????????????????????????????й????????????????????б?????????????????????úá????????????????????????????й?????????????????δ???
???????????????й???????????????????????????????治?????С????棬????γ????????????????????????????????п???????????????湻??????????????Щ?????????????????????????????????????????У???????????????????????????????Ч?????????ù?????????????????????????????????????????????????????????????????
???????????????????????????????У???????????malloc/free?????????
????????????????????????????????????????????硢д?????????楨???????????????????????????????????????????????????????????????????????????????????
??????????????????????????????????С???????????????????ù?????????????????
????3.?????????????
???????????????????????????????????????????Ч??????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????profile???????????????Щ???????IDE??????????????????????????????????????????CPU????????????????????????????????????????????????Ρ???????????Ρ????????????????????????????????????????
?????????profile???????????????????滹???в?????????????棬???????profile??????????????????????CPU????????profile????????CPU??y??????profile????????????????????á?????HeisenbergЧ????κβ?????λ???????????????У??????profiler????????
????????????????Ч?????????????????CPU???????Щ????????????
????4.??????????????
???????????????????????????????????????????????????????????????shit????????????????????д????????????????shitbug??????????????????д?????????????????????????????????shit??д???????λ??д??????????????????????????????????λ????????????????????С????????????????????????????????????????????????????????????????????????????????????????????ú÷????μ??????????????????????????????????淶????м???Щ??????????????????????н??Щ??????????????????????????????д????????ο?????????????c++/c?????????????C??0x8??“???頃??
????????????????????????????????????????????????????????Щ?????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????Ч????????????????????????????????????????????????????????????????????λ?á?
????5.?????????????
????????????????????????????????????e?Щ???????????????????????飬????????????????????????????????????????????????Щ???????bug?????????????????????Ъ?????????б???跨?????????????????????????????????????ο?????????Щ??????????????????????????ü??????Щ???????????????????????????????????????????????????????#ifdef???Щ???????????????????????С??????????????????????????????????λ?????????????б????“??????”?????????????ICE??????????????????????????仯????????????????ú????????????????????????????????????????????????????
????6.???????
?????????????????????????·??????????????????????Щ??????????????????·??????????Щ????????·????????????????и???????????????????????????а??????????У??????????????????????????????????????????????????????????Щ??????????????????????????μ????????????ε????????????????????SCS???汾??????VCS??ConcurrentVersionControl??CVS??VCS??????汾??????????汾checkin?????????????汾????????????????SCS/VCS/CVS?????diff???????????????????????????BeyondCompare?? ExamDiff.?????????????и??????????????п?????????????????
????7.??????????????
???????????????????ж???????????????coveragetesting?????????????????????????????????CPU???????????Щ???????????????????????????20%??40% ????????????????????????bug.????????в???????????????????????????????????????????????????????????????沢????? deadcode??????????????????????Щ??????????????????if??i>=0&& ??almostAlwaysZero==0||??last=i?????????almostAlwaysZero?????????last=i???????????????????????????????????????????????????????????????????????????????????????????????????????а?????
????8.????????????ζ???????
???????о???????????????????80%?????????漸?????棺?????????????????????????????????????????????????????????????????????????????????????????????10-200?????????????? bug???????bug???????????????????????????Сbug????????????????????????bug???????????????????????????????????????Щ?????????????????????????????????????????????????????????????????????????????
????9.?????????????????????
????????????е?????profile?????????????????????????????????????????????????????????????в????????????Щ??????????????t????й?????п???????鵽??????????????????????????Щ?????????????????????????Щ????????????????е?????????????????κ?????????????????????????????????????
????10.???ó???????
?????????????????“??Щ?????????????????????и????????????????????????????????”?????????Щ???????????????????Щ???????????ú??????????????“?????”???????????????????????????????????????????????????????С?????????????????????????????????
?????????????????????????????????????????????????????ó??????????????????鰱??????ù?????????????????????Oracle???????????????????????????????????????ó????