Mis on silumine: manustatud süsteemide tüübid ja tehnikad

Proovige Meie Instrumenti Probleemide Kõrvaldamiseks





Igal oma elu programmeerijal on võimalus oma koodi väljatöötamisel vigu või vigu kogeda operatsioonisüsteem või mõni muu programm. Sellistel juhtudel kasutavad arendajad silumise ja tööriistade abil vead koodist üles ning muudavad koodi või programmi veatuks. On võimalus tuvastada viga ja leida koht, kus see kogu programmis on aset leidnud. Tarkvaratehnoloogias on see oluline protsess vigade leidmiseks mis tahes uues programmis või mis tahes rakendusprotsessis. Soovitud väljundi saamiseks võib leida selliseid vigu nagu surmaga lõppevad ja loogilised vead. Näiteks GDB, Visual studio ja LLDB on erinevate opsüsteemide standardsed silurid.

Mis on silumine?

Definitsioon: Oluline tehnika nende arvu leidmiseks ja eemaldamiseks vigu või programmi vigu või defekte nimetatakse silumiseks. See on tarkvaraarenduses mitmeastmeline protsess. See hõlmab vea tuvastamist, vea allika leidmist ja probleemi parandamist, et muuta programm veatuks. Tarkvaraarenduses saab arendaja programmis leida koodivea ja selle selle protsessi abil eemaldada. Seega mängib see olulist rolli kogu tarkvaraarenduse elutsüklis.




Silumine

Silumine

Silumise tüübid

Olenevalt koodivea tüübist on tööriistakomplekti pistikprogramme erinevat tüüpi. On vaja mõista, mis toimub ja millist tüüpi tööriistu silumiseks kasutatakse. Tööriistakomplekti pistikprogrammi mis tahes üldise probleemi lahendamiseks ja tehnilise teabe pakkumiseks on kahte tüüpi silumist.



  • PHP-s saab silurikliendi lisamiseks PHP-koodi siluda, kasutades üht neist tööriistadest. Silumisprogramme nagu Xdebug ja Zendbugger kasutatakse PHPstormiga töötamiseks. Kinti kasutatakse PHP-silumise silumisvahendina.

Näiteks PHP silumise lubamiseks WordPressis muutke faili wp-config.php ja lisage vajalik kood. Sõnajuursõnaraamatus toodetakse tõrkefail (error_log.txt), mille saab luua ja kirjutada eraldusvõrgu abil. Muul juhul kasutage loomiseks ja kirjutamiseks FTP-programmi. Seega saab kõik vead, mis esi- ja tagasisides ilmnesid, sellesse tõrkefaili sisse logida.

  • Javascripti silumine kasutab brauseri siluri tööriista ja javascripti konsooli. Mis tahes javascripti tõrge võib ilmneda ja see peatab WordPressi toimingute teostamise ja toimimise. Kui javascripti konsool on avatud, kustutatakse kõik veateated. Mõned ilmunud konsoolihoiatused võivad luua tõrketeate, mis tuleks parandada.

Neid on erinevaid silumine erinevate opsüsteemide jaoks. Nemad on,

  • Linuxi ja Unixi operatsioonisüsteemide puhul kasutatakse GDB-d tavalise silurina.
  • Windows OS-i jaoks on visuaalne stuudio võimas toimetaja ja silur.
  • Mac OS-i jaoks on LLDB kõrgetasemeline silur.
  • Inteli paralleelset inspektorit kasutatakse C / C ++ toimingute mäluvigade silumise allikana.

Silumisprotsess

Vigade või vigade leidmise ja nende parandamise protsessi mis tahes rakenduses või tarkvaras nimetatakse silumiseks. Tarkvaraprogrammide või toodete veavabaks muutmiseks tuleks see protsess teha enne nende turule laskmist. Selle protsessi etapid on:


  • Vea tuvastamine - See säästab aega ja väldib vigu kasutaja saidil. Vigade tuvastamine varasemas etapis aitab minimeerida vigade arvu ja aja raiskamist.
  • Vea asukoha tuvastamine - Vea kiiremaks parandamiseks ja koodi käivitamiseks tuleks leida vea täpne asukoht.
  • Vea analüüsimine - Vea või vea tüübi mõistmiseks ja vigade arvu vähendamiseks peame vea analüüsima. Ühe vea lahendamine võib põhjustada teise vea, mis peatab rakendusprotsessi.
  • Tõestage analüüs - Kui viga on analüüsitud, peame analüüsi tõestama. Testjuhtumite kirjutamiseks testraamistiku kaudu kasutatakse testautomaatika protsessi.
  • Katke külgmised kahjustused - Vead saab kõrvaldada asjakohaste muudatuste tegemisega ja liikuda koodi või programmide järgmistesse etappidesse muude vigade parandamiseks.
  • Parandage ja kinnitage - See on viimane etapp kõigi uute vigade, tarkvara või programmi muudatuste kontrollimiseks ja rakenduse käivitamiseks.

Silumistarkvara

See tarkvara mängib tarkvaraarenduse protsessis olulist rolli. Tarkvaraarendajad kasutavad seda vigade leidmiseks, vigade analüüsimiseks ning tarkvara kvaliteedi ja jõudluse parandamiseks. Vigade kõrvaldamine käsitsi silumise abil on väga karm ja aeganõudev. Murdepunktide loomisega peame mõistma programmi, see töötab ja vigade põhjuseid.

Niipea kui kood on kirjutatud, kombineeritakse kood uue programmitoote moodustamiseks teiste programmeerimise etappidega. Suure programmi (sisaldab tuhandeid koodiridu) silumiseks kasutatakse mitut strateegiat, nagu üksustestid, koodide ülevaatused ja paaride programmeerimine. Tava siluri tööriist või integreeritud arenduskeskkonna (IDE) silumisrežiim aitab määrata koodi logimise ja tõrketeateid.

Tarkvara silumise etapid on

  • Viga tuvastatakse süsteemis ja luuakse defektiaruanne. See aruanne aitab arendajal viga analüüsida ja lahendusi leida.
  • Silumisriista kasutatakse vea põhjuse teadmiseks ja selle järkjärgulise täitmise protsessi analüüsimiseks.
  • Pärast vea tuvastamist peame probleemide lahendamiseks tegema asjakohased muudatused.
  • Tarkvara testitakse uuesti, et veenduda, et viga ei jää ja kontrollib silumisprotsessi käigus kõiki tarkvara uusi vigu.
  • Selles tarkvaraprotsessis kasutatud jadapõhine meetod tegi arendajale vigade leidmise ja koodijärjestuste abil parandamise lihtsamaks ja mugavamaks.

Silumisvõtted

Silumisprotsessi hõlpsaks ja tõhusaks teostamiseks on vaja järgida mõnda tehnikat. Kõige sagedamini kasutatavad silumisstrateegiad on

  • Silumine toore jõuga
  • Sissejuhatusstrateegia
  • Mahaarvamise strateegia
  • Tagasi mineku strateegia ja
  • Silumine testimise abil.

Toorjõu abil silumine on kõige sagedamini kasutatav tehnika. Selleks võetakse programmi mälumaht, mis sisaldab suurt hulka vaheväärtustega teavet, ja neid analüüsitakse, kuid teabe analüüsimine ja vigade leidmine viib aja ja vaeva raiskamiseni.

Induktsioonistrateegia sisaldab asjakohaste andmete asukohta, andmete korrastamist, hüpoteesi väljatöötamist (esitab võimalikke vigade põhjuseid) ja tõestavat hüpoteesi.

Mahaarvamise strateegia hõlmab võimalike vigade põhjuste või hüpoteesi tuvastamist Võimalike põhjuste kõrvaldamine teabe abil Hüpoteesi täpsustamine (ükshaaval analüüsimine)

Tagasilöögi strateegiat kasutatakse vigade leidmiseks väikestes programmides. Vea ilmnemisel jälgitakse programmi väärtuste hindamise käigus ühe sammu võrra tagasi, et leida vea või vea põhjus.

Silumine testimise kaudu on seos silumisega induktsiooni abil ja silumisega deduktsioonitehnikas. Silumisel kasutatavad testjuhtumid erinevad testimisprotsessis kasutatud testjuhtumitest.

Sisseehitatud süsteemide silumisvõtted

Need meetodid vähendavad vigade arvu ja suurendavad koodi kvaliteeti ja funktsionaalsust. Manustatud süsteemide silumine sõltub füüsilise mälu aadressidest ja virtuaalsest mälust.

Manustatud süsteemis on 6 silumisvõtet.

  • Lihtsustage keerukaid andmeid
  • Jagage ja vallutage
  • Aeglustage protsessi
  • Muutke korraga ainult ühte muutujat
  • Off-line mudelite loomine
  • alustada tuntud-heast riigist.

Erinevatel juhtudel kasutatakse erinevaid silumisvõtteid. Ühe või mitme lähenemise kombinatsioon võib põhjustada vigu. See protsess hõlmab järgmist

  • Kordage viga või probleem
  • Selgitage viga kasutaja sisendi abil
  • Vea ilmumisel proovige hankida kõik programmi muutuja väärtused ja olek
  • Analüüsige viga ja leidke vea põhjus
  • Parandage viga ja kontrollige kõiki uute vigade põhjuseid.

Silumisriistad

Tarkvaratööriista või programmi, mida kasutatakse teiste programmide testimiseks ja silumiseks, nimetatakse siluriks või silumisvahendiks. See aitab tuvastada koodi vigu tarkvaraarenduse eri etappides. Need tööriistad analüüsivad testisõitu ja leiavad käivitamata koodiread. Teiste silumisvahendite simulaatorid võimaldavad kasutajal teada saada operatsioonisüsteemi või mis tahes muu arvutiseadme kuvamist ja käitumist. Enamik avatud lähtekoodiga tööriistu ja skriptikeeli ei käivita IDE-d ja need vajavad käsitsi töötlemist.

Enamasti kasutatakse Silumisriistad on GDB, DDD ja Eclipse.

  • GDB tööriist: Seda tüüpi tööriistu kasutatakse Unixi programmeerimisel. GDB on eelinstallitud kõikidesse Linuxi süsteemidesse, kui ei, siis on vaja alla laadida GCC kompilaatori pakett.
  • DDD tööriist: DDD tähendab Data Display Debuggerit, mida kasutatakse graafilise kasutajaliidese (GUI) käitamiseks Unixi süsteemides.
  • Varjutus: IDE tööriist on redaktori, koontööriista, siluri ja muude arendustööriistade integreerimine. IDE on kõige populaarsem Eclipse'i tööriist. See töötab DDD, GDB ja muude tööriistadega võrreldes tõhusamalt.

Silumisriistade loend on toodud allpool.

  • AppPuncheri silurit kasutatakse rikaste Interneti-rakenduste silumiseks
  • AQtime silur
  • CA / EZ TEST on CICSi interaktiivne testimise / silumise tarkvarapakett
  • CharmDebug on Charm ++ silur
  • CodeView silur
  • DBG on PHP silur ja profiilide koostaja
  • dbx silur
  • Hajutatud silumisvahend (Allinea DDT)
  • DDTLite - joondage Visual Studio 2008 DDTLite
  • DEBUG on DOS-i ja Microsoft Windowsi sisseehitatud silur
  • MySQL-i silur
  • Ooperi Dragonfly
  • Dünaamiline silumisvõte (DDT)
  • Eclipse'i jaoks kasutatakse manustatud süsteemi silumispistikut
  • FusionDebug
  • Silur OpenGL, OpenGL ES ning OpenCL silur ja profiil. Windowsi, Linuxi, Mac OS X-i ja iPhone'i jaoks
  • GNU silur (GDB), GNU Binutils
  • Inteli silur (IDB)
  • Süsteemi kasutatakse vooluringi silurina Manustatud süsteemid
  • Interaktiivne lahtivõtja (IDA Pro)
  • Java platvormi siluri arhitektuuri allikas Java silur
  • LLDB
  • MacidBug
  • IBM Rational Purify
  • TRACE32 on sisseehitatud süsteemide skeemide silur
  • VB Watch Debugger - Visual Basic 6.0 silur
  • Microsofti Visual Studio'i silur
  • WinDbg
  • Xdebug - PHP silur ja profileerija

Seega on see kõik silumisprotsessi, selle tööriistade ja tehnikate kohta manustatud süsteemide tarkvaraarendusprotsessides. Selle eesmärk on leida ja kõrvaldada mis tahes koodi vead. Siin on teile küsimus, millised on silumise puudused?