Jetzt verstehe ich Dich!

Wenn man nun ein Windows-Programm unter Linux "einfach so" in den Arbeitsspeicher laden und ausführen würde, würde das Programm in den meisten Fällen also daran scheitern, dass Funktionen wie CreateFile() nicht zur Verfügung stehen (der Linux-Kernel stellt an Stelle dessen eine ähnliche Funktion zur Verfügung, die open() heißt, aber völlig anders aufgerufen wird). Wie lässt sich dieses Problem lösen? Sie haben es wahrscheinlich schon erraten: Es müssen die erforderlichen Programmbibliotheken nachgeschrieben werden. Diese können dann, so wie es unter Windows geschieht, mit dem auszuführenden Programm verbunden werden. Ruft das Programm dann unter Linux beispielsweise das CreateFile()-API auf, dann kann die nachgeschriebene Bibliothek die entsprechenden Linux-Systemaufrufe durchführen und das Ergebnis so aufbereiten, wie es von dem Windows-Programm erwartet wird.

Abbildung 2: Windows-Programme unter Wine und Windows NT im Vergleich

Schichtarbeit

Daraus ergibt sich prinzipiell kein Nachteil gegenüber dem "echten" Windows. Um bei dem Beispiel CreateFile() zu bleiben, müssen unter DOS-basierten Windows-Versionen, wie Windows 95/98, von CreateFile() aus unter Umständen DOS-Routinen aufgerufen werden, um eine Datei tatsächlich zu öffnen. Unter Windows NT oder Windows 2000 wird anstelle dessen von CreateFile() aus das entsprechende NT-API (hier NtCreateFile()) aufgerufen. Genauso wie unter Linux mit Wine werden also auch unter dem "echten" Windows immer mehrere Schichten durchlaufen.

LinuxCommunity kaufen

Einzelne Ausgabe
 
Abonnements
 
TABLET & SMARTPHONE APPS
Bald erhältlich
Get it on Google Play

Deutschland

Ähnliche Artikel

  • Nützliche Notlösung
    Haben Sie den Umstieg von Windows auf Linux erfolgreich bewältigt und stellen fest, dass Sie doch zwingend das eine oder andere Windows-Programm benötigen, können Sie zwar eine virtuelle Maschine einrichten, schneller und effizienter nutzen Sie z. B. Microsoft Office aber mit CrossOver Linux.
  • Wine, Crossover Office und Cedega
    Wer Windows-Anwendungen unter Linux zum Laufen bringen will, kommt an Wine nicht vorbei. Wir untersuchen die freie und die kommerziellen Wine-Varianten auf ihre Praxistauglichkeit.
  • Wine in neuen Kleidern
  • Beschwipst fensterln
    Wer von Windows auf Linux umsteigt, vermisst nicht selten liebgewonnene Programme und Spiele. Wie praktisch wäre es, wenn diese auch auf dem freien Betriebssystem laufen würden. Genau diesen Wunsch erfüllt eine kleine Software namens Wine.
  • Fertige Version der Laufzeitumgebung für Windows-Programme
    Wine 1.2, die Laufzeitumgebung für Windows-Programme unter Linux, hat seine Entwicklungsphase hinter sich und steht zum Download bereit.
Kommentare

Infos zur Publikation

LU 12/2016: Neue Desktops

Digitale Ausgabe: Preis € 5,99
(inkl. 19% MwSt.)

LinuxUser erscheint monatlich und kostet 5,95 Euro (mit DVD 8,50 Euro). Weitere Infos zum Heft finden Sie auf der Homepage.

Das Jahresabo kostet ab 86,70 Euro. Details dazu finden Sie im Computec-Shop. Im Probeabo erhalten Sie zudem drei Ausgaben zum reduzierten Preis.

Bei Google Play finden Sie digitale Ausgaben für Tablet & Smartphone.

HINWEIS ZU PAYPAL: Die Zahlung ist ohne eigenes Paypal-Konto ganz einfach per Kreditkarte oder Lastschrift möglich!

Aktuelle Fragen

Drucker Epson XP-332 unter ubuntu 14.04 einrichten
Andrea Wagenblast, 30.11.2016 22:07, 2 Antworten
Hallo, habe vergeblich versucht mein Multifunktionsgerät Epson XP-332 als neuen Drucker unter...
Apricity Gnome unter Win 10 via VirtualBox
André Driesel, 30.11.2016 06:28, 2 Antworten
Halo Leute, ich versuche hier schon seit mehreren Tagen Apricity OS Gnome via VirtualBox zum l...
EYE of Gnome
FRank Schubert, 15.11.2016 20:06, 2 Antworten
Hallo, EOG öffnet Fotos nur in der Größenordnung 4000 × 3000 Pixel. Größere Fotos werden nic...
Kamera mit Notebook koppeln
Karl Spiegel, 12.11.2016 15:02, 2 Antworten
Hi, Fotografen ich werde eine SONY alpha 77ii bekommen, und möchte die LifeView-Möglichkeit nu...
Linux auf externe SSD installieren
Roland Seidl, 28.10.2016 20:44, 1 Antworten
Bin mit einem Mac unterwegs. Mac Mini 2012 i7. Würde gerne Linux parallel betreiben. Aber auf e...