{"id":87136,"date":"2020-07-04T01:42:40","date_gmt":"2020-07-03T23:42:40","guid":{"rendered":"https:\/\/prohoster.info\/blog\/administrirovanie\/simulyatory-kompyuternyh-sistem-vsem-znakomyj-polnoplatformennyj-simulyator-i-nikomu-neizvestnye-potaktovyj-i-trassy"},"modified":"2020-07-04T01:42:40","modified_gmt":"2020-07-03T23:42:40","slug":"simulyatory-kompyuternyh-sistem-vsem-znakomyj-polnoplatformennyj-simulyator-i-nikomu-neizvestnye-potaktovyj-i-trassy","status":"publish","type":"post","link":"https:\/\/prohoster.info\/hu\/blog\/administrirovanie\/simulyatory-kompyuternyh-sistem-vsem-znakomyj-polnoplatformennyj-simulyator-i-nikomu-neizvestnye-potaktovyj-i-trassy","title":{"rendered":"Sz\u00e1m\u00edt\u00f3g\u00e9pes rendszerek szimul\u00e1torai: a mindenki \u00e1ltal ismert t\u00f6bbplatformos szimul\u00e1tor \u00e9s a senki \u00e1ltal nem ismert utas\u00edt\u00e1s alap\u00fa \u00e9s p\u00e1lyaszimul\u00e1tor.","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>A cikk m\u00e1sodik r\u00e9sz\u00e9ben a sz\u00e1m\u00edt\u00f3g\u00e9pes rendszerek szimul\u00e1torair\u00f3l sz\u00f3l\u00f3 egyszer\u0171 t\u00e1j\u00e9koztat\u00f3 form\u00e1ban folytatom a besz\u00e9lget\u00e9st a sz\u00e1m\u00edt\u00f3g\u00e9pes szimul\u00e1torokr\u00f3l, nevezetesen a teljes platform szimul\u00e1ci\u00f3r\u00f3l, amellyel a legt\u00f6bbsz\u00f6r az \u00e1tlagos felhaszn\u00e1l\u00f3 tal\u00e1lkozik, valamint a ciklikus modellekr\u0151l \u00e9s a p\u00e1ly\u00e1kr\u00f3l, amelyek ink\u00e1bb a fejleszt\u0151k k\u00f6r\u00e9ben elterjedtek. <\/p>\n<p><img decoding=\"async\" alt=\"Sz\u00e1m\u00edt\u00f3g\u00e9pes rendszerek szimul\u00e1torai: a mindenki \u00e1ltal ismert t\u00f6bbplatformos szimul\u00e1tor \u00e9s a senki \u00e1ltal nem ismert utas\u00edt\u00e1s alap\u00fa \u00e9s p\u00e1lyaszimul\u00e1tor.\" src=\"\/wp-content\/uploads\/2020\/07\/dbc7767cd563ce01b6145ac2e872d4c0.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><br \/>\nA <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/auriga\/blog\/504086\/\">els\u0151 r\u00e9szben<\/a><\/noindex> Elmondtam, hogy mik is azok a szimul\u00e1torok, \u00e9s a modellez\u00e9s szintjeir\u0151l is besz\u00e9ltem. Most, a fentiek alapj\u00e1n, azt javaslom, mer\u00fclj\u00fcnk kicsit m\u00e9lyebbre, \u00e9s besz\u00e9lj\u00fcnk a teljes platform szimul\u00e1ci\u00f3r\u00f3l, arr\u00f3l, hogyan k\u00e9sz\u00edts\u00fck el a p\u00e1ly\u00e1kat, mit tegy\u00fcnk vel\u00fck k\u00e9s\u0151bb, \u00e9s a ciklikus mikroarchitekt\u00fara emul\u00e1ci\u00f3j\u00e1r\u00f3l. <\/p>\n<h3>A teljes platform szimul\u00e1tor (full platform simulator), vagyis a \"Egyed\u00fcl a mez\u0151n - nem harcos\" <\/h3>\n<p>\nHa egy konkr\u00e9t eszk\u00f6z, p\u00e9ld\u00e1ul egy h\u00e1l\u00f3zati k\u00e1rtya m\u0171k\u00f6d\u00e9s\u00e9t kell megvizsg\u00e1lni, vagy ehhez az eszk\u00f6zh\u00f6z firmware-t vagy drivert kell \u00edrni, akkor ez az eszk\u00f6z k\u00fcl\u00f6nb\u00f6z\u0151 form\u00e1ban modellezhet\u0151. Ugyanakkor k\u00e9nyelmetlen ezt a t\u00f6bbi infrastrukt\u00far\u00e1t\u00f3l elszigetelten haszn\u00e1lni. A megfelel\u0151 driver ind\u00edt\u00e1s\u00e1hoz k\u00f6zponti procesorra, mem\u00f3ri\u00e1ra, adat\u00e1tviteli buszhoz \u00e9s egyebekre van sz\u00fcks\u00e9g. Ezen k\u00edv\u00fcl a driver m\u0171k\u00f6d\u00e9s\u00e9hez sz\u00fcks\u00e9ges az oper\u00e1ci\u00f3s rendszer (OS) \u00e9s a h\u00e1l\u00f3zati verem. Ezen k\u00edv\u00fcl sz\u00fcks\u00e9g lehet egy k\u00fcl\u00f6n csomaggener\u00e1l\u00f3ra \u00e9s egy v\u00e1laszfogad\u00f3 szerverre is. <\/p>\n<p>A teljes platform szimul\u00e1tor egy k\u00f6rnyezetet teremt a teljes szoftveres verem futtat\u00e1s\u00e1hoz, amely mag\u00e1ban foglal mindent a BIOS-t\u00f3l \u00e9s a bet\u00f6lt\u0151programt\u00f3l kezdve eg\u00e9szen az oper\u00e1ci\u00f3s rendszeren (OS) \u00e9s annak k\u00fcl\u00f6nb\u00f6z\u0151 alrendszerein, p\u00e9ld\u00e1ul a h\u00e1l\u00f3zati verem, driverek \u00e9s felhaszn\u00e1l\u00f3i szint\u0171 alkalmaz\u00e1sokig. Ehhez a sz\u00e1m\u00edt\u00f3g\u00e9p legt\u00f6bb eszk\u00f6z\u00e9nek szoftveres modelljeit val\u00f3s\u00edtott\u00e1k meg benne: processzor \u00e9s mem\u00f3ria, lemez, bemeneti-kimeneti eszk\u00f6z\u00f6k (billenty\u0171zet, eg\u00e9r, kijelz\u0151), valamint a h\u00e1l\u00f3zati k\u00e1rtya. <\/p>\n<p>Az al\u00e1bbiakban az Intel x58 chipk\u00e9szlet\u00e9nek blokkdiagramja l\u00e1that\u00f3. A teljes platformot szimul\u00e1l\u00f3 sz\u00e1m\u00edt\u00f3g\u00e9phez ezen a chipk\u00e9szleten a felsorolt eszk\u00f6z\u00f6k t\u00f6bbs\u00e9g\u00e9t, bele\u00e9rtve az IOH (Input\/Output Hub) \u00e9s ICH (Input\/Output Controller Hub) belsej\u00e9ben tal\u00e1lhat\u00f3akat is, meg kell val\u00f3s\u00edtani, amelyeket a blokkdiagramon nem r\u00e9szleteztek. B\u00e1r a gyakorlat azt mutatja, hogy nem t\u00fal sok olyan eszk\u00f6z l\u00e9tezik, amelyet az \u00e1ltalunk futtatni k\u00edv\u00e1nt szoftver nem haszn\u00e1l. Az ilyen eszk\u00f6z\u00f6k modelljeit nem sz\u00fcks\u00e9ges l\u00e9trehozni. <\/p>\n<p><img decoding=\"async\" alt=\"Sz\u00e1m\u00edt\u00f3g\u00e9pes rendszerek szimul\u00e1torai: a mindenki \u00e1ltal ismert t\u00f6bbplatformos szimul\u00e1tor \u00e9s a senki \u00e1ltal nem ismert utas\u00edt\u00e1s alap\u00fa \u00e9s p\u00e1lyaszimul\u00e1tor.\" src=\"\/wp-content\/uploads\/2020\/07\/3f62e2e7792ce06026c767146fed9912.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nA leggyakrabban a teljes platformos szimul\u00e1torok a processzor utas\u00edt\u00e1sk\u00e9szlet\u00e9nek (ISA) szintj\u00e9n val\u00f3sulnak meg, l\u00e1sd: <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/auriga\/blog\/504086\/\">az el\u0151z\u0151 cikket<\/a><\/noindex>). Ez viszonylag gyorsan \u00e9s olcs\u00f3n lehet\u0151v\u00e9 teszi a szimul\u00e1tor l\u00e9trehoz\u00e1s\u00e1t. Az ISA szintje az\u00e9rt is j\u00f3, mert t\u00f6bb\u00e9-kev\u00e9sb\u00e9 \u00e1lland\u00f3, ellent\u00e9tben p\u00e9ld\u00e1ul az API\/ABI szinttel, amely gyakrabban v\u00e1ltozik. R\u00e1ad\u00e1sul az utas\u00edt\u00e1sok szintj\u00e9n val\u00f3 megval\u00f3s\u00edt\u00e1s lehet\u0151v\u00e9 teszi az \u00fagynevezett m\u00f3dos\u00edtatlan bin\u00e1ris szoftverek futtat\u00e1s\u00e1t, vagyis a m\u00e1r leford\u00edtott k\u00f3d m\u00f3dos\u00edt\u00e1s n\u00e9lk\u00fcl t\u00f6rt\u00e9n\u0151 futtat\u00e1s\u00e1t, pontosan \u00fagy, ahogyan az a val\u00f3di hardveren haszn\u00e1latban van. M\u00e1s szavakkal, k\u00e9sz\u00edthet\u00fcnk egy m\u00e1solatot (\u201edumps\u201d) a merevlemezr\u0151l, megadhatjuk azt lemezk\u00e9nt a teljes platformos szimul\u00e1tor modellj\u00e9nek, \u00e9s \u2013 voil\u00e1! \u2013 az oper\u00e1ci\u00f3s rendszer \u00e9s a t\u00f6bbi program azonnal bet\u00f6lt\u0151dik a szimul\u00e1torba mindenf\u00e9le tov\u00e1bbi l\u00e9p\u00e9s n\u00e9lk\u00fcl. <\/p>\n<h3>A szimul\u00e1torok teljes\u00edtm\u00e9nye <\/h3>\n<p><img decoding=\"async\" alt=\"Sz\u00e1m\u00edt\u00f3g\u00e9pes rendszerek szimul\u00e1torai: a mindenki \u00e1ltal ismert t\u00f6bbplatformos szimul\u00e1tor \u00e9s a senki \u00e1ltal nem ismert utas\u00edt\u00e1s alap\u00fa \u00e9s p\u00e1lyaszimul\u00e1tor.\" src=\"\/wp-content\/uploads\/2020\/07\/870ef9d5e311044059ace05571d607ba.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nAhogy kor\u00e1bban eml\u00edt\u00e9sre ker\u00fclt, a rendszer eg\u00e9sz\u00e9nek, vagyis minden eszk\u00f6z\u00e9nek szimul\u00e1l\u00e1sa meglehet\u0151sen lass\u00fa folyamat. Ha mindezt nagyon r\u00e9szletes szinten, p\u00e9ld\u00e1ul mikroarchitekt\u00far\u00e1s vagy logikai szinten val\u00f3s\u00edtjuk meg, akkor a v\u00e9grehajt\u00e1s rendk\u00edv\u00fcl lass\u00fav\u00e1 v\u00e1lik. Ezzel szemben az utas\u00edt\u00e1sok szintje megfelel\u0151 v\u00e1laszt\u00e1s, \u00e9s lehet\u0151v\u00e9 teszi, hogy az oper\u00e1ci\u00f3s rendszer \u00e9s a programok olyan sebess\u00e9ggel fussanak, ami elegend\u0151 a felhaszn\u00e1l\u00f3 sz\u00e1m\u00e1ra a k\u00e9nyelmes interakci\u00f3hoz. <\/p>\n<p>Itt \u00e9rdemes \u00e9rinteni a szimul\u00e1torok teljes\u00edtm\u00e9ny\u00e9nek t\u00e9m\u00e1j\u00e1t. \u00c1ltal\u00e1ban IPS (utas\u00edt\u00e1s m\u00e1sodpercenk\u00e9nt) m\u00e9rt\u00e9kegys\u00e9gben m\u00e9rik, pontosabban MIPS (milli\u00f3 IPS), vagyis a szimul\u00e1tor \u00e1ltal egy m\u00e1sodperc alatt v\u00e9grehajtott processzorutas\u00edt\u00e1sok sz\u00e1m\u00e1t. Ugyanakkor a szimul\u00e1ci\u00f3 sebess\u00e9ge a rendszert\u0151l is f\u00fcgg, amelyen a szimul\u00e1ci\u00f3 fut. Ez\u00e9rt tal\u00e1n helyesebb a szimul\u00e1tor \u201elassul\u00e1s\u00e1r\u00f3l\u201d (slowdown) besz\u00e9lni az eredeti rendszerhez k\u00e9pest. <\/p>\n<p>A piacon a legelterjedtebb, teljes k\u00f6r\u0171 platformszimul\u00e1torok, mint a QEMU, a VirtualBox vagy a VmWare Workstation, megfelel\u0151 teljes\u00edtm\u00e9nnyel rendelkeznek. A felhaszn\u00e1l\u00f3 sz\u00e1m\u00e1ra \u00e9szrev\u00e9tlen lehet, hogy a munka szimul\u00e1torban zajlik. Ez annak k\u00f6sz\u00f6nhet\u0151, hogy a processzorokban megval\u00f3sult a virtualiz\u00e1ci\u00f3s lehet\u0151s\u00e9g, a bin\u00e1ris ford\u00edt\u00e1s algoritmusai \u00e9s m\u00e1s \u00e9rdekes dolgok. Ezek mind k\u00fcl\u00f6n cikk t\u00e9m\u00e1j\u00e1t k\u00e9pezik, de ha nagyon r\u00f6viden \u00f6sszefoglaljuk, a virtualiz\u00e1ci\u00f3 \u2013 ez a modern processzorok hardveres k\u00e9pess\u00e9ge, amely lehet\u0151v\u00e9 teszi a szimul\u00e1torok sz\u00e1m\u00e1ra, hogy ne szimul\u00e1lj\u00e1k az utas\u00edt\u00e1sokat, hanem k\u00f6zvetlen\u00fcl a val\u00f3di processzorhoz juttass\u00e1k azokat v\u00e9grehajt\u00e1sra, ha term\u00e9szetesen a szimul\u00e1tor \u00e9s a processzor architekt\u00far\u00e1ja hasonl\u00f3. A bin\u00e1ris ford\u00edt\u00e1s \u2013 ez a vend\u00e9g g\u00e9pi k\u00f3d \u00e1tkonvert\u00e1l\u00e1sa gazdag\u00e9pi k\u00f3dra \u00e9s annak v\u00e9grehajt\u00e1sa a val\u00f3di processzoron. Ennek eredm\u00e9nyek\u00e9nt a szimul\u00e1ci\u00f3 csak minim\u00e1lisan lassabb, 5-10-szer, \u00e9s gyakran egyenesen azonos sebess\u00e9ggel m\u0171k\u00f6dik, mint a val\u00f3di rendszer. B\u00e1r erre sok t\u00e9nyez\u0151 hat\u00e1ssal van. P\u00e9ld\u00e1ul, ha t\u00f6bb tucat processzorral rendelkez\u0151 rendszert szeretn\u00e9nk szimul\u00e1lni, akkor a sebess\u00e9g azonnal cs\u00f6kkenni fog ezekkel a p\u00e1r tucat darabbal. M\u00e1sr\u00e9szt a Simics t\u00edpus\u00fa szimul\u00e1torok leg\u00fajabb verzi\u00f3i t\u00e1mogatj\u00e1k a t\u00f6bbprocesszoros gazdag\u00e9p \u201ehardvert\u201d, \u00e9s hat\u00e9konyan p\u00e1rhuzamos\u00edtj\u00e1k a szimul\u00e1lt magokat a val\u00f3di processzor magjaira. <\/p>\n<p>Ha a mikroarchitekt\u00far\u00e1k szimul\u00e1l\u00e1si sebess\u00e9g\u00e9r\u0151l besz\u00e9l\u00fcnk, akkor ez \u00e1ltal\u00e1ban n\u00e9h\u00e1ny nagys\u00e1grenddel, k\u00f6r\u00fclbel\u00fcl 1000-10000-szer lassabb, mint a szok\u00e1sos sz\u00e1m\u00edt\u00f3g\u00e9pen v\u00e9gzett v\u00e9grehajt\u00e1s szimul\u00e1ci\u00f3 n\u00e9lk\u00fcl. A logikai elemek szintj\u00e9n t\u00f6rt\u00e9n\u0151 megval\u00f3s\u00edt\u00e1s m\u00e9g tov\u00e1bbi nagys\u00e1grenddel lassabb. Ez\u00e9rt ezen a szinten FPGA-t haszn\u00e1lnak emul\u00e1tork\u00e9nt, ami jelent\u0151sen n\u00f6veli a teljes\u00edtm\u00e9nyt. <\/p>\n<p>Az al\u00e1bbi grafikon p\u00e9ld\u00e1ul a szimul\u00e1l\u00e1si sebess\u00e9g \u00e9s a modell r\u00e9szletess\u00e9g k\u00f6z\u00f6tti \u00f6sszef\u00fcgg\u00e9st mutatja. <\/p>\n<p><img decoding=\"async\" alt=\"Sz\u00e1m\u00edt\u00f3g\u00e9pes rendszerek szimul\u00e1torai: a mindenki \u00e1ltal ismert t\u00f6bbplatformos szimul\u00e1tor \u00e9s a senki \u00e1ltal nem ismert utas\u00edt\u00e1s alap\u00fa \u00e9s p\u00e1lyaszimul\u00e1tor.\" src=\"\/wp-content\/uploads\/2020\/07\/72189338a6a0c78554118f180a297813.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<\/p>\n<h3>\u00dctemezett szimul\u00e1ci\u00f3 <\/h3>\n<p>\nB\u00e1r a v\u00e9grehajt\u00e1si sebess\u00e9g nem t\u00fal magas, a mikroarchitekt\u00far\u00e1s szimul\u00e1torok meglehet\u0151sen elterjedtek. A processzor bels\u0151 blokkjainak modellez\u00e9se sz\u00fcks\u00e9ges ahhoz, hogy pontosan szimul\u00e1lni lehessen az egyes utas\u00edt\u00e1sok v\u00e9grehajt\u00e1si idej\u00e9t. Itt f\u00e9lre\u00e9rt\u00e9s ad\u00f3dhat \u2013 hiszen \u00fagy t\u0171nik, mi\u00e9rt ne programozn\u00e1nk egyszer\u0171en az egyes utas\u00edt\u00e1sok v\u00e9grehajt\u00e1si idej\u00e9t? De egy ilyen szimul\u00e1tor nagyon pontatlanul m\u0171k\u00f6dne, mivel ugyanazon utas\u00edt\u00e1s v\u00e9grehajt\u00e1si ideje elt\u00e9rhet minden egyes h\u00edv\u00e1s sor\u00e1n. <\/p>\n<p>A legegyszer\u0171bb p\u00e9lda a mem\u00f3riahozz\u00e1f\u00e9r\u00e9si utas\u00edt\u00e1s. Ha a k\u00e9rt mem\u00f3riacella el\u00e9rhet\u0151 a gyors\u00edt\u00f3t\u00e1rban, a v\u00e9grehajt\u00e1si id\u0151 minim\u00e1lis lesz. Ha a gyors\u00edt\u00f3t\u00e1rban nincs ilyen inform\u00e1ci\u00f3 (\u201egyors\u00edt\u00f3t\u00e1r hiba\u201d, cache miss), az jelent\u0151sen megn\u00f6veli az utas\u00edt\u00e1s v\u00e9grehajt\u00e1si idej\u00e9t. \u00cdgy egy pontos szimul\u00e1ci\u00f3hoz sz\u00fcks\u00e9ges a gyors\u00edt\u00f3t\u00e1r modellje. Azonban a gyors\u00edt\u00f3t\u00e1r modellje nem az egyetlen. A processzor nem fog egyszer\u0171en v\u00e1rni az adatok megszerz\u00e9s\u00e9re a mem\u00f3ri\u00e1b\u00f3l, ha azok nem tal\u00e1lhat\u00f3k a gyors\u00edt\u00f3t\u00e1rban. Ehelyett elkezdi v\u00e9grehajtani a k\u00f6vetkez\u0151 utas\u00edt\u00e1sokat, olyanokat v\u00e1lasztva, amelyek nem f\u00fcggenek a mem\u00f3riaolvas\u00e1s eredm\u00e9ny\u00e9t\u0151l. Ez az \u00fagynevezett \u201erendellenes v\u00e9grehajt\u00e1s\u201d (OOO, out of order execution), amely sz\u00fcks\u00e9ges a processzor \u00e1ll\u00e1sidej\u00e9nek minimaliz\u00e1l\u00e1s\u00e1hoz. Mindezek figyelembev\u00e9tel\u00e9vel az utas\u00edt\u00e1sok v\u00e9grehajt\u00e1si idej\u00e9nek kisz\u00e1m\u00edt\u00e1s\u00e1ban seg\u00edthet a megfelel\u0151 processzorblokkok modellez\u00e9se. Azok k\u00f6z\u00f6tt az utas\u00edt\u00e1sok k\u00f6z\u00f6tt, amelyeket v\u00e9grehajtanak, am\u00edg v\u00e1rj\u00e1k a mem\u00f3riaolvas\u00e1s eredm\u00e9ny\u00e9t, lehet egy felt\u00e9teles ugr\u00e1si m\u0171velet is. Ha a felt\u00e9tel v\u00e9grehajt\u00e1s\u00e1nak eredm\u00e9nye jelenleg nem ismert, akkor a processzor ism\u00e9t nem \u00e1ll\u00edtja meg a v\u00e9grehajt\u00e1st, hanem \u201emegtippel\u201d, v\u00e9grehajtja a megfelel\u0151 ugr\u00e1st \u00e9s folytatja az utas\u00edt\u00e1sok megel\u0151z\u0151 v\u00e9grehajt\u00e1s\u00e1t az ugr\u00e1s hely\u00e9r\u0151l. Ezt a blokkot, amelyet branch predictor-nak h\u00edvnak, szint\u00e9n meg kell val\u00f3s\u00edtani a mikroarchitekt\u00far\u00e1s szimul\u00e1torban. <\/p>\n<p>Az al\u00e1bbi k\u00e9p a processzor f\u0151 blokkjait mutatja, amelynek ismerete nem k\u00f6telez\u0151, csup\u00e1n az\u00e9rt van a k\u00e9p, hogy bemutassa a mikroarchitekt\u00far\u00e1s megval\u00f3s\u00edt\u00e1s bonyolults\u00e1g\u00e1t. <\/p>\n<p><img decoding=\"async\" alt=\"Sz\u00e1m\u00edt\u00f3g\u00e9pes rendszerek szimul\u00e1torai: a mindenki \u00e1ltal ismert t\u00f6bbplatformos szimul\u00e1tor \u00e9s a senki \u00e1ltal nem ismert utas\u00edt\u00e1s alap\u00fa \u00e9s p\u00e1lyaszimul\u00e1tor.\" src=\"\/wp-content\/uploads\/2020\/07\/1248d47017346153a233d4c895635569.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nEzeknek a blokkoknak a m\u0171k\u00f6d\u00e9se a val\u00f3di processzorban speci\u00e1lis \u00f3rajelekkel van szinkroniz\u00e1lva, hasonl\u00f3an t\u00f6rt\u00e9nik ez a modell eset\u00e9ben is. Az ilyen mikroarchitekt\u00far\u00e1j\u00fa szimul\u00e1tort ciklush\u0171 (cycle accurate) szimul\u00e1tornak nevezik. F\u0151 c\u00e9lja a tervezett processzor teljes\u00edtm\u00e9ny\u00e9nek pontos el\u0151rejelz\u00e9se \u00e9s\/vagy egy adott program, p\u00e9ld\u00e1ul egy benchmark fut\u00e1si idej\u00e9nek kisz\u00e1m\u00edt\u00e1sa. Ha az \u00e9rt\u00e9kek az elv\u00e1rtak alatt vannak, akkor a processzor algoritmusait \u00e9s blokkjait sz\u00fcks\u00e9ges finom\u00edtani, vagy a programot optimaliz\u00e1lni. <\/p>\n<p>Ahogy fentebb eml\u00edtett\u00fck, a ciklush\u0171 szimul\u00e1ci\u00f3 nagyon lass\u00fa, ez\u00e9rt csak bizonyos programmunkaf\u00e1zisok vizsg\u00e1lat\u00e1ra haszn\u00e1lj\u00e1k, ahol meg kell ismerni a programok val\u00f3di fut\u00e1si sebess\u00e9g\u00e9t \u00e9s \u00e9rt\u00e9kelni a modellezett eszk\u00f6z j\u00f6v\u0151beli teljes\u00edtm\u00e9ny\u00e9t. <\/p>\n<p>Ek\u00f6zben a program t\u00f6bbi m\u0171k\u00f6d\u00e9si ideje a funkcion\u00e1lis szimul\u00e1torral van szimul\u00e1lva. Hogyan t\u00f6rt\u00e9nik ez a kombin\u00e1lt haszn\u00e1lat a val\u00f3s\u00e1gban? El\u0151sz\u00f6r a funkcion\u00e1lis szimul\u00e1tor elind\u00edt\u00e1sra ker\u00fcl, amelyen bet\u00f6lt\u0151dik az oper\u00e1ci\u00f3s rendszer \u00e9s minden sz\u00fcks\u00e9ges a vizsg\u00e1lt program futtat\u00e1s\u00e1hoz. Minket nem \u00e9rdekel sem az oper\u00e1ci\u00f3s rendszer, sem a program ind\u00edt\u00e1s\u00e1nak kezdeti szakasza, a konfigur\u00e1l\u00e1s \u00e9s m\u00e1s hasonl\u00f3 folyamatok. Azonban ezeket a r\u00e9szeket sem hagyhatjuk ki, \u00e9s nem ugorhatunk egyb\u0151l a program v\u00e9grehajt\u00e1s\u00e1nak k\u00f6zep\u00e9be sem. Ez\u00e9rt az \u00f6sszes el\u0151zetes l\u00e9p\u00e9st a funkcion\u00e1lis szimul\u00e1torban futtatj\u00e1k. Miut\u00e1n a program el\u00e9rte a minket \u00e9rdekl\u0151 pillanatot, k\u00e9t lehet\u0151s\u00e9g\u00fcnk van. A modellt ciklush\u0171re cser\u00e9lhetj\u00fck, \u00e9s folytathatjuk a v\u00e9grehajt\u00e1st. Az a szimul\u00e1ci\u00f3s m\u00f3d, amely a v\u00e9grehajthat\u00f3 k\u00f3dot (azaz a szok\u00e1sos leford\u00edtott programf\u00e1jlokat) haszn\u00e1lja, a v\u00e9grehajt\u00e1svez\u00e9relt szimul\u00e1ci\u00f3nak (execution driven simulation) nevezz\u00fck. Ez a legelterjedtebb szimul\u00e1ci\u00f3s vari\u00e1ns. Lehets\u00e9ges egy m\u00e1sik megk\u00f6zel\u00edt\u00e9s is \u2013 a nyomvonal alap\u00fa szimul\u00e1ci\u00f3 (trace driven simulation). <\/p>\n<h3>Nyomvonal alap\u00fa szimul\u00e1ci\u00f3 <\/h3>\n<p>\nK\u00e9t l\u00e9p\u00e9sb\u0151l \u00e1ll. A funkcion\u00e1lis szimul\u00e1tor vagy a val\u00f3di rendszer seg\u00edts\u00e9g\u00e9vel a program cselekedeteinek napl\u00f3z\u00e1sa \u00e9s f\u00e1jlba t\u00f6rt\u00e9n\u0151 r\u00f6gz\u00edt\u00e9se t\u00f6rt\u00e9nik. Ezt a napl\u00f3t nyomvonalnak (trace) nevezik. Att\u00f3l f\u00fcgg\u0151en, hogy mit vizsg\u00e1lunk, a nyomvonal tartalmazhat v\u00e9grehajthat\u00f3 utas\u00edt\u00e1sokat, mem\u00f3ria c\u00edmeket, portsz\u00e1mokat, megszak\u00edt\u00e1si inform\u00e1ci\u00f3kat. <\/p>\n<p>A k\u00f6vetkez\u0151 l\u00e9p\u00e9s a \"nyomvonal\" lej\u00e1tsz\u00e1sa, amikor a ciklusszimul\u00e1tor olvassa a nyomvonalat \u00e9s v\u00e9grehajtja az abban r\u00f6gz\u00edtett utas\u00edt\u00e1sokat. A v\u00e9g\u00e9n megkapjuk az adott programr\u00e9sz fut\u00e1si idej\u00e9t, valamint k\u00fcl\u00f6nb\u00f6z\u0151 jellemz\u0151ket, p\u00e9ld\u00e1ul a cache-el\u00e9 \u00e9rkez\u00e9s sz\u00e1zal\u00e9k\u00e1t. <\/p>\n<p>A nyomvonalakkal val\u00f3 munka fontos jellemz\u0151je a determin\u00e1lts\u00e1g, azaz, ha a fenti m\u00f3don ind\u00edtjuk a szimul\u00e1ci\u00f3t, ism\u00e9telten ugyanazt a cselekv\u00e9ssorozatot reproduk\u00e1ljuk. Ez lehet\u0151v\u00e9 teszi, hogy a modell param\u00e9tereinek (cache, pufferek \u00e9s sorok m\u00e9retei) megv\u00e1ltoztat\u00e1s\u00e1val, valamint k\u00fcl\u00f6nb\u00f6z\u0151 bels\u0151 algoritmusok alkalmaz\u00e1s\u00e1val vagy azok konfigur\u00e1l\u00e1s\u00e1val kutassuk, hogy egy-egy param\u00e9ter hogyan befoly\u00e1solja a rendszer teljes\u00edtm\u00e9ny\u00e9t \u00e9s melyik v\u00e1ltozat adja a legjobb eredm\u00e9nyeket. Mindezt elv\u00e9gezhetj\u00fck a k\u00e9sz\u00fcl\u00e9k protot\u00edpus\u00e1nak modellez\u00e9s\u00e9vel a val\u00f3s hardver protot\u00edpus\u00e1nak l\u00e9trehoz\u00e1sa el\u0151tt. <\/p>\n<p>A megk\u00f6zel\u00edt\u00e9s bonyolults\u00e1ga abban rejlik, hogy el\u0151zetesen le kell futtatni az alkalmaz\u00e1st \u00e9s \u00f6sszegy\u0171jteni a nyomvonalat, valamint a nyomvonal f\u00e1jlja hatalmas m\u00e9ret\u0171. Az el\u0151ny\u00f6k k\u00f6z\u00e9 tartozik, hogy elegend\u0151 modellezni csup\u00e1n a k\u00e9sz\u00fcl\u00e9k vagy platform \u00e9rdekes r\u00e9sz\u00e9t, m\u00edg a t\u00e9nyleges v\u00e9grehajt\u00e1s szimul\u00e1ci\u00f3ja \u00e1ltal\u00e1ban teljes modellt ig\u00e9nyel. <\/p>\n<p>Teh\u00e1t ebben a cikkben a teljes platform szimul\u00e1ci\u00f3 jellemz\u0151it t\u00e1rgyaltuk, besz\u00e9lt\u00fcnk a v\u00e9grehajt\u00e1s sebess\u00e9g\u00e9r\u0151l k\u00fcl\u00f6nb\u00f6z\u0151 szinteken, a ciklusos szimul\u00e1ci\u00f3r\u00f3l \u00e9s a nyomvonalakr\u00f3l. A k\u00f6vetkez\u0151 cikkben azokat a f\u0151bb szcen\u00e1ri\u00f3kat \u00edrom le, amelyek a szimul\u00e1torok haszn\u00e1lat\u00e1ra vonatkoznak, ak\u00e1r szem\u00e9lyes c\u00e9lokra, ak\u00e1r nagyv\u00e1llalati fejleszt\u00e9si szempontb\u00f3l.<br \/>\n<br \/>Forr\u00e1s: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/auriga\/blog\/509294\/\">habr.com<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u0412\u043e \u0432\u0442\u043e\u0440\u043e\u0439 \u0447\u0430\u0441\u0442\u0438 \u0441\u0442\u0430\u0442\u044c\u0438 \u043e \u0441\u0438\u043c\u0443\u043b\u044f\u0442\u043e\u0440\u0430\u0445 \u043a\u043e\u043c\u043f\u044c\u044e\u0442\u0435\u0440\u043d\u044b\u0445 \u0441\u0438\u0441\u0442\u0435\u043c \u043f\u0440\u043e\u0434\u043e\u043b\u0436\u0443 \u0440\u0430\u0441\u0441\u043a\u0430\u0437\u044b\u0432\u0430\u0442\u044c \u0432 \u043f\u0440\u043e\u0441\u0442\u043e\u0439 \u043e\u0437\u043d\u0430\u043a\u043e\u043c\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0439 \u0444\u043e\u0440\u043c\u0435 \u043e \u043a\u043e\u043c\u043f\u044c\u044e\u0442\u0435\u0440\u043d\u044b\u0445 \u0441\u0438\u043c\u0443\u043b\u044f\u0442\u043e\u0440\u0430\u0445, \u0430 \u0438\u043c\u0435\u043d\u043d\u043e \u043e \u043f\u043e\u043b\u043d\u043e\u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u0435\u043d\u043d\u043e\u0439 \u0441\u0438\u043c\u0443\u043b\u044f\u0446\u0438\u0438, \u0441 \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u0447\u0430\u0449\u0435 \u0432\u0441\u0435\u0433\u043e \u0441\u0442\u0430\u043b\u043a\u0438\u0432\u0430\u0435\u0442\u0441\u044f \u043e\u0431\u044b\u0447\u043d\u044b\u0439 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c, \u0430 \u0442\u0430\u043a\u0436\u0435 \u043e \u043f\u043e\u0442\u0430\u043a\u0442\u043e\u0432\u043e\u0439 \u043c\u043e\u0434\u0435\u043b\u0438 \u0438 \u0442\u0440\u0430\u0441\u0441\u0430\u0445, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0431\u043e\u043b\u044c\u0448\u0435 \u0440\u0430\u0441\u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0435\u043d\u044b \u0432 \u043a\u0440\u0443\u0433\u0430\u0445 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u043e\u0432. \u0412 \u043f\u0435\u0440\u0432\u043e\u0439 \u0447\u0430\u0441\u0442\u0438 \u044f \u0440\u0430\u0441\u0441\u043a\u0430\u0437\u0430\u043b, \u0447\u0442\u043e \u0442\u0430\u043a\u043e\u0435 \u0441\u0438\u043c\u0443\u043b\u044f\u0442\u043e\u0440\u044b \u0432\u043e\u043e\u0431\u0449\u0435, \u0430 \u0442\u0430\u043a\u0436\u0435 \u043e\u0431 \u0443\u0440\u043e\u0432\u043d\u044f\u0445 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":87137,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-87136","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.3 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u0412\u043e \u0432\u0442\u043e\u0440\u043e\u0439 \u0447\u0430\u0441\u0442\u0438 \u0441\u0442\u0430\u0442\u044c\u0438 \u043e \u0441\u0438\u043c\u0443\u043b\u044f\u0442\u043e\u0440\u0430\u0445 \u043a\u043e\u043c\u043f\u044c\u044e\u0442\u0435\u0440\u043d\u044b\u0445 \u0441\u0438\u0441\u0442\u0435\u043c \u043f\u0440\u043e\u0434\u043e\u043b\u0436\u0443 \u0440\u0430\u0441\u0441\u043a\u0430\u0437\u044b\u0432\u0430\u0442\u044c \u0432 \u043f\u0440\u043e\u0441\u0442\u043e\u0439 \u043e\u0437\u043d\u0430\u043a\u043e\u043c\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0439 \u0444\u043e\u0440\u043c\u0435 \u043e \u043a\u043e\u043c\u043f\u044c\u044e\u0442\u0435\u0440\u043d\u044b\u0445 \u0441\u0438\u043c\u0443\u043b\u044f\u0442\u043e\u0440\u0430\u0445, \u0430 \u0438\u043c\u0435\u043d\u043d\u043e \u043e \u043f\u043e\u043b\u043d\u043e\u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u0435\u043d\u043d\u043e\u0439 \u0441\u0438\u043c\u0443\u043b\u044f\u0446\u0438\u0438, \u0441 \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u0447\u0430\u0449\u0435 \u0432\u0441\u0435\u0433\u043e \u0441\u0442\u0430\u043b\u043a\u0438\u0432\u0430\u0435\u0442\u0441\u044f.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/hu\/blog\/administrirovanie\/simulyatory-kompyuternyh-sistem-vsem-znakomyj-polnoplatformennyj-simulyator-i-nikomu-neizvestnye-potaktovyj-i-trassy\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.3\" \/>\n\t\t<meta property=\"og:locale\" content=\"hu_HU\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u0421\u0438\u043c\u0443\u043b\u044f\u0442\u043e\u0440\u044b \u043a\u043e\u043c\u043f\u044c\u044e\u0442\u0435\u0440\u043d\u044b\u0445 \u0441\u0438\u0441\u0442\u0435\u043c: \u0432\u0441\u0435\u043c \u0437\u043d\u0430\u043a\u043e\u043c\u044b\u0439 \u043f\u043e\u043b\u043d\u043e\u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u0435\u043d\u043d\u044b\u0439 \u0441\u0438\u043c\u0443\u043b\u044f\u0442\u043e\u0440 \u0438 \u043d\u0438\u043a\u043e\u043c\u0443 \u043d\u0435\u0438\u0437\u0432\u0435\u0441\u0442\u043d\u044b\u0435 \u043f\u043e\u0442\u0430\u043a\u0442\u043e\u0432\u044b\u0439 \u0438 \u0442\u0440\u0430\u0441\u0441\u044b | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u0412\u043e \u0432\u0442\u043e\u0440\u043e\u0439 \u0447\u0430\u0441\u0442\u0438 \u0441\u0442\u0430\u0442\u044c\u0438 \u043e \u0441\u0438\u043c\u0443\u043b\u044f\u0442\u043e\u0440\u0430\u0445 \u043a\u043e\u043c\u043f\u044c\u044e\u0442\u0435\u0440\u043d\u044b\u0445 \u0441\u0438\u0441\u0442\u0435\u043c \u043f\u0440\u043e\u0434\u043e\u043b\u0436\u0443 \u0440\u0430\u0441\u0441\u043a\u0430\u0437\u044b\u0432\u0430\u0442\u044c \u0432 \u043f\u0440\u043e\u0441\u0442\u043e\u0439 \u043e\u0437\u043d\u0430\u043a\u043e\u043c\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0439 \u0444\u043e\u0440\u043c\u0435 \u043e \u043a\u043e\u043c\u043f\u044c\u044e\u0442\u0435\u0440\u043d\u044b\u0445 \u0441\u0438\u043c\u0443\u043b\u044f\u0442\u043e\u0440\u0430\u0445, \u0430 \u0438\u043c\u0435\u043d\u043d\u043e \u043e \u043f\u043e\u043b\u043d\u043e\u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u0435\u043d\u043d\u043e\u0439 \u0441\u0438\u043c\u0443\u043b\u044f\u0446\u0438\u0438, \u0441 \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u0447\u0430\u0449\u0435 \u0432\u0441\u0435\u0433\u043e \u0441\u0442\u0430\u043b\u043a\u0438\u0432\u0430\u0435\u0442\u0441\u044f.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/hu\/blog\/administrirovanie\/simulyatory-kompyuternyh-sistem-vsem-znakomyj-polnoplatformennyj-simulyator-i-nikomu-neizvestnye-potaktovyj-i-trassy\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2020-07-03T23:42:40+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2020-07-03T23:42:40+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Sz\u00e1m\u00edt\u00f3g\u00e9pes rendszerek szimul\u00e1torai: az ismer\u0151s teljes platform szimul\u00e1tor \u00e9s a senki \u00e1ltal nem ismert ciklusos szimul\u00e1tor \u00e9s nyomvonalak | ProHoster","description":"A sz\u00e1m\u00edt\u00f3g\u00e9pes rendszerek szimul\u00e1torair\u00f3l sz\u00f3l\u00f3 cikk m\u00e1sodik r\u00e9sz\u00e9ben egyszer\u0171 t\u00e1j\u00e9koztat\u00f3 jelleggel folytatom a sz\u00e1m\u00edt\u00f3g\u00e9pes szimul\u00e1torokkal kapcsolatos besz\u00e1mol\u00f3t, k\u00fcl\u00f6n\u00f6s figyelmet ford\u00edtva a teljes platform szimul\u00e1ci\u00f3ra, amellyel gyakran tal\u00e1lkozni lehet.","canonical_url":"https:\/\/prohoster.info\/hu\/blog\/administrirovanie\/simulyatory-kompyuternyh-sistem-vsem-znakomyj-polnoplatformennyj-simulyator-i-nikomu-neizvestnye-potaktovyj-i-trassy","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"hu_HU","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u0421\u0438\u043c\u0443\u043b\u044f\u0442\u043e\u0440\u044b \u043a\u043e\u043c\u043f\u044c\u044e\u0442\u0435\u0440\u043d\u044b\u0445 \u0441\u0438\u0441\u0442\u0435\u043c: \u0432\u0441\u0435\u043c \u0437\u043d\u0430\u043a\u043e\u043c\u044b\u0439 \u043f\u043e\u043b\u043d\u043e\u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u0435\u043d\u043d\u044b\u0439 \u0441\u0438\u043c\u0443\u043b\u044f\u0442\u043e\u0440 \u0438 \u043d\u0438\u043a\u043e\u043c\u0443 \u043d\u0435\u0438\u0437\u0432\u0435\u0441\u0442\u043d\u044b\u0435 \u043f\u043e\u0442\u0430\u043a\u0442\u043e\u0432\u044b\u0439 \u0438 \u0442\u0440\u0430\u0441\u0441\u044b | ProHoster","og:description":"\u0412\u043e \u0432\u0442\u043e\u0440\u043e\u0439 \u0447\u0430\u0441\u0442\u0438 \u0441\u0442\u0430\u0442\u044c\u0438 \u043e \u0441\u0438\u043c\u0443\u043b\u044f\u0442\u043e\u0440\u0430\u0445 \u043a\u043e\u043c\u043f\u044c\u044e\u0442\u0435\u0440\u043d\u044b\u0445 \u0441\u0438\u0441\u0442\u0435\u043c \u043f\u0440\u043e\u0434\u043e\u043b\u0436\u0443 \u0440\u0430\u0441\u0441\u043a\u0430\u0437\u044b\u0432\u0430\u0442\u044c \u0432 \u043f\u0440\u043e\u0441\u0442\u043e\u0439 \u043e\u0437\u043d\u0430\u043a\u043e\u043c\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0439 \u0444\u043e\u0440\u043c\u0435 \u043e \u043a\u043e\u043c\u043f\u044c\u044e\u0442\u0435\u0440\u043d\u044b\u0445 \u0441\u0438\u043c\u0443\u043b\u044f\u0442\u043e\u0440\u0430\u0445, \u0430 \u0438\u043c\u0435\u043d\u043d\u043e \u043e \u043f\u043e\u043b\u043d\u043e\u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u0435\u043d\u043d\u043e\u0439 \u0441\u0438\u043c\u0443\u043b\u044f\u0446\u0438\u0438, \u0441 \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u0447\u0430\u0449\u0435 \u0432\u0441\u0435\u0433\u043e \u0441\u0442\u0430\u043b\u043a\u0438\u0432\u0430\u0435\u0442\u0441\u044f.","og:url":"https:\/\/prohoster.info\/hu\/blog\/administrirovanie\/simulyatory-kompyuternyh-sistem-vsem-znakomyj-polnoplatformennyj-simulyator-i-nikomu-neizvestnye-potaktovyj-i-trassy","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2020-07-03T23:42:40+00:00","article:modified_time":"2020-07-03T23:42:40+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"87136","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":null,"breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-02-28 13:57:25","updated":"2022-09-27 17:57:48","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/posts\/87136","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/comments?post=87136"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/posts\/87136\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/media\/87137"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/media?parent=87136"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/categories?post=87136"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/tags?post=87136"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}