vm86(2) — Linux manual page
vm86(2) System Calls Manual vm86(2)
NAME
vm86old, vm86 - enter virtual 8086 mode
LIBRARY
Standard C library (libc, -lc)
SYNOPSIS
#include <sys/vm86.h> int vm86old(struct vm86_struct *info); 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 to indicate the error.
ERRORS
EFAULT This return value is specific to i386 and indicates a problem with getting user-space 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 exist only within vm86 mode itself.)
STANDARDS
Linux on 32-bit Intel processors.
COLOPHON
This page is part of the man-pages (Linux kernel and C library user-space interface documentation) project. Information about the project can be found at ⟨https://www.kernel.org/doc/man-pages/⟩. If you have a bug report for this manual page, see ⟨https://git.kernel.org/pub/scm/docs/man-pages/man-pages.git/tree/CONTRIBUTING⟩. This page was obtained from the tarball man-pages-6.9.1.tar.gz fetched from ⟨https://mirrors.edge.kernel.org/pub/linux/docs/man-pages/⟩ on 2024-06-26. If you discover any rendering problems in this HTML version of the page, or you believe there is a better or more up- to-date source for the page, or you have corrections or improvements to the information in this COLOPHON (which is not part of the original manual page), send a mail to man-pages@man7.org Linux man-pages 6.9.1 2024-05-02 vm86(2)
Pages that refer to this page: modify_ldt(2), syscalls(2), unimplemented(2), systemd.exec(5)