Linux repositories inspector
Linux
2009-02-20
Aliases: vm86old(2), vm86old(2), vm86old(2), vm86old(2), vm86old(2), vm86old(2), vm86old(2), vm86old(2), vm86old(2), vm86old(2)

man-pages-ru

Russian man pages from the Linux Documentation Project

manpages-dev

Manual pages about using GNU/Linux for development

man-pages

Linux kernel and C library user-space interface documentation

ИМЯ

vm86old, vm86 - войти в виртуальный режим 8086

ОБЗОР

#include <sys/vm86.h>
int vm86old(struct vm86_struct *info);
int vm86(unsigned long fn, struct vm86plus_struct *v86);

ОПИСАНИЕ

Системный вызов vm86() был введён в Linux 0.97p2. В Linux 2.1.15 и 2.0.28 он был переименован в vm86old() и был введён новый vm86(). Описание структуры struct vm86_struct было изменено в 1.1.8 и 1.1.9.
Данные вызовы заставляют вызывающий процесс войти в режим VM86 (виртуальный режим 8086 в литературе по Intel) и используются dosemu.
Режим VM86 — это эмуляция реального режима внутри задачи, которая работает в защищённом режиме.

ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ

При успешном выполнении возвращается 0. В случае ошибки возвращается -1, а errno устанавливается в соответствующее значение.

ОШИБКИ

EFAULT Возвращённое значение является есть только для i386 и указывает на проблему получения данных из пространства пользователя.
ENOSYS Возвращённое значение указывает, что вызов не реализован на данной архитектуре.
EPERM Существует сохранённый стек ядра (это проверка ядра; сохранённый стек должен существовать только внутри самого режима vm86).

СООТВЕТСТВИЕ СТАНДАРТАМ

Данный вызов является специфичным для Linux на 32-битных процессорах Intel и не должен использоваться в программах, которые задумываются как переносимые на другие платформы.
⇧ Top