銀行の切り替えとは
バンクスイッチング技術は、コンピューターシステムが他の方法では対応できないより多くのメモリにアクセスする方法を提供します。 コンピュータプロセッサが特定のアドレス可能なメモリスペースに制限されている場合、プロセッサが使用するメモリの追加バンクを設定できます。 これらの個別のバンクを使用して、コンピューターの起動時に使用される読み取り専用メモリ(ROM)などの使用されなくなったコードから切り替えたり、システム上の複数のユーザー用にメモリのバンクを開いたり、システム上の他のデバイス。
バンクスイッチングは、プロセッサを交換せずに1980年代にコンピューターを稼働させ続けるための費用対効果の高い方法として生まれました。 古い8ビットコンピューターシステムで多くの使用が見つかり、メモリを追加するだけでコンピューターの耐用年数が延びました。 新しいシステムが開発されると、古いシステムで作成されたプログラムを引き続き実行できるように、銀行の切り替え方法も実装しました。
バンクスイッチングが機能する方法は、いわゆるラッチテクニックを実装することです。 ラッチは、実際にはコンピュータープロセッサが使用しているアドレス空間を切り替えるスイッチのようなものです。 たとえば、8ビットコンピュータは16ビットアドレス空間を使用します。つまり、常に64Kまたは65,536の個々のメモリ位置でしか動作できません。 ソフトウェアまたはハードウェアによってラッチが追加されると、メモリの複数のバンクを切り替えることができます。
ラッチはプロセッサとは別にセットアップされ、バンクの切り替えは外部操作の手に委ねられます。 場合によっては、メモリアドレスの上位レジスタに少し隠れているだけで、必要に応じてコンピューターのオペレーティングシステムまたは他のソフトウェアによって切り替えられます。 メモリがいっぱいになると、プロセッサは上部のビットをチェックして、別のバンクに切り替えることができます。 ラッチをデコードする他の方法には、別のメモリバンクへのアクセスを許可するビットアドレス指定可能なポートが含まれていました。
銀行の切り替えは、その時代から多くのビデオゲーム機にも導入されました。 ROMカートリッジには、追加のハードウェアが組み込まれており、コンソールを限られた使用可能なメモリスペースを超えて拡張し、ゲームのグラフィックスを向上させ、追加のステージでゲームを長時間プレイできます。 しかし、技術と技術が改善されると、この方法は使用されなくなりました。 いくつかの最新のオペレーティングシステムは、古いソフトウェアを操作するためにバンクスイッチングをエミュレートできます。 他のデバイスまたはシステムに組み込まれ、通常は単一のタスクを実行するように設計された多くの最新の組み込みコンピューターシステムも、費用対効果と使いやすさからバンクスイッチングを使用しています。