Meny
Är gratis
checka in
den huvudsakliga  /  Multimedia Installera felsökningsverktyg för Windows. Arbeta med Windows Command Line, Debug Program och dess användning Hämta Defug Exe 64 bit

Installera felsökningsverktyg för Windows. Arbeta med Windows Command Line, Debug Program och dess användning Hämta Defug Exe 64 bit

Debug.exe. - Debugger-programmet som används för att kontrollera och felsöka exekvering av filer.

Används vid operativsystemet MS-DOS. . Under senare versioner operativsystem

fungerar genom emulatorn MS-DOS. Och har begränsade kapaciteter. Kallas genom en lagperiod

Debug [[DISC:] [ROUTE] Filnamn [Parametrar]].

Till exempel: Debug C: \\ ... \\ my.com

Det här programmet Det är en konsolansökan och är utformad för att skapa eller ändra filkoden. Med det kan du skapa en enkel applikation under MS-DOS. och spåra sitt arbete. Denna debugger ligger på lägsta kompilatorns nivå. assemblerare.. Men det har goda möjligheter, till exempel visning och byte av minnet, vilket får status för register.

Lag debug.exe.

Debug.exe Command Set Rules:

· I debug.exe skiljer sig inte av bokstäver.

· Mellanslag i kommandon används endast för att separera parametrar.

· Ingångsnummer ska vara i ett hexadecimalt talsystem, och utan det slutliga bokstaven H.

· Segment och offset spelas in med ett kolon, i formsegmentet: Offset, till exempel CS: 3C1 (offset 3C1H i \u200b\u200bkodsegmentet) eller 40:17 (förskjutet 17H i segmentet, vars adress är 40H).

Efter nedladdning av debugger visas en inbjudan på skärmen som ser i form av en bindestreck. Register CS., Ds., Es, Ss. Vid denna tidpunkt, initierad av adressen till 256-byte prefixet för programsegmentet, och arbetsområdet i minnet börjar med adressen till detta prefix + 100h. Lag debug.exe. Implementeras omedelbart efter inbjudan på platsen, som markeras av markören. Varje kommando består av en identifierare och parametrar, identifieraren består av ett brev.

Tabell 1. Kort bord över alla lag debug.exe

Team Beskrivning Formatera
A (montera) Överföring av monteringskommandon i maskinkod; Standardadressen är CS: 0100H. En [<адрес_начала_кода>]
C (jämför) Jämföra innehållet i två minnesområden; Standard DS används. Kommandot indikerar antingen längden på tomter eller adresser. C.<начальный_адрес_1> L.<длина> <начальный_адрес_2> C.<начальный_адрес_1> <конечный_адрес_1> <начальный_адрес_2>
D (Visa / Dump) Visa innehållet i minnesområdet i hexadecimala och ASCII-format. Som standard används DS; Du kan ange en längd eller ett intervall. D [<начальный_адрес> ] D [initial_adress finite_âdress]
E (Ange) Idrifttagande data- eller maskinkodinstruktioner Standard DS används. E [<адрес> [<инструкции/данные>]]
F (fyll) Fyller minnesområdet data från listan; Standard DS används. Du kan använda både längd och intervall. F.<начальный_адрес_1> L.<длина> "<данные>"F.<начальный_адрес> <конечный_адрес> "<данные>"
G (gå) Exekvering av det väldefinierade programmet i maskinen till den angivna stopppunkten; Standard CS används. Samtidigt, se till att IP innehåller rätt adress. G [\u003d.<начальный_адрес>] <адрес_останова> [<адрес_останова> ...]
H (hexadecimal) Beräkning av mängden och skillnaden mellan två hexadecimala värden. H.<величина_1> <величина_2>
Jag (inmatning) Läser och matar ut en byte från hamnen. Jag<адрес_порта>
L (belastning) Hämtar en fil eller data från skivsektorerna till minnet; Standard - CS: 100h. Filen kan anges med kommandot n eller argument när du kör debug.exe. L [<адрес_в_памяти_для_загрузки>] L [<адрес_в_памяти_для_загрузки> [<номер_диска> <начальный_сектор> <количество_секторов>]]
M (flytta) Kopiera innehållet i minnescellerna; Standard DS används. Du kan ange både längd och intervall. M.<начальный_адрес> L.<длина> <адрес_назначения> M.<начальный_адрес> <конечный_адрес> <адрес_назначения>
N (namn) Observera namnet på filen för kommandon L och W. N.<имя_файла>
O (utgång) Seglar en byte till hamnen. O.<адрес_порта> <байт>
P (fortsätt) Utför samtal, slinga, instruktion eller en upprepad stränginstruktion med REPNN-prefix, flyttar till nästa instruktion. P [\u003d.<адрес_начала>] [<количество_инструкций>]
Q (slutar) Slutförande av debug.exe. Q.
R (Registrera) Visa innehållet i registren och följande instruktioner. R.<имя_регистра>
S (sök) Sök i minnet av tecken från listan; Standard DS används. Du kan ange både längd och intervall. S.<начальный_адрес> L.<длина> "<данные>"S.<начальный_адрес> <конечный_адрес> "<данные>"
T (spår) Steg-för-steg-programkörning. Som i P-kommandot används CS-paret som standard. Jag noterar att det är bättre att använda P. för att utföra avbrott. T [\u003d.<адрес_начала>] [<количество_выполняемых_команд>]
Du (unassemble) Demontera maskinkoden; Standardparet CS: IP. Tyvärr demonterade debug.exe felaktigt de specifika befälhavarna för 80286+ processorer, även om de fortfarande utförs korrekt. Du [<начальный_адрес>] U [<начальный_адрес конечный_адрес>]
W (skriv) Spela in fil från debug.exe; Det är nödvändigt att ställa in filnamnet på N-kommandot n, om det inte har laddats. Och program spelas in bara i form av filer.com! W [<адрес> [<номер_диска> <начальный_сектор> <количество_секторов>]]


Visa minnesområden

Tänk på lagets arbete i detalj. D.så att du kan se innehållet i enskilda minnesområden. Detta exempel använder kommandot D. För att visa minnesområdet, från 0159: 0240:

Här, på begäran på minnesplatsen, fick vi åtta rader där innehållet i det valda minnesområdet anges. Varje linje består av tre delar:

· Adressen till den första vänster om den visade byte i formatet segment: Offset.

· Hexadecimal representation av stycket (16 byte), som börjar med byte som anges i början.

· Symboler i samma stycke i ASCII-format.

Den adress som anges i strängen tillhör uteslutande till den första byte i stycket, och adresserna till efterföljande byte bör beräknas oberoende. Den hexadecimala vyn innehåller två tecken i varje pate, och byte själva separeras av mellanslag för att underlätta läsning. Dessutom bör det noteras att den åttonde och nionde byte separeras av en bindestreck, vilket därigenom skiljer stycket i två delar och underlättar beräkningen av adresserna till byte i stycket.

Användbara mottagningar med lag D

Kontrollera parallella och seriella portar

De första 16 byte av BIOS-dataområdet innehåller adresser till parallella och seriella portar. Därför, med följande kommando, kan du kontrollera dessa portar:

De första åtta bytena förklaras till adresserna till seriella portar COM1-COM4.. Följande 8 byte indikerar adresserna till parallella portar. LPT1-LPT4.. Om du till exempel har en parallellport på din dator, kommer de första två bytorna sannolikt att vara: 7803. Portadressen registreras i den omvända sekvensen, dvs. 0378.

Kontrollera utrustning

De två första byte som ligger i BIOS vid 410H innehåller information om den utrustning som är installerad i systemet. Hitta dessa byte av laget:

Antag att de två första byteerna kommer att vara 23 44. Vi kommer att dekryptera dessa byte för att få information om installerade enheter. För att göra detta, vrid dessa byte (44 23), sedan översätt dem till binärt system Notera. Vi får:

Bitvärde
Bitposition

Vad betyder dessa bitar? Vi fortsätter att dechiffrera:

Kontrollera status för tangentbordsregistret

I dataområdet BIOS. av adressen 417 timmar Den första byte är belägen, som lagrar statusen för tangentbordsregistret. Stäng av Num lock. och Caps Lock. , då skriver du:

Den första byte kommer att vara 00. Inklusive Num lock. och Caps Lock.Jag registrerar mig igen. Nu måste den första byten vara lika med 60. Experimentellt sätt är etablerat att när den är påslagen Num lock. Den första byte är 20, och när Caps Lock. - 40.

Verifiering av videosystemets tillstånd

Av adressen 449h. i BIOS. Det finns det första videodataområdet. Vi skriver för verifiering:

Den första byte visar det aktuella videoläge (till exempel 03-färg), och den andra är antalet kolumner (till exempel 50-läge med 80 kolumner). Antalet rader finns på 484H (40:84).

Kontrollera BIOS Copyr och serienummer

Upphovsrättsinformation på BIOS. Inbyggd i B. Rom BIOS. av adressen FE00: 0.. En sträng med en copywriter kan lätt hittas i ASCII-sekvensen, och serienummer - i form av ett hexadecimalt antal. Även om en sträng som indikerar upphovsrätten kan vara lång och inte passa in i det demonterade minnesområdet. I det här fallet bör du helt enkelt komma in igen D..

Kontrollera datumet för BIOS-arrangemanget

Detta datum registreras också i Rom BIOS. Börjar med adressen FFFF: 5.. Efter att ha utfört det lämpliga kommandot i ASCII-sekvensen, kommer det här datumet som spelats in i formatet att vara mm / dd / gg.

Direkt inmatning av programmet i minnet med hjälp av debug.exe

debug.exe. Gör det möjligt att ange ett program direkt i maskinens minne och sedan övervaka och hantera utförandet. Vi kommer att ange ett program i maskinkoder med hjälp av kommandot. E.. Samtidigt vara vaksam - att ange felaktiga data till en felaktig adress är fylld med oförutsägbara konsekvenser! Även om allvarliga problem i systemet är osannolikt att leda, men förlorar alla data som introduceras i debug.exe., det är lätt. Programmet du vill ange använder data som läggs direkt i instruktionskroppen. Därefter visas listan över program på assemblaren, i kommentarerna, analogerna av språkomudierna i maskinkoderna indikeras, liksom förklaringen av varje kommando. Observera att det inte finns någon symbol i siffror h.eftersom, som nämnts ovan, debug.exe. Det förstår bara siffrorna i det hexadecimala systemet.

MOV AX, 0123; Kod B82301: Vi anger värdet på 0123H i AX

Lägg till AX, 0025; Kod 052500: Lägg till 0225H till AX-värde

MOV BX, AX; Kod 8BD8: Ange värdet på AX i BX

Lägg till BX, AX; 03d8 Kod: Lägg till axel till bx

MOV CX, BX; Kod 8BCB: Ange värdet av BX i CX

Sub CX, AX; Kod 2BC8: Ta värdet på AX från CX

Sub AX, AX; Kod 2BC0: CLEAN AX

JMP 100; Eee-kod: Gå till början av programmet

Som du kan se har varje maskininstruktion en längd från 1 till 3 byte. Den första byte indikerar operationen, efterföljande - dess operander. Genomförandet av programmet börjar i enlighet med den första instruktionen och passera konsekvent genom alla instruktioner en efter en. Nu kan du ange ett program i minnet. Vi delar maskerkoden i tre delar med sex byte och introducerar var och en med kommandot E. och börjar med adressen CS: 100..

Nu när programmet är in i minnet, låt oss försöka hantera det. För att börja checka nuvarande tillstånd Register och flaggor, för detta går vi in \u200b\u200bi kommandot R.. Debuggeren visar innehållet i registren i hexadecimal form; på olika maskiner Innehållet i registren kan variera.

Så, som du kan se debug.exe. Initialiserade segment Ds., Es, Ss., CS. Samma adress. Registrera Ip innehåller 0100 , vilket indikerar att instruktioner utförs från förskjutning 100h. handla om CS. (Och vi infogar instruktioner i minnet, anger just den här adressen).

Värdena för överflödet, riktningar, avbrott, tecken, noll, ytterligare överföring, paritet och överföring är också angivna här.

Efter register och stater i debug.exe-flaggorna visar information om den första instruktionen som kommer att utföras:

· Instruktionsadressen, i vårt fall är det 0B12: 0100, där 0B12 är adressen till kodsegmentet.

· Maskinkod som motsvarar den här handboken (B82301).

· Faktum är att instruktion inspelas på Assembler (MOV AX, 0123).

Nu, efter att ha analyserat innehållet i register och flaggor, låt oss gå till genomförandet av programmet. Vi kommer att genomföra programmet vi kommer att gå för steg med kommandot T.. Använda laget för första gången T.Vi utför instruktioner Mov.. Här är den operant maskinkodsinstruktionen - 2301 . Driftsplatser 23 i Al (yngre halv YXA.), men 01 - i AH. (äldre). Därefter debug.exe. Visar igen information om register:

Nu YXA. innehåller 0123H, Ip0103H (Följaktligen längden på den utförda instruktionen: 0103H - 0100h = 3 Byte), och som nästa instruktion anges en operation Lägg till.. Så efter en gång att utföra laget T., vi kommer till den sista instruktionen JMP 100.. Hon kommer att installera ett register Ip i 100h., I. debug.exe. kommer tillbaka till början av programmet. Återvänder till början av programmet, bör det noteras att Ds., Es, Ss. och CS. Innehåller samma adress. Faktum är att debug.exe. anser de angivna programmen uteslutande som program .Com.. Och i program .Com., Till skillnad från .Exe, Stack, kod och data lagras i ett segment.

Montering och demontering

I det sista exemplet introducerade vi ett program i maskinkoder, men debug.exe. Det är ganska kapabelt att förstå anvisningarna som spelats in på monteraren. Att arbeta med sådana program i debug.exe. Lag används A. och U..

Team A. Begär instruktionerna på monteraren och omvandlar dem till maskinkoden. För att börja, initiera den ursprungliga adressen för att ange instruktioner (100h):

Debuggeren visar adressen till koden och offset-segmentet (till exempel, 13f2: 0100.). Nu måste vi ange följande instruktioner på monteraren i minnet, efter varje rad klickar STIGA PÅ:

När du har angett den senaste instruktionen klickar du på STIGA PÅ Två gånger för att ange debuggaren som vi slutade skriva in texten i programmet. Nu kan programmet lanseras med kommandon. R. Att visa register och T. För spår. Jag noterar att i dina program i närvaro av instruktioner Int. De bör behandlas inte av laget T.och lag P.vilka processer allt avbryts omedelbart.

Låt oss vända sig till demonteringsförfarandet, och som ett exempel har vi precis kommit in i programmet. Använd adresserna till de första och sista instruktionerna för att ange det område som vi kommer att demontera, d.v.s. 100h. och 107h..

Efter att ha utfört det här kommandot debug.exe. Visar instruktionerna i det angivna området, på monteraren, i maskinkoderna, såväl som adressen till varje instruktion:

Spara ett program på disken

Ställ först filnamnet:

Sedan i registret Skit Du måste placera programmets storlek i byte. Det kommer att vara lika med skillnaden i ändliga och inledande förskjutningar. Nu är det bara att spela in på disken W. Och som ett resultat, se det inspelade antalet byte. Som ett resultat får vi ett program redo för utförande.

Exit utförs av laget q.. Exempel:

0B3B: 0100 MOV AX, 1234

0b3b: 0103 Mov ah, 4c

0B3B: 0105 INT 21

0B3B: 0100 B83412 MOV AX, 1234

0B3B: 0103 B44C MOV AH, 4C

0b3b: 0105 CD21 INT 21

Ax \u003d 0000 bx \u003d 0000 cx \u003d 0007 dx \u003d 0000 sp \u003d ffale bp \u003d 0000 si \u003d 0000 di \u003d 0000

Ds \u003d 0b3b es \u003d 0b3b ss \u003d 0b3b cs \u003d 0b3b ip \u003d 0100 nv upp ei pl nz na po nc

0B3B: 0100 B83412 MOV AX, 1234

Spela in 00007 byte

Att uppfylla detta laboratoriearbete Det tar flera assembler-kommandon:

MOV AH,<шестнадцатиричное число> - Inträde i registret AH. tal 02 För att ange systemfunktionen - utmatningen från symbolen på skärmen;

MOV DL,<шестнадцатиричное число> - Inträde i registret Dl symbolkod;

INT 21 - DO: s huvudavbrott (förfarandet) som implementerar många olika funktioner. Funktionsnumret registreras före AH-registret. För att skriva ut en symbol på skärmen - i AH-registret, funktionen 02, medan den är i Dl Spela in den förinställda symbolkoden.

Int 20 - DOS avbrott som lämnar programmet (från -2-programmet).

Exempel:

Visa symbolen "*".

mOV AH, 02; systemfunktion 02 - Symbolutgång på skärmen

mov dl, 2a; ASCII-kod asterisk

int 21h; Avbryta för utgången "*"

int 20H; Exitprogram

Praktisk uppgift

syfte

Kännedom med debugger debug.exe. Få praktiska färdigheter att arbeta med detta program.

Utrustning:

Personlig dator kör Windows operativsystemet.

Programvara:

Felsöksprogram.

Frågor till upptagande

1. Vad är felsökningsprogrammet?

2. Hur kör du det här programmet?

3. Hur introduceras lag i debug?

4. Vad är identifieraren?

5. Hur man anger ett program i Debug?

Uppgiften

· Undersök teoretiskt material.

· Har kommandot beskrivet under texten.

· Hitta beloppet och skillnaden på 2 nummer: 1: a antal - nummer i gruppen (översatt i hexadecimal form), 2: a - numret mittemot antalet första bokstaven i namnet i alfabetet ( ett negativt tal i ytterligare kod). Mängden och skillnaden är översatta till decimalformen.

· Granska innehållet i mikroprocessorregistren, såväl som flaggor och skriva dem i protokollet. Vilken funktion utför varje register? .

· Skriv det första numret till AX-registeret (från uppgiften 3), och i BX-registret - den andra (från uppgiften 3). Ange B. bagge I kodsegmentet (Offset 100) registrerar maskinens besättning på AX och BX. Visa dess assemblerformulär på skärmen. Utför det här kommandot, resultera i en decimalform.

· Ange RAM till kodsegmentet (Offset 100) uppsättning av en Assembler-kommandon för att skriva ut tecknet på skärmen - den första bokstaven i ditt efternamn. Kontrollera programmet i Debug. Skriv sedan den till skivan i form av en serverfil. Vad är programmets storlek? Kör den för att utföra från dos.

· Alla åtgärder beskriver i rapporten.

1. Namn på arbete.

2. Syftet med arbetet.

3. Instrument och utrustning.

4. KORT TEORETISK INFORMATION.

5. Beskrivning av intäkterna.

6. Texten till programmet skapas.

7. Slutsatser.

Kontrollfrågor

1. Vilket kommando att ange minnesdata eller maskinkodinstruktioner?

2. Hur man jämför innehållet i två minnesregioner?

3. Hur fyller du minnesområdet för data från listan?

4. Vilket kommando gör uppfyllandet av det väldefinierade programmet?

5. Vilket kommando skriver filen från debug?

6. Hur är församlingen och demonteringen?

Android Debug Bridge (ADB) är konsolprogramvilket gör det möjligt för dig att felsöka mobil enheter på Android, liksom emulatorer.

Beskrivning

Det här verktyget förenklar installationen och felsökning av applikationer, och ger också tillgång till UNIX-skalet. Den senare kan användas för att starta de nödvändiga kommandona på enheten. Programmet kan bland annat användas för att låsa upp smarttelefonen med felsökningsläge. Samtidigt är det värt att notera att Android Debug Bridge stöder arbete med några Android-enheter, förutsatt att den nödvändiga funktionaliteten inte har blockerats av tillverkaren.

Programmet innehåller tre komponenter:

  • Klient. Fungerar på utvecklarens dator, skickar kommandon. För att ringa till klienten kan du använda det lämpliga kommandot i terminalen.
  • Demon (ADBD). Utför kommandon på enheten. Fungerar i bakgrunden på varje enhet.
  • Server. Hanterar interaktionen mellan klienten och demonen. Fungerar i bakgrunden på utvecklarens dator.

ADB-funktioner:

  • Visa en lista över anslutna och stödda enheter.
  • Visa loggar.
  • Kopiera och överföra data och filer mellan enheter.
  • Installera och radera applikationer.
  • Rengöring och omskrivning av dataavsnitt.
  • Såväl som mycket mer.

Från vår webbplats kan du ladda ner Android Debug Bridge helt gratis, utan registrering och SMS.

Skärmdumpar

Föraren är i sitt väsen bindemedel mellan operativsystemet, det vill säga programvara och järn, det vill säga fysiska anordningar, såsom videokort, skrivare, processorer, etc. I operativsystemet kan de grundläggande drivrutinerna för de mest nödvändiga enheterna läggas - musen, tangentbordet, men för resten behöver du nya drivrutiner.

Hur installerar du föraren?

1. Om enkelt sätt om det finns installationsfilDu måste helt enkelt köra den och följ installatörens instruktioner.
2. Om det inte finns någon installatör, men det finns bara filer med * .Inf Extensions, * .dll, * .vxt, *. Sys, * .dr., Åtgärdsalgoritmen måste ungefär följande:

a) Först måste du välja en ikon på skrivbordet ( Min dator) och klicka på den högra musknappen, välj menyn Välj i rullgardinsmenyn Egenskaper).

b) Gå nu till fliken ( Utrustning) och klickar på knappen ( Enhetshanteraren).

c) Nu måste du välja den enhet för vilken föraren ska installeras / uppdateras. På linjen med enheten måste du klicka på höger musknapp och välj en rullgardinsmeny ( Egenskaper) Eller du kan helt enkelt klicka på den för att gå till önskade inställningar.


d) Gå till fliken ( Förare), välj knappen ( Uppfriska).

e) I dialogrutan som visas väljer du objektet ( Nej, inte den här gången) och gå igenom ( Ytterligare).

f) I detta skede finns det två alternativ. Du kan försöka installera drivrutinerna i automatiskt lägeDärefter försöker OS själv hitta en lämplig drivrutinsenhet och installera dem, för detta, välj ( Automatisk installation (rekommenderad)) Om försöket misslyckas utan framgång, måste du flytta till det andra objektet ( Installation från den angivna platsen) och välj ( Ytterligare).


g) Det här menyalternativet innebär valet mellan drivrutinsökningen på utbytbara media och möjligheten att ange drivrutinen själv. Därför, om det finns en enhet med drivrutiner, måste du infoga disken på cd-skivan och välj alternativet ( Sök efter utbytbara media (disketter, cd-skivor ..)) och gå ( Ytterligare).

Om föraren finns och laddas ner på Internet själv måste du ange en mapp till den mapp där installationsdata för föraren är som följer. Välj ett objekt ( Aktivera följande sökplats:) och gå till ( Översikt), välj nu mappen med föraren och klicka på knappen ( OK). Nu går vi säkert igenom ( Ytterligare) Om allt är gjort korrekt, börjar installationen av den önskade föraren.

Felsökningsverktyg. för Windows - Debug Tools för operativkod windows-system. De är en uppsättning fritt distribuerade program från Microsoft, som är utformat för att felsöka ett användarkod och kärnläge: applikationer, drivrutiner, tjänster, kärnmoduler. Verktyget innehåller debuggers av konsol och GUI-lägen, verktyg för att arbeta med symboler, filer, processer, verktyg för att säkerställa fjärrfelsökning. Verktygsläget innehåller de verktyg som du kan hitta orsakerna till misslyckanden i olika komponenter i systemet. Felsökningsverktyg för Windows Från en viss punkt är den inte tillgänglig för nedladdning i form av en autonom distribution och ingår i Windows SDK (Windows Software Development Kit). Uppsättning av instrument fönster SDK är i sin tur tillgänglig som en del av MSDN-prenumerationsprogrammet eller kan fritt laddas som en separat fördelning från msdn.microsoft.com. Enligt utvecklingen av utvecklare, den sista och mest verklig version Felsökningsverktyg för Windows finns i Windows SDK.

Felsökningsverktyg för Windows uppdateras och läggs ut i allmänhetens tillgång Ofta ofta och denna process beror inte på frisläppandet av operativsystem. Därför kontrollerar du regelbundet efter nya versioner.

Låt oss nu se vad som i synnerhet tillåter oss verktyg för felsökningsverktyg för Microsoft Windows.:

  • Fasta lokala applikationer, tjänster (tjänster), förare och kärna;
  • Raderad applikation, service (tjänster), förare och kärnor på nätverket;
  • Att felsöka arbetsapplikationerna i realtid;
  • Analysera applikationsminnesdumpfiler, kärnor och system som helhet;
  • Arbeta med system baserat på x86 / x64 / itanium arkitekturer;
  • Felsöka användarläge och kärnaläge;

Följande versioner av felsökningsverktyg för Windows är tillgängliga: 32-bitars X86, Intel Itanium, 64-bitars X64. Vi behöver två av dem: x86 eller x64.

Flera sätt att installera debuggingverktyg för Windows är tillgängliga, i den angivna artikeln kommer vi bara att överväga de viktigaste:

  • Installation med hjälp av en webbinstallatör.
  • Installera felsökningsverktygen för Windows med en ISO-bild av en Windows SDK.
  • Installera felsökningsverktyg för Windows direkt från dbg_amd64.msi /dbg_x86.msi-paket.

Det är fortfarande oklart vilket ögonblick, varför ska jag installera felsökningsverktyg på en dator? Ofta, trots allt, stöta på situationen när störningar i arbetsmiljön är extremt oönskat! Och ännu mer att installationen av den nya produkten, det vill säga att göra ändringar i registret / systemfilerna, kan vara helt oacceptabla. Exempel kan fungera som kritiska servrar. Varför utvecklare inte överväger alternativet med bärbara (bärbara) versioner av applikationer som inte kräver installation?
Från den version av versionen av installationsprocessen för felsökningsverktygen för Windows-paketet genomgår vissa ändringar. Låt oss nu flytta direkt till installationsprocessen och överväga sätt att du kan installera verktyget.

Installera felsökningsverktyg för Windows med hjälp av en webbinstallatör

Gå till Windows SDK-arkivsidan och hitta en sektion som heter Windows 10 och under "Windows 10 SDK (10586) och en emulator på enheten med Windows 10 Mobile (Microsoft) (version 10586.11)".

Klicka på objektet Installera SDK-paketet. Efter att ha klickat har du hämtat och kör filen sdksetup.exe, som initierar installationsprocessen för Windows SDK. Vid det första steget kommer installatören att kontrollera närvaron i systemet för det installerade paketet. Net-ramen senaste versionen (i det här ögonblicket Detta är 4,5). Om paketet saknas att installationen kommer att föreslås och stationen startas om i slutet. Omedelbart efter omstart, vid auktoriseringssteget, startar installationsprocessen omedelbart med Windows SDK.

Ofta, när man väljer alla, utan undantag, kan paketkomponenterna, fel uppstå under installationen. I det här fallet rekommenderas att installera komponenter selektivt, det minsta obligatoriska inställningen.

Efter installation av felsökningsverktygen för Windows, läget för debug-filer när den här metoden Vi kommer att ha installationerna enligt följande:

  • 64-bitars versioner: C: \\ Programfiler (x86) \\ Windows Kits \\ X.X \\ Debuggers \\ x64
  • 32-bitars versioner: C: \\ Programfiler (x86) \\ Windows Kits \\ x.x \\ debuggers \\ x86

* där x.x är en viss version av utvecklingssatsen;
Märkte att version 8 och ovan, installationsvägarna är märkbart annorlunda än den klassiska för alla tidigare versioner Debug Tools?

Ett stort plus den här metoden Debulging Tools för Windows Installation ställer in versioner av debug-resurser på en gång alla arkitekturer.

Installera felsökningsverktyg för Windows med ISO-bild Windows SDK

Denna metod innebär installation av felsökningsverktyg för Windows med en komplett installationsbild av Windows SDK (Software Developers Kit). Upp till en viss tid, nedladdning iso bild För motsvarande system kan du på Windows SDK-arkivsidan. Men för tillfället kan du få en ISO-bild av en SDK via sdksetup.exe webbinstallationslansering och valet av objektet Ladda ner Windows Software Development Kit I installationsprogrammets startfönster:

Som det visat sig är den tidigare installationsmetoden med en webbinstallatör tillräckligt capricious och kompletterar ofta felet. På rena system är etablerat utan problem, men många problem uppstår på tillräckligt laddade. Om du har ett sådant fall, använd sedan den här metoden.

Följaktligen är det nödvändigt att välja önskad distribution, för mig (och jag tror för många) just nu är det " Windows-paket SDK för Windows 7 I.NET Framework 4 "och något under klick på länken" Get iso-image dvd ".

När du arbetar med webbplatsen msdn.microsoft.com, rekommenderar jag dig att använda webbläsare Explorer, eftersom fall av konkurrensförmåga hos konkurrerande produkter noterades!

Följaktligen är det nödvändigt att välja endast om det behövs. Vanligtvis sammanfaller utmatningen av felsökningsverktyg för Windows med systemets bit. Jag har de studerade systemen, mestadels 64-bitars, så i de flesta fall laddar jag ner bilden för 64-bitars grmsdkx_en_dvd.iso-systemet.
Därefter, efter nedladdning av bilden, måste vi arbeta med den tillgängliga ISO. På det traditionella sättet är det naturligtvis en CD, men det är en ganska lång och ibland dyr metod. Jag föreslår att man använder gratis Verktyg Genom att skapa virtuella diskenheter i systemet. Personligen föredrar jag att använda Deamon Tools Lite-programmet för detta ändamål. Någon kan ha andra preferenser, mer direkta eller lätta verktyg, smak och färg, som de säger .. efter installationen Daemon Tools. Lite, jag klickar bara på två gånger till bildfilen grmsdkx_en_dvd.iso och i systemet har jag en ny virtuell CD:

Redan då dubbelklicka Aktivera AutoLoad och börja installera Windows SDK:

När det finns en kö, välj de komponenter som är installerade från listan, sedan stänger vi av absolut alla alternativen är andra än markerade i skärmdumpen. Detta kommer att bidra till att undvika onödiga fel nu.


På det här sättet, i skärmdumpen finns det två alternativ: "Windows Performance Toolkit" och "Felsökningsverktyg för Windows". Välj båda, eftersom Windows Performance Toolkit säkert kommer att vara användbart att fungera! Därefter, efter att ha tryckt på "Nästa" -knappen, fortsätter installationen i som vanligt läge. Och i slutet kommer du att se inskriptionen "installation".
Vid slutet av installationen kommer arbetsdisken för felsökningsverktygen för Windows att vara följande:

  • För x86 version:
  • För X64 version:

På denna installation kan felsökningsverktyg för Windows betraktas över.

Installera felsökningsverktyg för Windows Through. MSI-fil

I händelse av problem vid installation av felsökningsverktyg för Windows, två tidigare sätt, har vi fortfarande en annan, den mest tillförlitliga och tidstestade tiden, skärning, så att säga, mer än en gång. En gång, innan du integrerar i Windows SDK, har felsökningsverktyg för Windows varit tillgänglig i form av en separat installatör. MSI, som nu kan hittas, men redan i djup windows-distribution SDK. Eftersom våra händer redan har en ISO-bild av Windows SDK, kan vi inte montera den i systemet, men helt enkelt öppna med alla kända archiver WinRar.Tja, eller någon annan produkt som arbetar med innehållet i ISO-diskar.

Efter att ha öppnat bilden måste vi gå till "Setup" -katalogen, som finns i roten och sedan välj en av katalogen:

  • För att installera 64-bitarsversionen: \\ Setup \\ winsdkdebuggingtools_amd64 och packa upp från den här katalogfilen dbg_amd64.msi.
  • För att installera 32-bitars version: \\ setup \\ winsdkdebuggingtools och packa upp filen dbg_x86.msi från den här katalogen.

Vid slutet av installationen kommer arbetsdisken för felsökningsverktygen för Windows att vara följande:

  • För x86 version: C: \\ Programfiler (x86) \\ Felsökningsverktyg för Windows (x86)
  • För X64 version: C: \\ Programfiler \\ Felsökningsverktyg för Windows (x64)

På den här installationen kan felsökningsverktygen för Windows anses vara gjorda.

ytterligare information

Jag vet inte vad det är kopplat till, kanske med min ouppmärksamhet, men efter att ha installerat debugging för Windows, föreskrivs inte installatören en väg till katalogen med en debugger i systemvariabeln. Detta ställer vissa begränsningar för lanseringen av olika debug-uppgifter direkt från konsolen. Därför, i avsaknad av en väg, föreskriver jag självständigt i fönstret Miljövariabler Banan till debugging betyder:

  • C: \\ Programfiler (x86) \\ Windows Kits \\ 10 \\ Debuggers \\ x86
  • C: \\ Programfiler (x86) \\ Windows Kits \\ 10 \\ Debuggers \\ x64

* I ditt fall kan banorna skilja sig både på grund av användningen av OS andra bit och på grund av användningen av SDK av en annan version.

Felsökningsverktygen för Windows-paketverktyg kan fungera som bärbara applikationer, bara kopiera med arbetssystem katalog Microsoft Windows Performance Toolkit Och använd den som en bärbar version på operativservern. Men glöm inte att ta hänsyn till systemets storlek !! Om du till och med gjorde en fullständig installation av ett paket på ett kritiskt viktigt system, kan du börja arbeta direkt efter installationen, ingen omstart krävs.

Sammansättning Felsökningsverktyg för Windows

Och nu kommer jag äntligen att vara sammansättningen av felsökningsverktyg för Windows:

Fil Syfte
adplus.doc. Dokumentation på adplusverktyget.
adplus.exe. Konsolansökan som automatiserar CDB-felsökarens arbete för att skapa dumpar, loggfiler för en eller flera processer.
agestore.exe. Verktyget för att ta bort föråldrade filer från det lagring som används av symbolservern eller källservern.
breakin.exe. Utnyttjandet som låter dig skicka processerna en kombination av ett anpassat stopp (paus), som liknar pressning av Ctrl + C.
cDB.EXE. Console Debugger Custom Mode.
konverterastore.exe Utnyttjandet för att konvertera tecken från en nivå av 2-tums till 3-tier-nivå.
dbengprx.exe. Riperiter (proxyserver) för fjärrfelsökning.
dbgrpc.exe. Utnyttjandet för att visa information om RPC-samtalsstatus.
dbgsrv.exe. Serverprocessen som används för fjärrfelsökning.
dbh.exe. Verktyget för att mata ut information om innehållet i symbolfilen.
dumpchk.exe. Dump Check Utility. Verktyg för snabb kontroll Dumpfil.
dumpExam.exe. Utility för analys av dump av minnet. Resultatet visas i% Systemroot% \\ Memory.txt.
gflags.exe. Redaktör för globalt flaggsystem. Utility hanterar registernycklar och andra inställningar.
i386kd.exe. Wrapper till KD. När det var så kallat KD för system på windows-databasen NT / 2000 för X86-maskiner? Förmodligen kvar för överväganden om kompatibilitet.
ia64kd.exe. Wrapper till KD. När var den så kallade KD för Windows NT / 2000-baserade system för IA64-maskiner? Förmodligen kvar för överväganden om kompatibilitet.
kd.exe. Console Kernel Mode Debugger.
kdbgctrl.exe. Kärnfelsökningsverktyg. Utility för hantering och konfiguration av kärnfelsökning.
kdsrv.exe. Anslutningsserver för KD. Verktyget är en liten applikation som körs och väntar på fjärranslutningar. KD startar på klienten och ansluter till den här servern för fjärrfelsökning. Och servern och klienten måste vara från samma felsökningsverktyg.
kill.exe. Verktyg för att slutföra processerna.
list.exe. Utility för att visa innehållet i filen till skärmen. Inkluderat detta miniatyrverktyg visade sig vara med ett mål - visning av stora text- eller loggfiler. Det tar en liten plats i minnet, eftersom laster text med delar.
logger.exe. En miniatyrdebugger som bara kan arbeta med en process. Verktyget implementerar logextet.dll i processutrymmet, som registrerar alla funktioner och andra åtgärder i programmet som studeras.
logviewer.exe. Verktyget för visning av de loggar som spelats in av Logger.exe debugger.
ntsd.exe. Microsoft NT symbolisk debugger (NTSD). Debugger, identisk med CDB, förutom att det skapar en textruta när den startas. Liksom CDB kan NTSD felsöka och konsolapplikationer och grafiska applikationer.
pdbcopy.exe. Verktyget för att ta bort privata tecken från symbolfilen, kontrollera över offentliga tecken som ingår i teckenfilen.
avlägset.exe. Utnyttjandet för fjärrfelsökning och fjärrkontroll av någon konsolfelsökare KD, CDB och NTSD. Gör att du kan köra alla dessa konsolfelsökare på distans.
rtlist.exe. Fjärrvisareuppgifter. Utility används för att visa listan körprocesser Genom DBGSRV-servern.
symchk.exe. Utnyttjandet för nedladdning av tecken från Microsoft Characters Server och skapa en lokal symbol cache.
symstore.exe. Utnyttjandet för att skapa ett nätverk eller lokalt lagring av tecken (2-tier / 3-tier). Lagring av tecken är en specialiserad katalog på en skiva, som är byggd i enlighet med en specifik struktur och innehåller tecken. I rotkatalogen av tecken skapas strukturen av undermappar med namn som är identiska med namnet på komponenterna. I sin tur finns i vart och ett av dessa undermappar undermappar som har speciella namn erhållna med metoden för hashing binära filer. Symstore Utility skannar mappar med komponenter och lägger till nya komponenter till lagring av tecken, varifrån någon klient kan få dem. Det sägs att symbolen tjänar till att få tecken från lagring av 0-nivå och lägger ut dem i 2-tier / 3-tier nivå lagring.
tlist.exe. Task Viewer. Utility för att visa en lista över alla löpande processer.
umdh.exe. Användningsläge Dump Heap Utility. Utility för heapanalys (hög) av den valda processen. Gör det möjligt att mata ut olika parametrar för en hög.
uSBVIEW.EXE. USB-tittare. Utility för visning USB-enheteransluten till datorn.
vmdemux.exe. Demultiplexer virtuell maskin. För en COM-anslutning skapar flera namngivna kanaler. Kanaler används för att felsöka olika komponenter i den virtuella maskinen.
windbg.exe. Debugger av användarläge och kärnläge med ett grafiskt gränssnitt.
Kör debug.exe, program för kontroll och felsökning av Executive MS-DOS-filer. Exekverad utan parametrar debug. Kör debug.exe-programmet och visar kommandoinbjudan debug.representerad av defics (-).


1)
Kör den virtuella datorn 2007 med Windows XP. Översätt OS till kommandoradsläge.

Start -\u003e Kör -\u003e Ange CMD och tryck på ENTER.


2)
Få och åtgärda certifikatet på kommandotalternativen Debug

I konsolen: EnterDebug, sedan (?).

Kortlista Alla lag:

A (montera) - Översättning av monteringskommandon i maskinkod. Standard adress - CS: 0100H.

C (jämför) - Jämförelse av innehållet i två minnesregioner. Standard används Ds.. Kommandot indikerar antingen längden på tomter eller adresser.

D (dumpa) - Visar innehållet i minnesområdet i hexadecimala och ASCII-format. Standard används Ds.. Du kan ange en längd eller ett intervall.

E (Ange) - Ange data- eller maskinkodinstruktioner. Standard används Ds..

F (fyll) - Fyll i minnesdata från listan. Standard används Ds.. Du kan använda både längd och intervall.

G (gå) - Uppfyllandet av det väldefinierade programmet i maskinen till den angivna stopppunkten. Standard används Ds.. Det bör säkerställas att Ip Innehåller rätt adress.

H (hexadecimal) - Beräkning av mängden och skillnaden mellan två hexadecimala värden.

Jag (inmatning) - Läs och mata ut en byte från hamnen.

L (belastning) - Ladda ner en fil eller data från skivsektorerna till minnet. . Standard - CS: 100h.. Filen kan anges med kommandot N. eller argument vid start debug.exe.

M (flytta) - Kopiera innehållet i minnescellerna; Standard används Ds.

N (namn) - Ange namnet på filen för kommandon L (belastning) och W (skriv).

O (utgång) - Plats byte till utgångsporten.

P (fortsätt) - Utförandet av instruktioner Ring, slinga, int (cykel, avbrott, procedurer) eller repetitiva stränginstruktioner med prefix Repnn.passerar till nästa instruktion.

Q (slutar) - slutförande av arbetet debug.exe.. Utan att spara testfilen.

R (Registrera) - Visa innehållet i registren och följande instruktioner.

S (sök) - Sök i minnesstecken från listan. Standard används Ds.. Du kan ange både längd och intervall.

T (spår) - Steg-för-steg-programkörning. Som i laget P.Standardparet använder CS: IP.. Men för att utföra avbrott är det bättre att använda laget P..

Du (unassemble) - Demontering av maskinkod. Standardparet använder. CS: IP..

W (skriv) - Skriv en fil från debug.exe. till disken. Det är nödvändigt att ställa in filnamnet som ett kommando N.Om det inte var laddat.


3)
Vi får och fixar dumpningarna av de karakteristiska områdena av RAM och ROM

Jag ringer R-kommandot.

Register CS., Ds., Es, Ss. Vid denna tidpunkt initialiserad adressen till programmets segments segment med 256-byte, och arbetsområdet i minnet börjar med adresser till detta prefix + 100h.

Command Set Rules:

A) B. debug.exe. Skiljer sig inte av bokstäver.

B) Spaces i kommandon används endast för att separera parametrar.

C) De angivna siffrorna måste vara i ett hexadecimalt talsystem, och utan slutliga bokstäver h..

D) Segment och offset skrivs med en kolon i format segment: Offset.


4)
Visa minnesområde.

Team D.Gör att du kan se innehållet i enskilda minnesområden.
Kontrollera den storlek som är tillgänglig för minnet. För att göra detta introducera: d 40:13. och inmatning.
De två första byte som uppträdde på skärmen innehåller minnesstorleken i kilobyte och i hexadecimal representation, är byte i omvänd ordning. Vi har det: 8002 0280 640 (k)

  • Adress till den första till vänster om den visade byte i formatet segment: Offset.
  • Sexton presentation av stycket (16 byte), som börjar med byte som anges i början.
  • Symboler i samma stycke i ASCII-format.


4)
Kontrollera parallella och seriella portar.


De första 16 byte av BIOS-dataområdet innehåller adresser till parallella och seriella portar. De första bakade åtta byte anger adresserna till seriella portar COM1-COM4. Följande 8 byte indikerar LPT1-LPT4-parallella portadresserna. Portadress 78 03 - skrivet i omvänd form.


5)
Kontrollera status för tangentbordsregistret.


I dataområdet BIOS. av adressen 417 timmar Det finns den första byte, som lagrar statusen för tangentbordet ..


6)
Kontrollera datumet för BIOS.


Upphovsrättsinformation på BIOS. Inbyggd i B. Rom BIOS. av adressen FE00: 0.. En sträng med en copywriter kan lätt hittas i ASCII. -Exterativitet och serienummer - i form av ett hexadecimalt tal. Du kan se det sjusiffriga datornumret och copywrit-datumet. Även om en sträng som indikerar upphovsrätten kan vara lång och inte passa in i det demonterade minnesområdet. I det här fallet bör du helt enkelt komma in igen D..

Datum registreras också i Rom BIOS. Börjar med adressen FFFF: 5.. Efter att ha utfört det lämpliga kommandot i ASCII. -Sekvensen är det här datumet som spelats in i format mm / dd / gg.


7)
Ett exempel på maskinkoder.


Tänk på skapandet av ett program på maskinens språk, dess presentation i minnet och resultaten av utförandet. Debugger Team A (montera) Översätt Debug. För att ta emot Assembler-kommandon och översätta dem till maskinkoder.

Nu när programmet är in i minnet, låt oss försöka hantera det. Till att börja med, kontrollera registerens och flaggs nuvarande tillstånd, för det här går vi in \u200b\u200bi kommandot R..


Ip - Registrera som innehåller adressförskjutningen av följande kommando som ska utföras i förhållande till kodsegmentet CS. I processorerna i X86-familjen.

Registrera Ip associerad med CS. som CS: IP.var CS. är det aktuella kodsegmentet, och Ip - Den aktuella förskjutningen i förhållande till detta segment.

Registrera Ip Det är ett 16-bitars indikatorregister. Förutom honom inkluderar registeren av denna typ Sp. (Stapelpekare. - stapelpekare) och BP. (Baspekare. - grundläggande pekare).

Spela in Cx. Passerade framgångsrikt och lika med 8: e. En initialisering av segment inträffade Ds., Es, Ss., CS. Samma adress. Registrera Ip innehåller 0100 , vilket indikerar att instruktionerna utförs från offset 100H relativ CS (från honom och började).

Värde

Beskrivning

Ingen överflöde

Refererar upp eller höger

Avbrytningsupplösning

Positivt tecken

Icke-nollvärde

Brist på ytterligare överföring

Udda ord

0 B.16 - Kodsegmentadress.
  • Maskinkod som motsvarar denna instruktion ( B025.).
  • Faktum är att instruktionen registrerades på monteraren ( Mov A. L.,25 ).

  • 8)
    Kommandot U (Unassemble) visar maskinkoderna för monteringskommandon.


    Utföra det. Du måste informera debuggeradressen till det första och sista kommandot du vill visa (vi har 100 och 107). Instruktioner visas i det angivna området, på Assembler, i maskinkoder, såväl som adressen till varje instruktion. Utför steg-för-steg-program med kommandot T..

    Använder ett lag för andra gången T.Vi uppfyllde instruktioner Mov.. Operand Maskinkodinstruktioner - 00D8.. Operation lägger till Al till Bl.. För utgångsinförande Q.. Och igen demontera skapad skapad testpi.com..


    9)
    Kopiera BIOS (C000: 0 ... FFFF: F) Till en fil och spara filen för efterföljande analys.


    Ändra eller kopiera kod BIOS. kan störa tillverkarens upphovsrätt BIOS.. BIOS. Du kan kopiera eller ändra endast för individuella användningsändamål, men inte för distribution. Typiskt kopieringsförfarande BIOS. Använda programmet Debug. Låt oss ge nedan. Denna procedur sparar hela segmentet i 64 kb med adressen i filen. F000: 0000h förbi F0000: FFFFH.


    Slutsatser:

    • debug.exe. Det kan användas för att observera och felsöka program på assembler och maskinkoder.
    • debug.exe. Gör att du kan trasize programmet, ställa in stopppunkterna, visa minnesområdena, ange program direkt i datorns minne.
    • debug.exe. representerar nedladdningsbara program som program .Com..
    • debug.exe. Uppfattar endast siffror i ett hexadecimalt system.
    • debug.exe. Skiljer inte bokstäverna.