<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[Auf 64bit Betriebsystem ein &amp;quot;32bit&amp;quot; Programm ausführen]]></title><description><![CDATA[<p>Hallo</p>
<p>Sorry wusste jetzt nicht in welches Forum das am Besten passte.<br />
Ist es möglich auf einem 64Bit Betriebsystem(z.b Windows7) ein Programm das für 32bit kompliert wurde auszufüren ?<br />
Wenn ja warum funktioniert das ? Und wo kann ich mehr darüber Erfahren ?</p>
<p>Grüße<br />
Martin</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/260796/auf-64bit-betriebsystem-ein-quot-32bit-quot-programm-ausführen</link><generator>RSS for Node</generator><lastBuildDate>Mon, 07 Sep 2026 20:24:19 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/260796.rss" rel="self" type="application/rss+xml"/><pubDate>Tue, 09 Feb 2010 12:31:40 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Auf 64bit Betriebsystem ein &amp;quot;32bit&amp;quot; Programm ausführen on Tue, 09 Feb 2010 12:31:40 GMT]]></title><description><![CDATA[<p>Hallo</p>
<p>Sorry wusste jetzt nicht in welches Forum das am Besten passte.<br />
Ist es möglich auf einem 64Bit Betriebsystem(z.b Windows7) ein Programm das für 32bit kompliert wurde auszufüren ?<br />
Wenn ja warum funktioniert das ? Und wo kann ich mehr darüber Erfahren ?</p>
<p>Grüße<br />
Martin</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1853052</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1853052</guid><dc:creator><![CDATA[martin_zi]]></dc:creator><pubDate>Tue, 09 Feb 2010 12:31:40 GMT</pubDate></item><item><title><![CDATA[Reply to Auf 64bit Betriebsystem ein &amp;quot;32bit&amp;quot; Programm ausführen on Tue, 09 Feb 2010 12:33:53 GMT]]></title><description><![CDATA[<p>Die schalten einfach um, schwupps.</p>
<p>Wikipedia schrieb:</p>
<blockquote>
<p>Für das Ausführen von IA-32-Software nutzt der Prozessor einen Teil der IA-64-Register als IA-32-Register. Außerdem gibt es im IA-32 einen Sprungbefehl, mit dem in den IA-64-Modus (zurück)gewechselt wird. Nutzt man diesen auf einem IA-32-Prozessor, so erfolgt dort ein Invalid-Opcode-Interrupt.</p>
</blockquote>
<p>Muss natürlich vom Prozessor unterstützt werden.</p>
<p>MfG SideWinder</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1853054</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1853054</guid><dc:creator><![CDATA[SideWinder]]></dc:creator><pubDate>Tue, 09 Feb 2010 12:33:53 GMT</pubDate></item><item><title><![CDATA[Reply to Auf 64bit Betriebsystem ein &amp;quot;32bit&amp;quot; Programm ausführen on Tue, 09 Feb 2010 12:45:37 GMT]]></title><description><![CDATA[<p><a href="http://de.wikipedia.org/wiki/WOW64" rel="nofollow">http://de.wikipedia.org/wiki/WOW64</a></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1853069</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1853069</guid><dc:creator><![CDATA[_matze]]></dc:creator><pubDate>Tue, 09 Feb 2010 12:45:37 GMT</pubDate></item><item><title><![CDATA[Reply to Auf 64bit Betriebsystem ein &amp;quot;32bit&amp;quot; Programm ausführen on Tue, 09 Feb 2010 13:18:28 GMT]]></title><description><![CDATA[<p>Hallo</p>
<p>Ah ok ...<br />
Windows-On-Windows heißt das also ... jetzt weiß ich wonach ich suche ... Danke.</p>
<p>Heißt das, das man um 32Bit Programme unter Windows ausführen kann auch so ein CPU braucht die das kann ?<br />
Wenn der Prozessor das nicht kann funktiniert kann man dann nur 64Bit Programm ausführe?</p>
<p>Gilt das jetzt nur für 32Bit Programme? Oder kann man das auch bei Treibern nutzen ??</p>
<p>Grüße</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1853102</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1853102</guid><dc:creator><![CDATA[martin_zi]]></dc:creator><pubDate>Tue, 09 Feb 2010 13:18:28 GMT</pubDate></item><item><title><![CDATA[Reply to Auf 64bit Betriebsystem ein &amp;quot;32bit&amp;quot; Programm ausführen on Tue, 09 Feb 2010 13:56:38 GMT]]></title><description><![CDATA[<p>Alle handelsüblichen Prozessoren können das, keine Sorge. Bei Treibern funktioniert WoW64 aber nicht, da braucht es schon richtige 64-Bit-Treiber.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1853135</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1853135</guid><dc:creator><![CDATA[_matze]]></dc:creator><pubDate>Tue, 09 Feb 2010 13:56:38 GMT</pubDate></item><item><title><![CDATA[Reply to Auf 64bit Betriebsystem ein &amp;quot;32bit&amp;quot; Programm ausführen on Tue, 09 Feb 2010 14:02:08 GMT]]></title><description><![CDATA[<p>Die meisten 64-Bit Prozessoren werden 32-Bit Programme unterstützen.<br />
Dazu gehören alle Prozessoren der Prozessorfamilie x86-64. Diese Unterstüzen dies weil sie ja nur eine Erweiterung des 32-Bit Rechner sind. Somit muss beim Ausführen eines 32-Bit Programm seitens der CPU nur in den richtigen Betriebsmodus geschalten werden.<br />
Bei der Itanium Architektur die komplett auf 64-Bit aufgebaut ist(alos keine Registererweiterung) glaub ich funktioniert das auch nur müssen die 32-Bit Programme emuliert werden und da ist mit großen Performanceeinbussen zu reechnen).<br />
Windows on Windows hat zum einen auch die Aufgabe dies der CPU mitzuteilen da WoW64 zuerst im Header einer Binary nachsieht ob es sich um 32-Bit oder 64-Bit handelt. Danach teilt es der CPU mit den Betriebszustand zu wechseln.<br />
Zum anderen macht WOW dinge wie RegistryRedirection und FileSystemredirection.<br />
Bei Treibern wird aber WOW64 scheitern da das Treibermodell von 32-Bit und 64-Bit unterschiedlich ist. Also wenn dein Programm auf Treiber zugreift wird es nicht funktionieren.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1853138</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1853138</guid><dc:creator><![CDATA[mulek]]></dc:creator><pubDate>Tue, 09 Feb 2010 14:02:08 GMT</pubDate></item><item><title><![CDATA[Reply to Auf 64bit Betriebsystem ein &amp;quot;32bit&amp;quot; Programm ausführen on Tue, 09 Feb 2010 16:06:18 GMT]]></title><description><![CDATA[<p>SideWinder schrieb:</p>
<blockquote>
<p>Die schalten einfach um, schwupps.</p>
<p>Wikipedia schrieb:</p>
<blockquote>
<p>Für das Ausführen von IA-32-Software nutzt der Prozessor einen Teil der IA-64-Register als IA-32-Register. Außerdem gibt es im IA-32 einen Sprungbefehl, mit dem in den IA-64-Modus (zurück)gewechselt wird. Nutzt man diesen auf einem IA-32-Prozessor, so erfolgt dort ein Invalid-Opcode-Interrupt.</p>
</blockquote>
<p>Muss natürlich vom Prozessor unterstützt werden.</p>
<p>MfG SideWinder</p>
</blockquote>
<p>IA 64 steht für Intel Itanium<br />
IA 32 steht für die Intel x86</p>
<p>x64/AMD64/x86-64 steht für die 64-bit Erweiterung für die x86/IA32-Architektur.</p>
<p>x86/IA32 auf'nem Itanium ist sau langsam, weil es nur über Software geht, während x64 ja nur eine Erweiterung/Ergänzung ist. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--disappointed_face"
      title=":("
      alt="😞"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1853220</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1853220</guid><dc:creator><![CDATA[Zeus]]></dc:creator><pubDate>Tue, 09 Feb 2010 16:06:18 GMT</pubDate></item><item><title><![CDATA[Reply to Auf 64bit Betriebsystem ein &amp;quot;32bit&amp;quot; Programm ausführen on Wed, 10 Feb 2010 15:17:22 GMT]]></title><description><![CDATA[<p>Hi</p>
<p>Das ist schon mal gut für dein Einstieg <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f642.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--slightly_smiling_face"
      title=":)"
      alt="🙂"
    /><br />
<a href="http://msdn.microsoft.com/de-de/library/bb978906.aspx" rel="nofollow">http://msdn.microsoft.com/de-de/library/bb978906.aspx</a><br />
Aber ich denke es werden noch Fragen kommen <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f642.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--slightly_smiling_face"
      title=":)"
      alt="🙂"
    /></p>
<p>Grüße...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1853692</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1853692</guid><dc:creator><![CDATA[martin_zi]]></dc:creator><pubDate>Wed, 10 Feb 2010 15:17:22 GMT</pubDate></item><item><title><![CDATA[Reply to Auf 64bit Betriebsystem ein &amp;quot;32bit&amp;quot; Programm ausführen on Wed, 10 Feb 2010 17:58:53 GMT]]></title><description><![CDATA[<p><a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/22097">@mulek</a>:<br />
Mal abgesehen von dem restlichen unfundierten Geplauder:</p>
<p>mulek schrieb:</p>
<blockquote>
<p>Also wenn dein Programm auf Treiber zugreift wird es nicht funktionieren.</p>
</blockquote>
<p>Das stimmt so garnicht.<br />
Auf Treiber von einem 32 Bit Programm aus *zugreifen* ist überhaupt kein Problem. Nur der Treiber selbst muss 64 Bit &quot;sein&quot;. Das Programm welches den Treiber verwendet nicht. Sonst würden auch massiv viele 32 Bit Programme nicht mehr unter 64 bittigen Windowsen funktionieren.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1853796</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1853796</guid><dc:creator><![CDATA[hustbaer]]></dc:creator><pubDate>Wed, 10 Feb 2010 17:58:53 GMT</pubDate></item><item><title><![CDATA[Reply to Auf 64bit Betriebsystem ein &amp;quot;32bit&amp;quot; Programm ausführen on Thu, 11 Feb 2010 14:52:51 GMT]]></title><description><![CDATA[<p>Hallo nochmal <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f642.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--slightly_smiling_face"
      title=":)"
      alt="🙂"
    /></p>
<p>Ich habe mir jetzt mal das durchgelesen.<br />
<a href="http://www.microsoft.com/whdc/system/platform/64bit/WoW64_bestprac.mspx" rel="nofollow">http://www.microsoft.com/whdc/system/platform/64bit/WoW64_bestprac.mspx</a>.</p>
<p>Und da würde mich jetzt wieder was intressiern.<br />
Laut dem Bild im Doku (und aus einigem Text) scheint es ja so zu sein. (Ich hoffe ich hab das richtig verstanden :))</p>
<p>Wenn ein 32Bit Prozess gestartet wird. Wird die CPU in den 32bit Modus geschalten und der Prozess wird von Windows geladen.<br />
Verarbeitet seine arbeit bis z.B ein Systemcall (oder Winapi-aufruf) ansteht. Jetzt übernimmt das OS und arbeitet weiter.<br />
Und führt den die Funktion aus. Bei Windows7 (64bit) gibt es alle dlls in 64 bit version (bis auf ein paar Ausnahmen.)<br />
Jetzt schaltet die CPU in den 64bit Modus und arbeitet ihr Teil ab.<br />
Dann wird das Ergebnis zurückgegebn und wieder in den 32 Bit modus geschalten ?</p>
<p>Ist das wirklich so ? Ich dachte zuerst dass es auf Windows7 alle dlls in 32native und in 64native vorhanden sind.<br />
Das scheint ja nicht so zu sein ...</p>
<p>Grüß<br />
Martin</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1854231</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1854231</guid><dc:creator><![CDATA[martin_zi]]></dc:creator><pubDate>Thu, 11 Feb 2010 14:52:51 GMT</pubDate></item><item><title><![CDATA[Reply to Auf 64bit Betriebsystem ein &amp;quot;32bit&amp;quot; Programm ausführen on Thu, 11 Feb 2010 15:59:07 GMT]]></title><description><![CDATA[<blockquote>
<p>Ich dachte zuerst dass es auf Windows7 alle dlls in 32native und in 64native vorhanden sind.</p>
</blockquote>
<p>Es liegen fast alle DLLs als fast oder ganz unmodifizierte 32 Bit Version vor.<br />
Einige Ausnahmen gibt es aber natürlich, wie z.B. die KERNEL32.DLL.<br />
Diese Ausnahmen sind es dann, wo (fast?) alle Funktionen nur als &quot;schalte auf 64 Bit um und ruf die 64 Bit Funktion auf&quot; implementiert sind.</p>
<p>Auf jeden Fall können keine 64 Bit DLLs in einen 32 Bit Prozess geladen werden.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1854269</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1854269</guid><dc:creator><![CDATA[hustbaer]]></dc:creator><pubDate>Thu, 11 Feb 2010 15:59:07 GMT</pubDate></item><item><title><![CDATA[Reply to Auf 64bit Betriebsystem ein &amp;quot;32bit&amp;quot; Programm ausführen on Thu, 11 Feb 2010 16:26:35 GMT]]></title><description><![CDATA[<p>Hallo</p>
<p>Ok das heißt z.B.: Bibliotheken wie DirectX oder MFC befinden sich in der 32bit und auch als 64bit Version auf meiner Platte ? ...</p>
<p>Von anderen Dlls die andere Programme bzw Bibliotheken mit bringen mal abgesehen. ??</p>
<p>Gruß</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1854279</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1854279</guid><dc:creator><![CDATA[martin_zi]]></dc:creator><pubDate>Thu, 11 Feb 2010 16:26:35 GMT</pubDate></item><item><title><![CDATA[Reply to Auf 64bit Betriebsystem ein &amp;quot;32bit&amp;quot; Programm ausführen on Thu, 11 Feb 2010 22:13:45 GMT]]></title><description><![CDATA[<p>MFC sicher. DirectX vermutlich auch, kann ich aber nicht sicher sagen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1854427</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1854427</guid><dc:creator><![CDATA[hustbaer]]></dc:creator><pubDate>Thu, 11 Feb 2010 22:13:45 GMT</pubDate></item></channel></rss>