Web | This Site

Unix for Beginners
Unix Shell Programming
Advanced Unix
Unix Useful References
Unix Useful Resources
Selected Reading
© 2011 TutorialsPoint.COM

| Home |  | References |  | Discussion Forums |  | About TP

# vm86() - Unix, Linux System Call

# NAME

vm86old, vm86 - enter virtual 8086 mode

# 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 appropriately.

# ERRORS

Tag | Description
--- | ---
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 Intel processors, and should not be used in programs intended to be portable.

Advertisement

Online Image Processing

Indian Baby Names