int vm86(unsigned long fn , struct vm86plus_struct * v86 );
DESCRIPTION
The system call
vm86 () was introduced in Linux 0.97p2.
In Linux 2.1.15 and 2.0.28 it was renamed to
vm86old (), and a new
vm86 () was introduced.
The definition of struct vm86_struct was changed
in 1.1.8 and 1.1.9.
These calls cause the process to enter VM86 mode (virtual-8086 in Intel
literature), and are used by
dosemu .
VM86 mode is an emulation of real mode within a protected mode task.
RETURN VALUE
On success, zero is returned.
On error, -1 is returned, and
errno is set appropriately.
ERRORS
EFAULT
This return value is specific to i386 and indicates a problem with getting
userspace data.
ENOSYS
This return value indicates the call is not implemented on the present
architecture.
EPERM
Saved kernel stack exists.
(This is a kernel sanity check; the saved
stack should only exist within vm86 mode itself.)
CONFORMING TO
This call is specific to Linux on 32-bit Intel processors,
and should not be used in programs intended to be portable.
COLOPHON
This page is part of release 3.19 of the Linux
man-pages project.
A description of the project,
and information about reporting bugs,
can be found at
http://www.kernel.org/doc/man-pages/.