1VM86(2) Linux Programmer's Manual VM86(2)
2
3
4
6 vm86old, vm86 - enter virtual 8086 mode
7
9 #include <sys/vm86.h>
10
11 int vm86old(struct vm86_struct *info);
12
13 int vm86(unsigned long fn, struct vm86plus_struct *v86);
14
16 The system call vm86() was introduced in Linux 0.97p2. In Linux 2.1.15
17 and 2.0.28, it was renamed to vm86old(), and a new vm86() was intro‐
18 duced. The definition of struct vm86_struct was changed in 1.1.8 and
19 1.1.9.
20
21 These calls cause the process to enter VM86 mode (virtual-8086 in Intel
22 literature), and are used by dosemu.
23
24 VM86 mode is an emulation of real mode within a protected mode task.
25
27 On success, zero is returned. On error, -1 is returned, and errno is
28 set appropriately.
29
31 EFAULT This return value is specific to i386 and indicates a problem
32 with getting user-space data.
33
34 ENOSYS This return value indicates the call is not implemented on the
35 present architecture.
36
37 EPERM Saved kernel stack exists. (This is a kernel sanity check; the
38 saved stack should exist only within vm86 mode itself.)
39
41 This call is specific to Linux on 32-bit Intel processors, and should
42 not be used in programs intended to be portable.
43
45 This page is part of release 5.04 of the Linux man-pages project. A
46 description of the project, information about reporting bugs, and the
47 latest version of this page, can be found at
48 https://www.kernel.org/doc/man-pages/.
49
50
51
52Linux 2009-02-20 VM86(2)