API of the MS-DOS operating system
DOS APIは 86-DOS で開発された API で 、 MS-DOS / PC DOSを はじめとする DOS 互換オペレーティングシステムで使用されています。DOS APIの呼び出しは、ほとんどの場合、 ソフトウェア割り込み 21h( INT 21h)を用いて行われます。AH プロセッサレジスタ にサブファンクション番号を 、その他のレジスタにパラメータを指定してINT 21hを呼び出すことで、様々なDOSサービスを呼び出すことができます。これらのサービスには、キーボード入力、ビデオ出力、ディスクファイルへのアクセス、プログラム実行、メモリ割り当てなど、様々なアクティビティの処理が含まれます。1980年代後半には、 DOSエクステンダ と DOSプロテクトモードインタフェース (DPMI)の登場により、プログラムを16ビットまたは32ビットのプロテクトモードで実行しながら、DOS APIにアクセスできるようになりました。
DOS APIの歴史
86-DOSおよびMS-DOS 1.0のオリジナルのDOS APIは、 CP/M と機能的に互換性を持つように設計されました。ファイルへのアクセスには ファイル制御ブロック (FCB)が使用されました。DOS APIは、 ファイルハンドル を使用したファイルアクセス 、 階層ディレクトリ 、デバイスI/O制御など、いくつかの Unixの概念を取り入れてMS-DOS 2.0で大幅に拡張されました。 [1] DOS 3.1では、 ネットワークリダイレクタの サポートが追加されました。MS-DOS 3.31では、INT 25h/26h関数が拡張され、32MBを超えるハードディスクをサポートしました。MS-DOS 5では、 上位メモリブロック (UMB)の使用がサポートされました。MS-DOS 5の後、DOS APIはDOSの連続スタンドアロンリリースで変更されていません。
DOS APIとWindows
Windows 9x では 、DOS がプロテクト モード システムとグラフィカル シェルをロードしました。DOS は通常、 仮想 DOS マシン (VDM) からアクセスされましたが、Windows をロードせずにリアル モードの MS-DOS 7.0 を直接ブートすることもできました。DOS API は拡張され、国際化サポートと 長いファイル名の サポートが強化されましたが、長いファイル名のサポートは VDM でのみ利用可能でした。Windows 95 OSR2 では、DOS が 7.1 に更新されて FAT32 の サポートが追加され、これをサポートするための関数が DOS API に追加されました。Windows 98 と Windows Me も MS-DOS 7.1 API を実装していますが、Windows Me は自身を MS-DOS 8.0 として報告します。
Windows NT とそのベースのシステム( Windows XP や Windows Vista など)はMS-DOSをベースにしていませんが、 仮想マシンである NTVDM を使用して DOS APIを処理します。NTVDMは、DOSプログラムを 仮想8086モード( 80386 以降のプロセッサで利用可能な 保護モード 内での リアルモード のエミュレーション )で実行することで動作します。NTVDMはDOS 5.0 APIをサポートしています。Linux 用 の DOSEMU も同様のアプローチを採用しています。
DOSで使用される割り込みベクター
以下は、プログラムが DOS API 関数を呼び出すために使用する割り込みベクターのリストです。
DOS INT 21時間サービス
以下は、DOS API プライマリ ソフトウェア割り込みベクターを介して提供される関数のリストです。
ネイティブサポートを備えたオペレーティングシステム
DOSエミュレーション層を備えたオペレーティングシステム
その他のエミュレータ
参照
参考文献
^ Ray Duncan (1988). 『MS-DOSプログラミング入門:アセンブリ言語とC言語プログラマのためのMicrosoftガイド』 Microsoft Press. ISBN 0914845772 。
さらに読む
ポール・アレン 、 ビル・ゲイツ、 エイドリアン・キング、クリス・ラーソン、 ゴードン・レットウィン 、 ボブ・オレア 、 ティム・パターソン 、クリス・ピーターズ、ブルース・フィリップス、 アーロン・レイノルズ 、ベティ・スティルメーカー 、マーク・ズビコウスキー (1986)。「テクニカルアドバイザー」。MS -DOS (バージョン 1.0-3.2) テクニカルリファレンス百科事典 。ハワード・ボーンスタイン、ローレンス・ブレデホフト、レイ・ダンカン、キャロル・モリス、デビッド・ ローズ、ジョン ・ソーチャ、ジム・トムリン、キャスリーン・ヴィアン、ヴァン・ウォルバートン、ジム・ベリー、バリー・プレッパーナウ、パム・ビーソン、アンドレア・ルイス、デビッド・リグミール (編)。Microsoft リファレンスライブラリ 第 1 巻 (初版は撤回)。米国ワシントン 州 レドモンド: マイクロソフトプレス 。ISBN 0-914845-69-1 LCCN 86-8640. OCLC 635600205 . (xvii+1053ページ; 29cm) (注: この初版にはシステムの内部動作のフローチャートが含まれています。1986年に大量配布される前にマイクロソフトによって撤回されました。これは、多くの事実誤認と、公表されるべきではない機密情報が含まれていたためです。印刷されたコピーはほとんど残っていません。1988年に完全に改訂された版に置き換えられました。[1])
Zbikowski, Mark ; Allen, Paul ; Ballmer, Steve ; Borman, Reuben ; Borman, Rob ; Butler, John ; Carroll, Chuck ; Chamberlain, Mark ; Chell, David ; Colee, Mike ; Courtney, Mike ; Dryfoos, Mike ; Duncan, Rachel ; Eckhardt, Kurt ; Evans, Eric ; Farmer, Rick ; Gates, Bill ; Geary, Michael ; Griffin, Bob ; Hogarth, Doug ; Johnson, James W. ; Kermaani, Kaamel ; King, Adrian ; Koch, Reed ; Landowski, James ; Larson, Chris ; Lennon, Thomas ; Lipkie, Dan ; McDonald, Marc ; McKinney, Bruce ; Martin, Pascal ; Mathers, Estelle ; Matthews, Bob ; Melin, David ; Mergentime, Charles ; Nevin, Randy ; Newell, Dan ; Newell, Tani ; Norris, David ; O'Leary, Mike; O'Rear, Bob ; Olsson, Mike; Osterman, Larry; Ostling, Ridge; Pai, Sunil; Paterson, Tim ; Perez, Gary; Peters, Chris; Petzold, Charles ; Pollock, John; Reynolds, Aaron ; Rubin, Darryl; Ryan, Ralph; Schulmeisters, Karl; Shah, Rajen; Shaw, Barry; Short, Anthony; Slivka, Ben; Smirl, Jon; Stillmaker, Betty; Stoddard, John; Tillman, Dennis; Whitten, Greg; Yount, Natalie; Zeck, Steve (1988). 「技術アドバイザー」. MS-DOS 百科事典: バージョン 1.0 から 3.2 . 著者: Duncan, Ray; Bostwick, Steve; Burgoyne, Keith; Byers, Robert A.; Hogan, Thom;カイル, ジム; レトウィン, ゴードン ; ペッツォルト, チャールズ ; ラビノウィッツ, チップ; トムリン, ジム; ウィルトン, リチャード; ウォルバートン, ヴァン; ウォン, ウィリアム; ウッドコック, ジョアン(完全改訂版). ワシントン州レドモンド, 米国: マイクロソフト・プレス . ISBN 1-55615-049-0 LCCN 87-21452. OCLC 16581341 . (xix+1570ページ; 26cm) (注: この版は、撤回された1986年の初版を別の著者チームによって大幅に改訂した後、1988年に出版されました。[2])
ノートン、ピーター 、ウィルトン、リチャード (1987). 『新ピーター・ノートン・プログラマーズ・ガイド IBM PC & PS/2』 . マイクロソフト・プレス. ISBN 1-55615-131-4 。
レイ・ダンカン(1988年) 『MS-DOSプログラミング上級編:アセンブリ言語およびC言語プログラマのためのMicrosoftガイド』 Microsoft Press. ISBN 0914845772 。
ホーガン、トム(1991年) 『プログラマーズPCソースブック 』マイクロソフトプレス、 ISBN 155615321X 。
『MS-DOSプログラマーズ・リファレンス - MS-DOS公式テクニカル・リファレンス』 。Microsoft Press、1993年 。ISBN 1556155468 。
IBM PC DOS 7 テクニカルアップデート
OpenDOS開発者リファレンスシリーズ - OpenDOSプログラマーズガイド - システムおよびプログラマーズガイド。Caldera , Inc. 1997年8月。Caldera部品番号:200-DOPG-003。2017年10月7日時点のオリジナルよりアーカイブ。 2012年6月28日 閲覧 。 (英国で印刷されました。)
外部リンク