TSRの使い方とは? わかりやすく解説

TSRの使い方

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2021/09/03 03:43 UTC 版)

Terminate and Stay Resident」の記事における「TSRの使い方」の解説

システムコール INT 27H は 'Terminate But Stay Resident' と呼ばれるため、それを使うプログラムを 'TSR' と称した。これを使うと、プログラム最大64KBのメモリだけをそのままの状態で残すことができる。MS-DOS 2.0 ではそれを改良したシステムコール INT 21H/31H ('Keep Process') が追加された。これは残すメモリ量の制限外しプロセス終了コード指定できるようにしたものである。 終了後コード実行させるためのきっかけ一例としては、なんらかの割込みベクタ自分自身が持つ割込みハンドラを指すよう書き換え、再び呼び出されるようにする。たとえば、ハードウェア割込利用すればハードウェアイベントプログラム反応させることができる。ソフトウェア割込利用すれば別のプログラム中からINT命令簡単に呼出ができる。(ハードウェア割込一種であるが)タイマー割込VSYNC割込により、定期的に呼出すともできる割込み利用一例であって他の方法もある(MS-DOSデバイスドライバとして登録する等)。 実行させるコード持たず、単にデータ領域としてメモリ確保するだけという利用法もある。例えPC-9801比較後期機種になるまでパレットの読出しができなかったため、ユーザにより考案された「常駐パレット」などはそういった用法である。 割込みベクタは、連鎖させる利用法もある。一般に次のどちらかのように利用する。 ある割り込みを完全に独占しそれ以前に同じ割り込みベクタ書き換えていた他の割り込みハンドラ呼ばない。 そのTSR自身コード実行する前、あるいは実行した後に、以前割り込みベクタに従って、他の割り込みハンドラ連鎖的に呼ぶ。 前者では競合するTSR機能停止するし、後者では共存できるかもしれないが必ずしも全てうまくゆくとは限らないグラフィックなどの似たような機能を、複数TSRがまずいタイミング利用してしまうかもしれないし、連鎖による処理時間の遅れによりうまく働かなくなるかもしれないそういったように一般に相性問題と言われるような現象起こしやすい)。 'Terminate and Stay Resident' はコンピュータウイルスでもよく使われPC制御奪ったり、バックグラウンド潜んだりといった動きをした。たとえば、ディスクI/O実行イベント対応してウイルス動き実行ファイル (.EXE.COM) が実行されるときにそのファイル感染したり、データファイルオープンしたときにそのファイル感染したMS-DOSバージョン上がるにつれ、(あまり普及しなかったバージョン4や)特にバージョン5.0以降では、MS-DOS自身標準添付ユーティリティ類にもこれを使ったものが増えた例えば、DOSKEY コマンド行エディタや他のコマンド行からインストール可能なユーティリティである(ドライバとしてCONFIG.SYS記述する必要がなく、AUTOEXEC.BAT記述するか、通常のコマンド行から手入力常駐させる)。 TSRプログラムはどの時点でもロードできるOSブート直後ロードするには、AUTOEXEC.BAT記述するユーザー必要に応じてロードするともできる例えば、SidekickTurbo Debugger)。それらプログラムTSRであるため、他のプログラム実行中もメモリに留まっている。TSRプログラム自身アンロードさせるオプション提供しないものもあり、リブートするまでメモリ常駐し続ける。しかし、外部からアンロードすることは可能で、TurboPower Software の MARK.EXE/RELEASE.EXE というユーティリティ組み合わせを使うか、soft reboot TSR使って特定のキー組み合わせ押下することで全TSRアンロードすることができる。しかしこれらは実際には危険を伴うものであったMS-DOSメモリ管理システム的に整合性のある状態を復元するだけであれば簡単だが、割込みその他の資源に関して問題である。TSR自身活動きっかけのためにフックしているのが、既存のよく知られ割込みなどであることを前提として復元するわけだが、それらの判断結局のところヒューリスティック経験則)に頼らざるをえず、MS-DOSでは暴走ハングアップのようなリセットするしかない異常を起こす危険が常に伴った

※この「TSRの使い方」の解説は、「Terminate and Stay Resident」の解説の一部です。
「TSRの使い方」を含む「Terminate and Stay Resident」の記事については、「Terminate and Stay Resident」の概要を参照ください。

ウィキペディア小見出し辞書の「TSRの使い方」の項目はプログラムで機械的に意味や本文を生成しているため、不適切な項目が含まれていることもあります。ご了承くださいませ。 お問い合わせ



英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

「TSRの使い方」の関連用語

TSRの使い方のお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



TSRの使い方のページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
ウィキペディアウィキペディア
Text is available under GNU Free Documentation License (GFDL).
Weblio辞書に掲載されている「ウィキペディア小見出し辞書」の記事は、WikipediaのTerminate and Stay Resident (改訂履歴)の記事を複製、再配布したものにあたり、GNU Free Documentation Licenseというライセンスの下で提供されています。

©2025 GRAS Group, Inc.RSS