vm86old, vm86 - войти в
виртуальный
режим 8086
Standard C library (
libc,
-lc)
#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 — это
эмуляция
реального
режима
внутри
задачи,
которая
работает в
защищённом
режиме.
On success, zero is returned. On error, -1 is returned, and
errno is set
to indicate the error.
- EFAULT
- Возвращённое
значение
является
есть
только для
i386 и
указывает
на
проблему
получения
данных из
пространства
пользователя.
- ENOSYS
- Возвращённое
значение
указывает,
что вызов
не
реализован
на данной
архитектуре.
- EPERM
- Существует
сохранённый
стек ядра
(это
проверка
ядра;
сохранённый
стек
должен
существовать
только
внутри
самого
режима vm86).
Данный
вызов
является
специфичным
для Linux на
32-битных
процессорах
Intel и не
должен
использоваться
в
программах,
которые
задумываются
как
переносимые
на другие
платформы.
Русский
перевод
этой
страницы
руководства
был сделан
Azamat Hackimov <
[email protected]>, Dmitriy Ovchinnikov
<
[email protected]>, Dmitry Bolkhovskikh <
[email protected]>,
Katrin Kutepova <
[email protected]>, Yuri Kozlov
<
[email protected]> и Иван
Павлов <
[email protected]>
Этот
перевод
является
бесплатной
документацией;
прочитайте
Стандартную
общественную
лицензию GNU
версии 3
или более
позднюю,
чтобы
узнать об
условиях
авторского
права. Мы не
несем
НИКАКОЙ
ОТВЕТСТВЕННОСТИ.
Если вы
обнаружите
ошибки в
переводе
этой
страницы
руководства,
пожалуйста,
отправьте
электронное
письмо на
[email protected]