Ձայնային խափանումը և VPN-ի դադարը ընկնում են նույն տասը վայրկյանի մեջ, և մի գործիք հաղորդում է բարձր թիվ՝ DPC ուշացում պիտակով։ Գայթակղությունը հետևություն անելն է, թե սարքավորման ծրագիրը դանդաղեցնում է թունելը, կամ թունելը ծանրաբեռնում է սարքավորման ծրագրին։ Այդ թվից ոչ մի հետևություն չի բխում։

Այստեղ գործի մեջ են երեք չափումներ, և նրանք ընդհանուր սահման չունեն։

Երեք թիվ, երեք սահման

Հետաձգված ընթացակարգի կանչը աշխատանք է, որը սարքավորման ծրագիրը հետաձգում է իր ընդհատումների մշակիչից, և այդ առօրեաների ներսում անցկացված ժամանակը պրոցեսորին տեղային չափում է, որը վերագրվում է մոդուլներին և ֆունկցիաներին։ Արձագանքի ետ ու առաջ անցումը ժամանակի դիտարկում է սոկետում, որը ստեղծում են ցանցային կույտը և հեռավոր պատասխանողը։ Անջատման իրադարձությունը վիճակի անցում է, որը գրանցում է հաճախորդը։ Յուրաքանչյուրը պատասխանում է հարցի, որին մյուսները չեն կարող, և նույն միավորները նրանց փոխարինելի չեն դարձնում։

Օգտակար կարգապահությունը սահմանը անվանելն է՝ նախքան արժեքը կարդալը։ Միավորը և սահմանը գրեք կողք կողքի։ Եթե գործիքը հաղորդում է միլիվայրկյաններ, հարցրեք՝ ինչի՞ միլիվայրկյաններ. ժամանակ առօրեայի ներսում, ժամանակ՝ սպասելով գործարկմանը, թե ժամանակ՝ մինչև պատասխանի ժամանումը։

Մեկ կատեգորիայում բարձր թիվը հուշում է, երբեք՝ ախտորոշում։

Կարդացեք վերնագրի հետևում եղած սահմանումը

Գործիքները տարբերվում են նրանով, թե ինչն են ուշացում անվանում։ Ոմանք հաղորդում են սարքավորման ծրագրի առօրեաների տևողությունը, ոմանք՝ պլանավորման ուշացումը, և այդ երկու մեծությունները կարող են հակառակ ուղղություններով շարժվել նույն մեքենայի վրա։ Վահանակը, որը դրանցից մեկը պարզապես DPC ուշացում է անվանում, ձեզ ասել է ավելի քիչ, քան թվում է։ Այդ պատճառով երկու վահանակ կարող են տարաձայնվել մի մեքենայի շուրջ, որն ընդհանրապես չի փոխվել։

Նույն զգուշությունը գործում է նաև մեկ վերլուծական գործիքի ներսում։ Ներառական տևողությունը հետևում է առօրեային մուտքից մինչև ելք, մինչդեռ բացառիկ տևողությունը գումարում է միայն այն հատվածները, որտեղ ինքը՝ առօրեան, գործարկվում էր։ Սխալ սյուն ընտրելը կանչողին մեղավոր է դարձնում։

Տեղական սարքավորման աշխատանքը և ցանցային ուշացումը նույնպես փոխազդում են՝ առանց միաձուլվելու։ Ընդհատումների հետ կապված ավելորդ ակտիվությունը կարող է ուշացնել ժամանակի նկատմամբ զգայուն աշխատանքը մեքենայում, և խցանված ուղին կարող է ուշացնել փաթեթները, և երկուսն էլ կարող են ճշմարիտ լինել մեկ տեսանելի դադարի ընթացքում։

Ամեն դիտարկում դրեք մեկ պատուհանի մեջ

Հետագիծը օգտակար է միայն այն դեպքում, երբ կարդում եք ախտանիշը պարունակող միջակայքը։ Գրանցեք հետագիծը, հաճախորդի իրադարձությունը և հավելվածի խափանումը ժամանակադրոշմներով, ապա նայեք նույն վայրկյաններին երեքում էլ։ Մեկժամյա հետագծի առավելագույնը և ավելի ուշ՝ այդ կեսօրից հետո տեղի ունեցած անջատումը, երկու անկապ փաստեր են։

wpr -start CPU -filemode
wpr -stop vpn-trace.etl
xperf -i vpn-trace.etl -a dpcisr -o dpc.txt

Ապա բացեք հետագիծը վերլուծական գործիքում և դասավորեք ըստ տևողության այդ պատուհանի ներսում, ոչ թե ամբողջ գրառման։ CPU վերլուծության ուղեցույցը նկարագրում է DPC/ISR տևողության տեսքը, որը ժամանակը վերագրում է մոդուլներին և ֆունկցիաներին։

Հաստատեք, թե ինչ իրականում պատահեց թունելին մինչ դուք այնտեղ եք։ Հավելվածի տրաֆիկի կարճատև կորուստը չի նշանակում, որ հաճախորդը սկսել է նոր բանակցություն, և փոքր փորձարկման հաջողությունը չի ապացուցում, որ մնացած ամեն ինչ շարունակել է աշխատել։

Փոխեք այն բաղադրիչը, որը նշում են ապացույցները

Զբաղված մոդուլը հետաքննության տեղ է, ոչ դատավճիռ։ Այն կարող է կատարել մեկ այլ բաղադրիչի կամ ձեր ստեղծած ծանրաբեռնվածության պատճառով առաջացած աշխատանք։ Միասին պահեք մոդուլի անունը, սարքը, սարքավորման ծրագրի տարբերակը և դիտարկված միջակայքը, քանի որ հենց այդ հավաքածուն է, որի վրա մատակարարը կարող է գործել։

Փորձի համար մեկ փոփոխությունը արդյունքից սովորելու միակ միջոցն է։ Լարային համեմատությունը նեղացնում է շրջանակը, բայց այն միաժամանակ փոխում է ռադիոուղին և սարքավորման ծրագրի ակտիվությունը, ուստի վերաբերվեք դրան որպես հուշում, ոչ որպես ապացույց։

Հետագծին վերաբերվեք որպես զգայուն տվյալի։ Այն կարող է պարունակել գործընթացների անուններ և միջավայրի մանրամասներ, ուստի դրա տեղը աջակցվող գրանցման ալիքն է, ոչ հանրային կցորդը։ Ասացեք, թե որ դիտարկմանը պետք է պատասխաներ հետագիծը։

Առնչվող հոդվածներ