Chyba v programu

Jan Waclawek konfera@efton.sk
Pondělí Listopad 24 23:01:46 CET 2008


>V tomto duchu pracuji, ale chyba se vyskytuje obcas. Poustim tam ruzne data 
>a prumer chyb je tak 1 za hodinu. Takze to zabira spostu casu. 

Velmi podstatne je v takomto pripade sa naucit chybu vyprovokovat. Necakajte, kym sa vyskytne, ale pracujte na tom, aby sa vyskytla casto. Ak mate trebars podozrenie na prerusenie, skuste zvysit frekvenciu vyskytu prerusenia. Ak mate podozrenie, ze to suvisi s nejakou castou programu, vyvolajte, aby sa ta cast programu casto vykonavala. Mne niekedy, ked ma uz nic nenapadlo, pomohlo aj zurive napadnutie programu zo vsetkych stran: zavesil som pulzne generatory na vsetky mozne vstupy, na seriak som dal vyklopit nejaky nezmyselny obrovsky subor, apod. Cokolvek je lepsie nez cumiet na geret a cakat hodinu, kym sa problem vyskytne, a modlit sa, ze pritom nieco ine spozorujete, alebo ze budete mat nejaky hardwarovy zazracny prostriedok na zachytenie vsetkych udalosti naokolo.

Len tak mimochodom, velakrat pomoze dokladne si v klude poprezerat program a skusit odhadnut, v com by tak mohol byt problem. A velakrat pomahaju aj psychologicke techniky: skuste vysvetlit niekomu nezaujatemu a trpezlivemu (manzelka (pozor, nie frajerka! ;-) ), upratovacka, plysovy medvedik), v com by mohol byt problem. Alebo sa na to jednoducho vyspite (tam je uz frajerka povolena, priam doporucena :-P )

>Trace log by 
>mi moc pomohl.

Ja som velakrat tuzil po nastroji takehoto druhu - nieco hypersuper dokonale nalestene aerodynamicke samocinne a samospasitelne - ale to, co sa mi dostalo do ruk, ma nakoniec vzdy nejako sklamalo; a na druhej strane v pripade skutocnych problemov som som si nakoniec vzdy nejako poradil, obvykle bez akychkolvek speci pomocok, resp. obvykle s pomockami ktore som si sam ad-hoc zhlobil (ci uz hw alebo sw). Nedavno sme sa o tom rozpravali s kolegom, a je fakt, ze seriozne problemy, s ktorymi sa on v poslednych rokoch potykal vzdy tak raz za dva-tri mesiace, vzdy vyzerali spociatku uplne beznadejne a nekonecne komplikovane, kde clovek mal chut hned na zaciatku vsetko zahodit a zacat odznova. A kupodivu sa vzdy nakoniec dopracoval k vysledku, obvykle jednoducho vytrvalostou a systematickou pracou. Takze, povedal, teraz, ked sa objavi beznadejne vyzerajuca chyba, uz sa ani nezlaknem, lebo vzdy to nejako dopadne... ;-)


>
>PS: Bod 7. zahodte C a vratte se ke krasnemu PIC ASM. (Aspon do doby nez 
>budou
>poradne kompilatory a HW nastroje.)


Mno, este by ste si tie poriadne kompilatory mohli trebars aj sam napisat :-P


wek




Další informace o konferenci Hw-list