winehq-logo.png

Red, Red Wine

Windows-Programme unter Linux

01.10.2000
Stellen Sie sich vor, Windows-Programme könnten auf jedem Linux-System benutzt werden. Und zwar ohne dass dazu ein schwerfälliger Emulator benötigt wird und ohne die Notwendigkeit, eine Lizenz für ein Windows-Betriebssystem zu besitzen. Einfach so, genauso schnell und bequem wie jedes andere Linux-Programm.

Das geht nicht, sagen Sie? Stimmt in vielen Fällen leider noch. Dass kann nicht gehen? Stimmt nicht! Das Wine-Projekt hat sich nämlich genau dies zur Aufgabe gemacht. In den letzten Jahren haben die Entwickler von Wine große Fortschritte gemacht, so dass schon heute viele Windows-Programme mit Wine unter Linux eingesetzt werden können. In diesem Artikel erfahren Sie, was Wine eigentlich ist, wie es funktioniert und wie Sie Wine auf Ihrem System einrichten können, um Windows-Programme zu benutzen.

Abbildung 1: Praktisch bei der Entwicklung von Web-Seiten. Die beiden Kontrahenten Netscape und Internet Explorer nebeneinander. Wine macht´s möglich

EXE – was soll das?

Die Tatsache, dass jeder i386-kompatible Prozessor Windows-Programme ausführen kann, reicht für sich genommen noch nicht aus, um solche Programme auch unter Linux/Intel tatsächlich starten zu können. Es wird nämlich noch etwas benötigt, das die auszuführenden Programme von der Festplatte in den Arbeitsspeicher lädt und sie dann zur Ausführung bringt. Diese Aufgabe übernimmt der sogenannte Programmloader. Wenn Sie Windows-Programme unter Windows starten, etwa indem Sie ein Programm im Startmenü auswählen, wird diese Funktion vom Windows-Betriebssystem übernommen. Linux hat selbstverständlich eine ähnliche Funktionalität, mit der native Linux-Programme geladen werden können, z. B. wenn Sie eine Applikation im KDE-Menü, von der Shell aus oder im GNOME-Panel aufrufen. Versucht der Benutzer, ein Programm zu starten, prüft das jeweilige Betriebssystem zunächst, ob die entsprechende Programmdatei auf der Festplatte in dem richtigen Dateiformat vorliegt. So wie Netscape keine StarOffice-Dateien darstellen kann, kann Linux von sich aus nämlich keine Windows-Programme laden. Wird nun festgestellt, dass die auszuführende Datei ein unbekanntes Format besitzt, bricht das Betriebssystem ab und gibt eine Fehlermeldung aus. Um Windows-Programme unter Linux zu starten, wird also ein Loader benötigt, der die Programme in den Arbeitsspeicher lädt und dann zur Ausführung bringt.

Welche API verwendest Du?

Und dann gibt es noch ein zweites Problem: Jedes Betriebssystem stellt bestimmte Funktionen zur Verfügung, die von Programmen benutzt werden, um beispielsweise Dateien zu öffnen oder Daten aus dem Internet zu empfangen. Diese Schnittstellen bezeichnet man als das API des Betriebssystems. Die Art, wie diese Schnittstellen benutzt werden, unterscheiden sich zwischen Windows und Linux. Wie APIs unter Windows benutzt werden, lässt sich am besten an einem Beispiel erklären: Um eine Datei zu öffnen oder zu erzeugen, verwendet man dort das API CreateFile(). Dabei handelt es sich um eine Funktion, die sich in einer Programmbibliothek befindet. Ein Windows-Programm, das diese Funktion benutzen möchte, muss nun die entsprechende Programmbibliothek (in diesem Fall ist das die Bibliothek KERNEL32.DLL) laden. Dabei wird der Funktionsaufruf des Programms mit der Funktion in der Bibliothek verbunden. Wenn die Funktion CreateFile() dann aufgerufen wird, wird die Kontrolle an die Bibliothek übergeben. Abhängig davon, um welche Version von Windows es sich handelt (Windows NT oder Windows 95/98), können schließlich von der Bibliothek aus ganz unterschiedliche weitere Funktionen aufgerufen werden, um die gewünschte Operation (also das Öffnen oder Erstellen einer Datei) auszuführen.

LinuxCommunity kaufen

Einzelne Ausgabe
 
Abonnements
 

Ähnliche Artikel

  • 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.
  • 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
  • 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.
  • So viele Möglichkeiten
    Hand aufs Herz: Auch als überzeugter Linux-Anhänger werden Sie das eine oder andere Programm aus der Windows-Welt vermissen – einige Hersteller weigern sich nach wie vor standhaft, ihre Software zu portieren, und so bleibt häufig nur die Möglichkeit, immer wieder Windows zu booten.
Kommentare

Infos zur Publikation

LU 11/2014: VIDEOS BEARBEITEN

Digitale Ausgabe: Preis € 4,95
(inkl. 19% MwSt.)

Mit der Zeitschrift LinuxUser sind Sie als Power-User, Shell-Guru oder Administrator im kleinen Unternehmen monatlich auf dem aktuelle Stand in Sachen Linux und Open Source.

Sie sind sich nicht sicher, ob die Themen Ihnen liegen? Im Probeabo erhalten Sie drei Ausgaben zum reduzierten Preis. Einzelhefte, Abonnements sowie digitale Ausgaben erwerben Sie ganz einfach in unserem Online-Shop.

NEU: DIGITALE AUSGABEN FÜR TABLET & SMARTPHONE

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

Tipp der Woche

Schnell Multi-Boot-Medien mit MultiCD erstellen
Schnell Multi-Boot-Medien mit MultiCD erstellen
Tim Schürmann, 24.06.2014 12:40, 0 Kommentare

Wer mehrere nützliche Live-Systeme auf eine DVD brennen möchte, kommt mit den Startmedienerstellern der Distributionen nicht besonders weit: Diese ...

Aktuelle Fragen

Artikelsuche
Erwin Ruitenberg, 09.10.2014 07:51, 1 Antworten
Ich habe seit einige Jahre ein Dugisub LinuxUser. Dann weiß ich das irgendwann ein bestimmtes Art...
Windows 8 startet nur mit externer Festplatte
Anne La, 10.09.2014 17:25, 6 Antworten
Hallo Leute, also, ich bin auf folgendes Problem gestoßen: Ich habe Ubuntu 14.04 auf meiner...
Videoüberwachung mit Zoneminder
Heinz Becker, 10.08.2014 17:57, 0 Antworten
Hallo, ich habe den ZONEMINDER erfolgreich installiert. Das Bild erscheint jedoch nicht,...
internes Wlan und USB-Wlan-Srick
Gerhard Blobner, 04.08.2014 15:20, 2 Antworten
Hallo Linux-Forum: ich bin ein neuer Linux-User (ca. 25 Jahre Windows) und bin von WIN 8 auf Mint...
Server antwortet mit falschem Namen
oin notna, 21.07.2014 19:13, 1 Antworten
Hallo liebe Community, Ich habe mit Apache einen Server aufgesetzt. Soweit, so gut. Im Heimnet...