{"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\/de\/blog\/administrirovanie\/simulyatory-kompyuternyh-sistem-vsem-znakomyj-polnoplatformennyj-simulyator-i-nikomu-neizvestnye-potaktovyj-i-trassy","title":{"rendered":"Computersystem-Simulatoren: der allgemein bekannte plattform\u00fcbergreifende Simulator und weniger bekannte Takt- und Streckensimulatoren","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Im zweiten Teil meines Artikels \u00fcber Computersystem-Simulatoren werde ich weiterhin in einfacher und verst\u00e4ndlicher Form \u00fcber Computersimulatoren sprechen, insbesondere \u00fcber die plattform\u00fcbergreifende Simulation, mit der die meisten Nutzer h\u00e4ufig in Kontakt kommen, sowie \u00fcber Taktmodelle und Strecken, die in Entwicklerkreisen verbreiteter sind. <\/p>\n<p><img decoding=\"async\" alt=\"Computersystem-Simulatoren: der allgemein bekannte plattform\u00fcbergreifende Simulator und weniger bekannte Takt- und Streckensimulatoren\" 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 \/>\nIn <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/auriga\/blog\/504086\/\">dem ersten Teil<\/a><\/noindex> Ich habe erkl\u00e4rt, was Simulatoren im Allgemeinen sind, sowie die Ebenen der Modellierung. Auf dieser Grundlage lade ich Sie ein, etwas tiefer einzutauchen und \u00fcber plattform\u00fcbergreifende Simulationen zu sprechen, dar\u00fcber, wie man Strecken erstellt, was man danach damit macht, sowie \u00fcber die taktische Mikroarchitektur-Emulation. <\/p>\n<h3>Der plattform\u00fcbergreifende Simulator (full platform simulator) oder \u201eEin Krieger ist keine Armee\u201c <\/h3>\n<p>\nWenn Sie die Funktionsweise eines bestimmten Ger\u00e4ts, wie einer Netzwerkkarte, untersuchen oder eine Firmware oder einen Treiber daf\u00fcr schreiben m\u00fcssen, kann dieses Ger\u00e4t separat modelliert werden. Es ist jedoch nicht sehr praktisch, es von der restlichen Infrastruktur zu trennen. Um den entsprechenden Treiber zu starten, werden ein Prozessor, Arbeitsspeicher, Zugriff auf den Datenbus und weitere Komponenten ben\u00f6tigt. Dar\u00fcber hinaus erfordert der Treiber ein Betriebssystem (OS) und einen Netzwerkstack. Zus\u00e4tzlich k\u00f6nnte ein separater Paketgenerator und ein Server zum Empfang von Antworten erforderlich sein. <\/p>\n<p>Ein vollplattformf\u00e4higer Simulator erstellt eine Umgebung, um einen vollst\u00e4ndigen Software-Stack auszuf\u00fchren, der alles von BIOS und Bootloader bis hin zum Betriebssystem selbst und verschiedenen seiner Subsysteme, wie dem Netzwerkstack, Treibern und Anwendungen auf Benutzerebene umfasst. Dazu implementiert er Softwaremodelle der meisten Computerger\u00e4te, darunter Prozessor und Arbeitsspeicher, Festplatte, Eingabeger\u00e4te (Tastatur, Maus, Bildschirm) sowie die besagte Netzwerkkarte. <\/p>\n<p>Im Folgenden sehen Sie ein Blockdiagramm des x58-Chipsatzes von Intel. In einem vollumf\u00e4nglichen Computersimulator, der auf diesem Chipsatz basiert, ist die Implementierung der meisten aufgef\u00fchrten Ger\u00e4te erforderlich, einschlie\u00dflich derjenigen, die sich im IOH (Input\/Output Hub) und ICH (Input\/Output Controller Hub) befinden und nicht detailliert im Blockdiagramm dargestellt sind. Allerdings zeigt die Praxis, dass es nicht wenige Ger\u00e4te gibt, die von der Software, die wir ausf\u00fchren m\u00f6chten, nicht genutzt werden. Modelle solcher Ger\u00e4te m\u00fcssen daher nicht erstellt werden. <\/p>\n<p><img decoding=\"async\" alt=\"Computersystem-Simulatoren: der allgemein bekannte plattform\u00fcbergreifende Simulator und weniger bekannte Takt- und Streckensimulatoren\" src=\"\/wp-content\/uploads\/2020\/07\/3f62e2e7792ce06026c767146fed9912.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nVollumf\u00e4ngliche Simulatoren werden meist auf der Ebene der Prozessoranweisungen (ISA, siehe <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/auriga\/blog\/504086\/\">den vorherigen Artikel<\/a><\/noindex>). Dies erm\u00f6glicht es, relativ schnell und kosteng\u00fcnstig den Simulator selbst zu erstellen. Das ISA-Niveau ist zudem vorteilhaft, da es mehr oder weniger konstant bleibt, im Gegensatz zum API\/ABI-Niveau, das h\u00e4ufiger \u00e4ndert. Dar\u00fcber hinaus erlaubt die Implementierung auf Maschinenbefehlsebene das Ausf\u00fchren sogenannter unmodifizierter Bin\u00e4rprogramme, also das Ausf\u00fchren bereits kompilierten Codes ohne \u00c4nderungen, genau so wie er auf echter Hardware verwendet wird. Mit anderen Worten, man kann ein Abbild (\u201eDump\u201c) der Festplatte erstellen, es als Image f\u00fcr das Modell in einem vollwertigen Simulator angeben und \u2013 voil\u00e0! \u2013 das Betriebssystem und andere Programme werden im Simulator ohne zus\u00e4tzliche Ma\u00dfnahmen geladen. <\/p>\n<h3>Leistung von Simulatoren <\/h3>\n<p><img decoding=\"async\" alt=\"Computersystem-Simulatoren: der allgemein bekannte plattform\u00fcbergreifende Simulator und weniger bekannte Takt- und Streckensimulatoren\" src=\"\/wp-content\/uploads\/2020\/07\/870ef9d5e311044059ace05571d607ba.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nWie bereits oben erw\u00e4hnt, ist der gesamte Simulationsprozess des Systems, also aller seiner Ger\u00e4te, ein relativ langsames Unterfangen. Wenn man dies sogar auf einer sehr detaillierten Ebene umsetzen m\u00f6chte, zum Beispiel auf Mikroarchitektur- oder logischer Ebene, wird die Ausf\u00fchrung extrem langsam. Das Instruktionsniveau hingegen ist eine geeignete Wahl und erm\u00f6glicht es dem Betriebssystem und den Programmen, mit Geschwindigkeiten zu arbeiten, die f\u00fcr eine komfortable Interaktion mit dem Benutzer ausreichend sind. <\/p>\n<p>Hier ist es passend, das Thema der Leistungsf\u00e4higkeit von Simulatoren zu behandeln. Diese wird normalerweise in IPS (instructions per second) gemessen, genauer gesagt in MIPS (millions IPS), also der Anzahl der Anweisungen, die der Prozessor vom Simulator in einer Sekunde ausf\u00fchrt. Gleichzeitig h\u00e4ngt die Simulationsgeschwindigkeit jedoch auch von der Leistungsf\u00e4higkeit des Systems ab, auf dem die Simulationssoftware l\u00e4uft. Daher w\u00e4re es vielleicht korrekter, von einer \"Verlangsamung\" (slowdown) des Simulators im Vergleich zum Originalsystem zu sprechen. <\/p>\n<p>Die am h\u00e4ufigsten auf dem Markt verf\u00fcgbaren vollst\u00e4ndigen Plattform-Simulatoren, wie QEMU, VirtualBox oder VmWare Workstation, bieten eine solide Leistung. Oft bemerkt der Nutzer vielleicht nicht einmal, dass die Arbeit in einem Simulator erfolgt. Dies ist m\u00f6glich dank einer speziellen Virtualisierungsfunktion, die in modernen Prozessoren implementiert ist, sowie Algorithmen zur bin\u00e4ren \u00dcbersetzung und weiteren interessanten Aspekten. Das ist alles Stoff f\u00fcr einen eigenen Artikel, aber um es kurz zu machen: Virtualisierung ist eine Hardware-F\u00e4higkeit moderner Prozessoren, die es den Simulatoren erm\u00f6glicht, Anweisungen nicht zu simulieren, sondern sie direkt an den echten Prozessor zur Ausf\u00fchrung zu \u00fcbergeben, vorausgesetzt, die Architekturen des Simulators und des Prozessors stimmen \u00fcberein. Die bin\u00e4re \u00dcbersetzung ist die Umwandlung des Gast-Maschinencodes in den Host-Code, gefolgt von dessen Ausf\u00fchrung auf dem echten Prozessor. Dadurch ist die Simulation nur wenig langsamer, um den Faktor 5-10, und oft l\u00e4uft sie sogar mit der gleichen Geschwindigkeit wie das reale System. Dies h\u00e4ngt jedoch von vielen Faktoren ab. Wenn wir beispielsweise ein System mit mehreren Dutzend Prozessoren simulieren m\u00f6chten, sinkt die Geschwindigkeit sofort um das Mehrfache. Andererseits unterst\u00fctzen Simulatoren wie Simics in den neuesten Versionen mehrprozessorsysteme und parallelisieren die simulierten Kerne effizient auf die Kerne des echten Prozessors. <\/p>\n<p>Wenn es um die Geschwindigkeit der Mikroarchitektur-Simulation geht, ist diese in der Regel einige Gr\u00f6\u00dfenordnungen, etwa 1000\u201310000 Mal, langsamer als die Ausf\u00fchrung auf einem normalen Computer ohne Simulation. Die Implementierungen auf der Ebene logischer Elemente sind noch um mehrere Gr\u00f6\u00dfenordnungen langsamer. Daher werden FPGAs als Emulatoren auf dieser Ebene verwendet, was die Leistung erheblich steigert. <\/p>\n<p>Das folgende Diagramm zeigt die ungef\u00e4hre Abh\u00e4ngigkeit der Simulationsgeschwindigkeit vom Detaillierungsgrad des Modells. <\/p>\n<p><img decoding=\"async\" alt=\"Computersystem-Simulatoren: der allgemein bekannte plattform\u00fcbergreifende Simulator und weniger bekannte Takt- und Streckensimulatoren\" src=\"\/wp-content\/uploads\/2020\/07\/72189338a6a0c78554118f180a297813.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<\/p>\n<h3>Taktsimulation <\/h3>\n<p>\nTrotz der geringen Ausf\u00fchrungsgeschwindigkeit sind Mikroarchitektur-Simulatoren recht verbreitet. Das Modelling der internen Blocks eines Prozessors ist notwendig, um die Ausf\u00fchrungszeit jeder Anweisung pr\u00e4zise zu simulieren. Hier kann Verwirrung auftreten \u2013 warum sollte man nicht einfach die Ausf\u00fchrungszeit jeder Anweisung programmieren? Ein solcher Simulator w\u00e4re jedoch sehr ungenau, da die Ausf\u00fchrungszeit derselben Anweisung von Aufruf zu Aufruf unterschiedlich sein kann. <\/p>\n<p>Ein einfaches Beispiel \u2013 die Anweisung zum Zugriff auf den Speicher. Wenn die angeforderte Speicherzelle im Cache verf\u00fcgbar ist, ist die Ausf\u00fchrungszeit minimal. Liegt die Information nicht im Cache vor (ein \"Cache-Miss\"), erh\u00f6ht sich die Ausf\u00fchrungszeit erheblich. Daher ist f\u00fcr eine genaue Simulation ein Cache-Modell erforderlich. Doch das Cache-Modell allein reicht nicht aus. Der Prozessor wartet nicht einfach auf die Beschaffung der Daten aus dem Speicher, wenn diese nicht im Cache vorhanden sind. Stattdessen beginnt er mit der Ausf\u00fchrung der folgenden Anweisungen und w\u00e4hlt dabei solche aus, die von dem Ergebnis des Speicherzugriffs unabh\u00e4ngig sind. Dies nennt man \"Out of Order Execution\" (OOO) und ist notwendig, um die Leerlaufzeit des Prozessors zu minimieren. Bei der Berechnung der Ausf\u00fchrungszeiten muss auch die Simulation der entsprechenden Prozessorbl\u00f6cke ber\u00fccksichtigt werden. Unter diesen Anweisungen, die ausgef\u00fchrt werden, w\u00e4hrend auf das Ergebnis des Speicherzugriffs gewartet wird, kann sich ein bedingter Sprung befinden. Wenn das Ergebnis der Bedingung in diesem Moment unbekannt ist, stoppt der Prozessor die Ausf\u00fchrung nicht, sondern trifft eine \"Vermutung\", f\u00fchrt den entsprechenden Sprung aus und f\u00e4hrt mit dem Vorab-Ausz\u00e4hlen von Anweisungen ab der Sprungstelle fort. Ein solcher Block, der als Branch Predictor bezeichnet wird, muss ebenfalls im Mikroarchitektursimulator implementiert werden. <\/p>\n<p>Das Bild unten zeigt die Hauptbl\u00f6cke eines Prozessors. Es ist nicht notwendig, diese zu kennen, es dient nur dazu, die Komplexit\u00e4t der mikroarchitektonischen Realisierung zu verdeutlichen. <\/p>\n<p><img decoding=\"async\" alt=\"Computersystem-Simulatoren: der allgemein bekannte plattform\u00fcbergreifende Simulator und weniger bekannte Takt- und Streckensimulatoren\" src=\"\/wp-content\/uploads\/2020\/07\/1248d47017346153a233d4c895635569.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nDie Arbeit all dieser Bl\u00f6cke in einem realen Prozessor wird durch spezielle Taktsignale synchronisiert, \u00e4hnlich geschieht es auch im Modell. Einen solchen mikroarchitektonischen Simulator nennt man taktsynchron (cycle accurate). Der Hauptzweck besteht darin, die Leistung des entstehenden Prozessors genau vorherzusagen und\/oder die Ausf\u00fchrungszeit eines bestimmten Programms, wie zum Beispiel eines Benchmarks, zu berechnen. Sollten die Werte unter den erforderlichen liegen, m\u00fcssen die Algorithmen und Bl\u00f6cke des Prozessors \u00fcberarbeitet oder das Programm optimiert werden. <\/p>\n<p>Wie oben gezeigt, ist die taktsynchronisierte Simulation sehr langsam, weshalb sie nur bei der Untersuchung bestimmter Aspekte der Programmentwicklung eingesetzt wird, wenn die tats\u00e4chliche Ausf\u00fchrungsgeschwindigkeit und die zuk\u00fcnftige Leistung des zu modellierenden Prototyps ermittelt werden m\u00fcssen. <\/p>\n<p>F\u00fcr die Simulation der restlichen Programmlaufzeit wird ein funktionaler Simulator eingesetzt. Wie erfolgt eine solche kombinierte Nutzung in der Praxis? Zuerst wird der funktionale Simulator gestartet, auf dem das Betriebssystem und alles Notwendige zum Starten des untersuchten Programms geladen wird. Uns interessiert dabei weder das Betriebssystem selbst noch die Anfangsphasen des Programmstarts, die Konfiguration usw. Allerdings k\u00f6nnen wir diese Teile nicht einfach \u00fcberspringen und direkt zur Ausf\u00fchrung des Programms in der Mitte \u00fcbergehen. Daher werden all diese vorbereitenden Schritte im funktionalen Simulator durchlaufen. Nachdem das Programm bis zu dem f\u00fcr uns interessanten Punkt ausgef\u00fchrt wurde, gibt es zwei M\u00f6glichkeiten. Man kann das Modell auf eine taktorientierte Simulation umstellen und die Ausf\u00fchrung fortsetzen. Der Simulationsmodus, bei dem der ausf\u00fchrbare Code (d.h. regul\u00e4re kompilierte Programmdateien) verwendet wird, wird als ausf\u00fchrungsgesteuerte Simulation (execution driven simulation) bezeichnet. Dies ist die gebr\u00e4uchlichste Art der Simulation. Es gibt auch einen anderen Ansatz \u2013 die Simulation basierend auf Traces (trace driven simulation). <\/p>\n<h3>Simulation basierend auf Traces <\/h3>\n<p>\nDer Prozess besteht aus zwei Schritten. Zun\u00e4chst wird mithilfe eines funktionalen Simulators oder auf einem echten System ein Protokoll der Aktionen des Programms erstellt und in einer Datei gespeichert. Dieses Protokoll wird als Trace bezeichnet. Je nach dem, was untersucht wird, kann der Trace ausf\u00fchrbare Anweisungen, Speicheradressen, Portnummern und Interruptinformationen enthalten. <\/p>\n<p>Der n\u00e4chste Schritt besteht darin, den Trace \"abzuspielen\", wobei der taktsynchrone Simulator den Trace liest und alle darin aufgezeichneten Anweisungen ausf\u00fchrt. Am Ende erhalten wir die Ausf\u00fchrungszeit dieses Programmabschnitts sowie verschiedene Kennzahlen zu diesem Prozess, wie beispielsweise die Cache-Trefferquote. <\/p>\n<p>Ein wesentliches Merkmal der Arbeit mit Traces ist die Determiniertheit: Wenn wir die Simulation auf die beschriebene Weise starten, reproduzieren wir immer wieder die gleiche Abfolge von Aktionen. Dadurch k\u00f6nnen wir, indem wir die Modellparameter (Gr\u00f6\u00dfe des Caches, der Buffers und der Warteschlangen) \u00e4ndern und verschiedene interne Algorithmen oder deren Einstellungen verwenden, untersuchen, wie sich jeweils bestimmte Parameter auf die Systemleistung auswirken und welche Variante die besten Ergebnisse liefert. All dies kann mit dem Prototypenmodell durchgef\u00fchrt werden, bevor ein echtes Hardware-Prototyp erstellt wird. <\/p>\n<p>Die Komplexit\u00e4t dieses Ansatzes liegt in der Notwendigkeit, die Anwendung vorher zu testen und den Trace zu erfassen, sowie in der riesigen Dateigr\u00f6\u00dfe des Traces. Ein Vorteil ist, dass es gen\u00fcgt, nur den interessierenden Teil des Ger\u00e4ts oder der Plattform zu modellieren, w\u00e4hrend die Ausf\u00fchrungssimulation in der Regel ein vollst\u00e4ndiges Modell erfordert. <\/p>\n<p>In diesem Artikel haben wir die Merkmale der vollst\u00e4ndigen Plattform-Simulation betrachtet, \u00fcber die Implementierungsgeschwindigkeit auf verschiedenen Ebenen, taktile Simulationen und Strecken gesprochen. Im n\u00e4chsten Artikel werde ich die Hauptanwendungsf\u00e4lle von Simulatoren beschreiben, sowohl f\u00fcr private Zwecke als auch aus der Sicht der Entwicklung in gro\u00dfen Unternehmen.<br \/>\n<br \/>Quelle: <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 4.9.10 - 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 \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\" \/>\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\/de\/blog\/administrirovanie\/simulyatory-kompyuternyh-sistem-vsem-znakomyj-polnoplatformennyj-simulyator-i-nikomu-neizvestnye-potaktovyj-i-trassy\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 4.9.10\" \/>\n\t\t<meta property=\"og:locale\" content=\"de_DE\" \/>\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 \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\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/de\/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\udd47Computersimulatoren: der bekannte vollst\u00e4ndige Plattform-Simulator und die nur wenigen bekannten taktilen Modelle und Strecken | ProHoster","description":"Im zweiten Teil des Artikels \u00fcber Computersimulationen werde ich weiterhin auf einfache und informative Weise \u00fcber Computersimulatoren berichten, insbesondere \u00fcber die vollst\u00e4ndige Plattform-Simulation, die der durchschnittliche Benutzer am h\u00e4ufigsten antrifft, sowie \u00fcber taktile Modelle und Strecken, die in Entwicklerkreisen verbreiteter sind. Im ersten Teil habe ich erkl\u00e4rt, was Simulatoren im Allgemeinen sind und \u00fcber die Ebenen gesprochen.","canonical_url":"https:\/\/prohoster.info\/de\/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":"de_DE","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 \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","og:url":"https:\/\/prohoster.info\/de\/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"},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/posts\/87136","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/comments?post=87136"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/posts\/87136\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/media\/87137"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/media?parent=87136"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/categories?post=87136"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/tags?post=87136"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}