Awọn simulators ti awọn eto kọnputa: afaramọ ẹrọ adaṣe kikun-Syeed ati aimọ aago ati awọn itọpa

Ni apakan keji ti nkan naa nipa awọn simulators eto kọnputa, Emi yoo tẹsiwaju lati sọrọ ni fọọmu ifọrọwerọ ti o rọrun nipa awọn simulators kọnputa, eyun nipa simulation kikun-Syeed, eyiti olumulo apapọ nigbagbogbo pade, ati nipa aago nipasẹ Awoṣe aago ati awọn itọpa, eyiti o wọpọ julọ ni awọn iyika idagbasoke.

Awọn simulators ti awọn eto kọnputa: afaramọ ẹrọ adaṣe kikun-Syeed ati aimọ aago ati awọn itọpa

В apakan akọkọ Mo ti sọrọ nipa kini awọn simulators ni gbogbogbo, bakannaa nipa awọn ipele ti kikopa. Ni bayi, da lori imọ yẹn, Mo daba lati besomi diẹ jinlẹ ki o sọrọ nipa simulation kikun-Syeed, bii o ṣe le gba awọn itọpa, kini lati ṣe pẹlu wọn nigbamii, ati nipa imulation microarchitectural aago nipasẹ aago.

Simulator Syeed ni kikun, tabi “Nikan ninu aaye kii ṣe jagunjagun”

Ti o ba fẹ ṣe iwadi iṣẹ ti ẹrọ kan pato, fun apẹẹrẹ, kaadi nẹtiwọọki kan, tabi kọ famuwia tabi awakọ fun ẹrọ yii, lẹhinna iru ẹrọ le jẹ adaṣe lọtọ. Sibẹsibẹ, lilo rẹ ni ipinya lati iyoku awọn amayederun ko rọrun pupọ. Lati ṣiṣẹ awakọ ti o baamu, iwọ yoo nilo ero isise aarin, iranti, iraye si ọkọ akero data, ati bẹbẹ lọ. Ni afikun, awakọ nilo ẹrọ iṣẹ (OS) ati akopọ nẹtiwọọki lati ṣiṣẹ. Ni afikun, olupilẹṣẹ soso lọtọ ati olupin esi le nilo.

Simulator Syeed ni kikun ṣẹda agbegbe fun ṣiṣiṣẹ akopọ sọfitiwia pipe, eyiti o pẹlu ohun gbogbo lati BIOS ati bootloader si OS funrararẹ ati awọn ọna ṣiṣe oriṣiriṣi rẹ, gẹgẹbi akopọ nẹtiwọọki kanna, awakọ, ati awọn ohun elo ipele-olumulo. Lati ṣe eyi, o ṣe awọn awoṣe sọfitiwia ti ọpọlọpọ awọn ẹrọ kọnputa: ero isise ati iranti, disk, awọn ẹrọ titẹ sii / awọn ohun elo (keyboard, Asin, ifihan), bakanna bi kaadi nẹtiwọọki kanna.

Ni isalẹ ni aworan atọka ti x58 chipset lati Intel. Simulator kọmputa ti o ni kikun lori chipset yii nilo imuse ti ọpọlọpọ awọn ẹrọ ti a ṣe akojọ, pẹlu awọn ti o wa ninu IOH (Input/Output Hub) ati ICH (Input/ Output Controller Hub), eyiti ko ṣe afihan ni awọn alaye lori aworan atọka Àkọsílẹ . Botilẹjẹpe, bi iṣe ṣe fihan, ko si ọpọlọpọ awọn ẹrọ ti a ko lo nipasẹ sọfitiwia ti a yoo ṣiṣẹ. Awọn awoṣe ti iru awọn ẹrọ ko nilo lati ṣẹda.

Awọn simulators ti awọn eto kọnputa: afaramọ ẹrọ adaṣe kikun-Syeed ati aimọ aago ati awọn itọpa

Ni ọpọlọpọ igba, awọn simulators ni kikun ni imuse ni ipele itọnisọna ero isise (ISA, wo isalẹ). ti tẹlẹ article). Eyi n gba ọ laaye lati ṣẹda simulator funrararẹ ni iyara ati laini iye owo. Ipele ISA tun dara nitori pe o wa diẹ sii tabi kere si igbagbogbo, ko dabi, fun apẹẹrẹ, ipele API/ABI, eyiti o yipada nigbagbogbo. Ni afikun, imuse ni ipele itọnisọna gba ọ laaye lati ṣiṣẹ ohun ti a pe ni sọfitiwia alakomeji ti ko yipada, iyẹn ni, ṣiṣẹ koodu ti o ṣajọ tẹlẹ laisi awọn ayipada eyikeyi, ni deede bi o ti lo lori ohun elo gidi. Ni awọn ọrọ miiran, o le ṣe ẹda kan (“dasilẹ”) ti dirafu lile rẹ, pato bi aworan fun awoṣe kan ninu simulator pẹpẹ ni kikun, ati voila! - OS ati awọn eto miiran ti kojọpọ ninu simulator laisi awọn iṣe afikun eyikeyi.

Simulator išẹ

Awọn simulators ti awọn eto kọnputa: afaramọ ẹrọ adaṣe kikun-Syeed ati aimọ aago ati awọn itọpa

Gẹgẹbi a ti mẹnuba loke, ilana ti simulating gbogbo eto, iyẹn ni, gbogbo awọn ẹrọ rẹ, jẹ iṣẹ ṣiṣe ti o lọra. Ti o ba tun ṣe gbogbo eyi ni ipele alaye pupọ, fun apẹẹrẹ, microarchitectural tabi ọgbọn, lẹhinna ipaniyan yoo lọra pupọ. Ṣugbọn ipele itọnisọna jẹ yiyan ti o yẹ ati gba OS ati awọn eto laaye lati ṣiṣẹ ni awọn iyara to fun olumulo lati ṣe ajọṣepọ pẹlu wọn ni itunu.

Nibi yoo jẹ deede lati fi ọwọ kan koko-ọrọ ti iṣẹ simulator. O maa n wọn ni IPS (awọn ilana fun iṣẹju keji), diẹ sii ni deede ni MIPS (awọn miliọnu IPS), iyẹn ni, nọmba awọn ilana ero isise ti a ṣe nipasẹ simulator ni iṣẹju-aaya kan. Ni akoko kanna, iyara ti simulation tun da lori iṣẹ ṣiṣe ti eto lori eyiti kikopa funrararẹ nṣiṣẹ. Nitorinaa, o le jẹ deede diẹ sii lati sọrọ nipa “idinku” ti ẹrọ simulator ni akawe si eto atilẹba.

Awọn simulators kikun-Syeed ti o wọpọ julọ lori ọja, gẹgẹbi QEMU, VirtualBox tabi VmWare Workstation, ni iṣẹ to dara. O le ma ṣe akiyesi paapaa si olumulo pe iṣẹ n lọ ni simulator. Eyi ṣẹlẹ ọpẹ si awọn agbara agbara ipa pataki ti a ṣe imuse ni awọn ilana, awọn algoridimu itumọ alakomeji ati awọn nkan ti o nifẹ si. Eyi jẹ gbogbo koko-ọrọ fun nkan ti o yatọ, ṣugbọn ni kukuru, agbara ipa jẹ ẹya ohun elo ti awọn olutọsọna ode oni ti o fun laaye awọn simulators lati ma ṣe adaṣe awọn ilana, ṣugbọn lati firanṣẹ wọn fun ipaniyan taara si ero isise gidi kan, ti o ba jẹ pe, dajudaju, awọn faaji ti awọn labeabo ati ero isise wa ni iru. Itumọ alakomeji jẹ itumọ koodu ẹrọ alejo sinu koodu agbalejo ati ipaniyan ti o tẹle lori ero isise gidi kan. Bi abajade, kikopa naa jẹ o lọra diẹ, awọn akoko 5-10, ati nigbagbogbo paapaa nṣiṣẹ ni iyara kanna bi eto gidi. Biotilejepe eyi ni ipa nipasẹ ọpọlọpọ awọn okunfa. Fun apẹẹrẹ, ti a ba fẹ ṣe adaṣe eto kan pẹlu ọpọlọpọ awọn olutọsọna mejila, lẹhinna iyara naa yoo lọ silẹ lẹsẹkẹsẹ nipasẹ awọn igba mejila pupọ wọnyi. Ni apa keji, awọn simulators bii Simics ni awọn ẹya tuntun ṣe atilẹyin ohun elo ogun elepo pupọ ati ni imunadoko awọn ohun kohun ti a ṣe afiwe si awọn ohun kohun ti ero isise gidi kan.

Ti a ba sọrọ nipa iyara ti kikopa microarchitectural, lẹhinna o jẹ igbagbogbo awọn aṣẹ titobi pupọ, nipa awọn akoko 1000-10000 lọra ju ipaniyan lori kọnputa deede, laisi simulation. Ati awọn imuse ni ipele ti awọn eroja ọgbọn jẹ o lọra nipasẹ ọpọlọpọ awọn aṣẹ titobi. Nitorinaa, a lo FPGA bi emulator ni ipele yii, eyiti o le mu iṣẹ pọ si ni pataki.

Awọn aworan ti o wa ni isalẹ fihan igbẹkẹle isunmọ ti iyara kikopa lori alaye awoṣe.

Awọn simulators ti awọn eto kọnputa: afaramọ ẹrọ adaṣe kikun-Syeed ati aimọ aago ati awọn itọpa

Lu-nipasẹ-lu kikopa

Pelu iyara ipaniyan kekere wọn, awọn simulators microarchitectural jẹ ohun ti o wọpọ. Kikopa ti awọn bulọọki inu ti ero isise jẹ pataki lati le ṣe adaṣe deede akoko ipaniyan ti itọnisọna kọọkan. Aigbọye le dide nibi - lẹhinna, o dabi pe, kilode ti kii ṣe eto akoko ipaniyan nikan fun itọnisọna kọọkan. Ṣugbọn iru ẹrọ simulator yoo jẹ aiṣedeede pupọ, nitori akoko ipaniyan ti itọnisọna kanna le yato si ipe si ipe.

Apẹẹrẹ ti o rọrun julọ jẹ itọnisọna iwọle si iranti. Ti ipo iranti ti o beere ba wa ninu kaṣe, lẹhinna akoko ipaniyan yoo jẹ iwonba. Ti alaye yii ko ba si ninu kaṣe (“kaṣe miss”), lẹhinna eyi yoo pọ si akoko ipaniyan ti ilana naa. Nitorinaa, awoṣe kaṣe kan nilo fun kikopa deede. Sibẹsibẹ, ọrọ naa ko ni opin si awoṣe kaṣe. Awọn isise yoo ko nìkan duro fun data lati wa ni gba pada lati iranti nigbati o jẹ ko si ni awọn kaṣe. Dipo, yoo bẹrẹ ṣiṣe awọn ilana atẹle, yiyan awọn ti ko dale lori abajade kika lati iranti. Eyi ni ohun ti a pe ni “jade kuro ni aṣẹ” ipaniyan (OOO, ni pipaṣẹ aṣẹ), pataki lati dinku akoko isinisi ero isise. Apẹrẹ awọn bulọọki ero isise ti o baamu yoo ṣe iranlọwọ lati mu gbogbo eyi sinu akọọlẹ nigbati o ṣe iṣiro akoko ipaniyan ti awọn ilana. Lara awọn itọnisọna wọnyi, ti a ṣe lakoko ti abajade kika lati iranti ti n duro de, iṣẹ fo ni majemu le waye. Ti abajade ipo naa ko ba jẹ aimọ ni akoko yii, lẹhinna ero isise naa ko da ipaniyan duro, ṣugbọn ṣe “iro” kan, ṣe ẹka ti o yẹ ati tẹsiwaju lati ṣiṣẹ awọn ilana ni isunmọ lati aaye iyipada. Iru bulọọki, ti a pe ni asọtẹlẹ ẹka, gbọdọ tun ṣe imuse ni simulator microarchitectural.

Aworan ti o wa ni isalẹ fihan awọn bulọọki akọkọ ti ero isise, ko ṣe pataki lati mọ ọ, o han nikan lati ṣafihan idiju ti imuse microarchitectural.

Awọn simulators ti awọn eto kọnputa: afaramọ ẹrọ adaṣe kikun-Syeed ati aimọ aago ati awọn itọpa

Iṣiṣẹ ti gbogbo awọn bulọọki wọnyi ni ero isise gidi jẹ mimuuṣiṣẹpọ nipasẹ awọn ifihan agbara aago pataki, ati pe kanna ṣẹlẹ ni awoṣe. Iru simulator microarchitectural ni a pe ni deede ọmọ. Idi akọkọ rẹ ni lati ṣe asọtẹlẹ deede iṣẹ ṣiṣe ti ero isise ti n dagbasoke ati/tabi ṣe iṣiro akoko ipaniyan ti eto kan, fun apẹẹrẹ, ala-ilẹ kan. Ti awọn iye ba kere ju ti a beere lọ, lẹhinna o yoo jẹ pataki lati yipada awọn algoridimu ati awọn bulọọki ero isise tabi mu eto naa pọ si.

Gẹgẹbi a ti han loke, kikopa aago-nipasẹ-aago jẹ o lọra pupọ, nitorinaa o lo nikan nigbati o nkọ awọn akoko kan ti iṣẹ eto kan, nibiti o jẹ dandan lati wa iyara gidi ti ipaniyan eto ati ṣe iṣiro iṣẹ iwaju ti ẹrọ ti ẹrọ rẹ. Afọwọkọ ti wa ni afarawe.

Ni ọran yii, apere iṣẹ kan ni a lo lati ṣe adaṣe akoko ṣiṣe to ku ti eto naa. Bawo ni apapo lilo yii ṣe ṣẹlẹ ni otitọ? Ni akọkọ, a ṣe ifilọlẹ simulator iṣẹ-ṣiṣe, lori eyiti OS ati ohun gbogbo ti o ṣe pataki lati ṣiṣe eto ti o wa labẹ ikẹkọ ti kojọpọ. Lẹhinna, a ko nifẹ ninu OS funrararẹ, tabi ni awọn ipele ibẹrẹ ti ifilọlẹ eto naa, iṣeto rẹ, ati bẹbẹ lọ. Sibẹsibẹ, a tun ko le foju awọn ẹya wọnyi ki o lọ lẹsẹkẹsẹ si ṣiṣe eto naa lati aarin. Nitorinaa, gbogbo awọn igbesẹ alakoko wọnyi jẹ ṣiṣe lori simulator iṣẹ kan. Lẹhin ti eto naa ti ṣiṣẹ si akoko iwulo si wa, awọn aṣayan meji ṣee ṣe. O le rọpo awoṣe pẹlu awoṣe aago-nipasẹ-ọmọ ati tẹsiwaju ipaniyan. Ipo kikopa ti o nlo koodu imuṣiṣẹ (iyẹn ni, awọn faili eto ti a ṣajọpọ deede) ni a pe ni kikopa ipaniyan. Eyi ni aṣayan kikopa ti o wọpọ julọ. Ona miiran tun ṣee ṣe - itọpa kikopa iwakọ.

Simulation orisun itọpa

O ni awọn igbesẹ meji. Lilo simulator iṣẹ kan tabi lori eto gidi kan, akọọlẹ awọn iṣe eto ni a gba ati kọ si faili kan. Iwe akọọlẹ yii ni a npe ni itọpa. Ti o da lori ohun ti a ṣe ayẹwo, itọpa naa le pẹlu awọn ilana ṣiṣe, awọn adirẹsi iranti, awọn nọmba ibudo, ati alaye idilọwọ.

Igbesẹ ti o tẹle ni lati “ṣere” itọpa naa, nigbati ẹrọ afọwọṣe aago nipasẹ aago ka itọpa naa ati ṣiṣe gbogbo awọn ilana ti a kọ sinu rẹ. Ni ipari, a gba akoko ipaniyan ti nkan ti eto naa, ati ọpọlọpọ awọn abuda ti ilana yii, fun apẹẹrẹ, ipin ogorun awọn deba ninu kaṣe.

Ẹya pataki ti ṣiṣẹ pẹlu awọn itọpa jẹ ipinnu, iyẹn ni, nipa ṣiṣe kikopa ni ọna ti a ṣalaye loke, leralera a tun ṣe iru awọn iṣe kanna. Eyi jẹ ki o ṣee ṣe, nipa yiyipada awọn paramita awoṣe (kaṣe, ifipamọ ati awọn iwọn isinyi) ati lilo awọn algoridimu inu oriṣiriṣi tabi yiyi wọn, lati ṣe iwadi bii paramita kan pato ṣe ni ipa lori iṣẹ ṣiṣe eto ati aṣayan wo ni yoo fun awọn abajade to dara julọ. Gbogbo eyi le ṣee ṣe pẹlu awoṣe ẹrọ apẹrẹ ṣaaju ṣiṣẹda afọwọṣe ohun elo ohun elo gangan.

Idiju ti ọna yii wa ni iwulo lati kọkọ ṣiṣẹ ohun elo ati gba itọpa naa, bakanna bi iwọn nla ti faili itọpa naa. Awọn anfani pẹlu otitọ pe o to lati ṣe adaṣe nikan apakan ti ẹrọ tabi pẹpẹ ti iwulo, lakoko ti iṣeṣiro nipasẹ ipaniyan nigbagbogbo nilo awoṣe pipe.

Nitorina, ninu àpilẹkọ yii a wo awọn ẹya ara ẹrọ ti simulation kikun, ti sọrọ nipa iyara ti awọn imuse ni awọn ipele oriṣiriṣi, simulation aago ati awọn itọpa. Ninu nkan ti o tẹle Emi yoo ṣe apejuwe awọn oju iṣẹlẹ akọkọ fun lilo awọn simulators, mejeeji fun awọn idi ti ara ẹni ati lati oju-ọna idagbasoke ni awọn ile-iṣẹ nla.

orisun: www.habr.com

Fi ọrọìwòye kun