vm86old, vm86 - Übergang in den virtuellen 8086-Modus
Standard-C-Bibliothek (
libc,
-lc)
#include <sys/vm86.h>
int vm86old(struct vm86_struct *info);
int vm86(unsigned long fn, struct vm86plus_struct *v86);
Der Systemaufruf
vm86() wurde mit Linux 0.97p2 eingeführt. Unter
Linux 2.1.15 und 2.0.28 wurde er in
vm86old() umbenannt und ein neuer
vm86() eingeführt. Die Definition von
struct vm86_struct
wurde in den Versionen 1.1.8 und 1.1.9 verändert.
Diese Aufrufe veranlassen den Prozess, in den VM86-Modus (virtual-8086 in der
Intel-Literatur) überzugehen. Sie werden von
dosemu verwendet.
Der VM86-Modus ist eine Emulation des Real-Modus innerhalb eines
Protected-Mode-Prozesses.
Bei Erfolg wird Null zurückgegeben. Bei einem Fehler wird -1
zurückgegeben und
errno gesetzt, um den Fehler anzuzeigen.
- EFAULT
- Dieser Rückgabewert ist i386-spezifisch und zeigt
ein Problem beim Datenzugriff auf Anwendungsebene.
- ENOSYS
- Dieser Rückgabewert zeigt an, das der Systemaufruf
auf der verwendeten Architektur nicht implementiert ist.
- EPERM
- Es ist ein gespeicherter Kernel-Stack vorhanden. (Dies ist
ein Sicherheitstest des Kernels; der gespeicherte Stack sollte nur im
Vm86-Modus selbst vorhanden sein.)
Dieser Aufruf ist spezifisch für Linux auf 32-Bit-Intel-Prozessoren und
sollte nicht in Programmen verwendet werden, die portierbar sein sollen.
Die deutsche Übersetzung dieser Handbuchseite wurde von Ralf Demmer
<
[email protected]>, Martin Eberhard Schauer
<
[email protected]> und Mario Blättermann
<
[email protected]> erstellt.
Diese Übersetzung ist Freie Dokumentation; lesen Sie die
GNU
General Public License Version 3 oder neuer bezüglich der
Copyright-Bedingungen. Es wird KEINE HAFTUNG übernommen.
Wenn Sie Fehler in der Übersetzung dieser Handbuchseite finden, schicken
Sie bitte eine E-Mail an die
Mailingliste
der Übersetzer