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)

manpages-ja-dev

Japanese version of the manual pages (for developers)

man-pages-ja

Japanese man (manual) pages from the Japanese Manual 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 モード (Intel の文書では仮想 8086 モード) へと移行する。 これらのコールは dosemu で使用される。
VM86 モードはプロテクトモードタスクにおける リアルモードのエミュレーションである。

返り値

成功した場合は 0 が返される。エラーの場合は -1 が返され、 errno が適切に設定される。

エラー

EFAULT この返り値は i386 固有のものであり、 ユーザー空間のデータを取得する際に問題があったことを示す。
ENOSYS この返り値は、このコールが現在のアーキテクチャーで実装されていないことを示す。
EPERM 保存されたカーネルスタックが既に存在している。(これはカーネルが通常の 状態であるかをチェックしている。保存されたスタックは vm86 モードで しか存在しない。)

準拠

この関数は 32 ビット Intel プロセッサ上の Linux 特有の関数であり、 移植を意図したプログラムでは使用すべきでない。

この文書について

この man ページは Linux man-pages プロジェクトのリリース 3.79 の一部 である。プロジェクトの説明とバグ報告に関する情報は http://www.kernel.org/doc/man-pages/ に書かれている。
⇧ Top