コンソール

ウィキペディアから無料の百科事典

コンソール: console)とは制御卓、制御盤、操作卓などの意味を持つ英単語で、大型機械や電子機器などの操作や監視のための装置を一か所に集めた盤状あるいは卓状の装置のことだが、派生的な意味として、コンピュータの入出力装置や、文字の入出力による対話的な操作システム、オペレーティングシステム(OS)を操作・制御する画面などを表す[1]

大型コンピュータにおけるコンソール[編集]

IBM 1620のコンソール。キーボードもディスプレイも存在しない。接続されているのはキーボードではなく、プリンタの代わりであるコンソールタイプライタである。

狭義のコンソールとは、パーソナルコンピュータ(パソコン、PC)が登場する以前の、大型のコンピュータ(汎用機あるいはメインフレーム)やミニコンピュータ(ミニコン)に設けられた、運用(運転)の制御をするための装置を指す。コンピュータをオペレーターが操作するために必要な入出力装置を備えた制御盤である。

システムコンソール[編集]

Manchester Small-Scale Experimental Machine(1948年)やIBM 1620(1959年)と言った最初期のコンソールの時代は英数字の入出力が可能なキーボードやディスプレイが存在せず、フラットパネルに並んだトグルスイッチや電球のオン・オフからシステムの状態を読み取るしかなかったが、1960年代以降はキーボードとディスプレイを最初から備えているか、コンソール本体に搭載していなくてもシリアルポートを使ってキーボードとディスプレイを備えた端末を接続して使うのが一般化した。このようにテキストによる入出力が可能で、英数字の表示可能なディスプレイが搭載されてシステムのことを表示できるコンソールのことをシステムコンソールと呼ぶ。

システムコンソールとして当時に一般的に用いられたのは、CUI(CLI)を利用して対話的にコマンドを実行するためのキーボードビデオディスプレイを備えた操作卓であり、GUIは存在しなかった。そのためGUIの普及した現代においても、コンソールの機能をエミュレートする場合は普通CUIのシステムコンソールがエミュレートされる。

シリアルコンソール[編集]

シリアルコンソールの例。DECのビデオ表示端末VT100

ミニコンやサーバ等、キーボードやディスプレイを接続せずに運用する機器においては、シリアルポートを通じて接続された別の機器(ビデオ表示端末)がシステムコンソールとして利用される。これをシリアルコンソールと呼ぶ。DECのVT100(1978年)が代表的なシリアルコンソールで、1970年代から1980年代にかけて大いに普及したが、パーソナルコンピュータの普及以後はシステム標準ソフトウェアの一つとしてエミュレートにより実現されることが多い。

パーソナルコンピュータにおけるコンソール[編集]

IBMホスト・システムへアクセスする端末エミュレータ
パソコンにおけるコンソールの例。Knoppixのシステムコンソール

パーソナルコンピュータにおいては非常に小さなコンピュータシステムが事実上コンソールと一体化しているといって良く、これらがシステムの一部分として区別されることはほとんどない。その一方で、ソフトウェアを用いてシステム上に何らかのコンソールの機能を再現することが可能である。典型的にはCUIをサポートする端末エミュレータが挙げられるが、本来コンソールの提供する機能はCUIやGUIには限らないことに注意が必要である。

端末エミュレータ[編集]

シリアルコンソールとして利用されるビデオ表示端末の機能を、OS上のソフトウェアとしてエミュレートしたものを端末エミュレータまたは単にコンソールと呼ぶ。1970年代から1980年代にかけての代表的なビデオ表示端末であるDEC VT100の機能をエミュレートしたものが多い。

仮想コンソール[編集]

Unix系OSでは複数のコンソール(端末エミュレータ)をキーボードで切り替えることで仮想的に同時に走らせることができ、同時に複数の処理を行うことができる。これを仮想コンソールと呼ぶ。一般的なUnix系OSではデフォルトで6つの仮想コンソールを持つことができる。

システムコンソール[編集]

単にPCを起動したときに自分のPCのシステムの情報などを表示してくれている画面をシステムコンソールと呼んでいる。GUIを搭載したOSでも起動直後だけはCUIでシステムの情報を表示してくれる場合が多い。[要出典]

ビデオゲームにおけるコンソール[編集]

ビデオゲームコンソールの例、任天堂が発売したゲーム機『Wii』。バーチャルコンソールと呼ばれる旧機種の仮想コンソールを走らせることもできる。

ビデオゲーム用のコンピュータの制御卓はビデオゲームコンソール(日本語ではゲーム機)と呼ばれる。一般的にゲーム用のコントローラーではなくコンピュータシステム本体を指すことが多い。

CUIコンソール[編集]

いくつかのゲーム[要出典]ではゲーム中にコマンドライン風の画面を呼び出すことができる。チートコードを入力したりするのに使われる。

仮想コンソール[編集]

ゲーム機上でソフトウェアとして他のコンソール(ゲーム機)の機能をエミュレートしたものを仮想コンソール(バーチャルコンソール)と呼ぶ。主に互換性のない旧世代機のゲームをプレイできるようにするために実装されるが、CPUGPUなどシステムアーキテクチャが大きく異なるコンソールのエミュレートには十分に余裕を持ったハードウェア性能が必要とされるため、たとえハードウェア性能の劣る旧世代機であってもエミュレートできないこともある。

CUIコンソールの必要性[編集]

PCやワークステーション向けのデスクトップOS[注釈 1]では、特にMicrosoft Windows 95Microsoft Windows NTなどの登場以降、GUI環境が普及しているが、そのような環境においても仮想的なCUIコンソールを備えている場合がほとんどである。実装の方法は各OSによって異なるが、典型的にはアプリケーションソフトウェア(アプリケーション)のひとつとして、実画面上にウィンドウ表示または全画面表示される仮想CUI画面と実機のキーボードの組み合わせとして表現されている。

GUI環境でも採用される理由としては、

  • コマンドラインインタプリタ上で動作するシェルスクリプトによってOSの持つコマンドを対話的に実行したり、各種スクリプト言語動的言語)を使って手軽にプログラムを実行したりできる
  • CUIコンソール上で動作するCUIアプリケーション(コンソールアプリケーション)は、GUIアプリケーションに比べて作成・メンテナンスしやすい
  • GUIアプリケーションに比べて、比較的処理が高速で消費メモリが小さい
  • あるプログラムの実行結果(出力)を別のプログラムへの入力とするなど、組み合わせによる複雑な処理のパイプライン化や自動化が容易
  • 比較的移植しやすく、過去の資産を活用できる

などが挙げられる(上記はもちろん通常のCUI環境でもあてはまる)。

ライブラリのようなソフトウェア部品は、画面表示(ビュー層)を必要としないモデル層やロジックのみから構成されるものも多く、そのようなライブラリの機能を単体テストする場合は、自動化の観点からもコンソールアプリケーションのほうが有利である。

デスクトップOSではほとんどがCUIコンソールを備えているので、利用は簡単である。例えばWindows NT系の場合、「コマンド プロンプト」(cmd.exe)が用意されている。「ファイル名を指定して実行」から、もしくは「アクセサリ」または「Windows システム ツール」から起動できる(具体的な手順はOSバージョンによって異なる)。Mac OS X(OS X、macOS)以前のClassic Mac OSではGUIによる直感的な操作性を重視しており、ライトユーザーにとって分かりにくいCUIコンソールは持たなかった。UNIXベースで再設計されたMac OS X以降では「ターミナル」が用意されている。

一方、Linuxから派生したAndroidや、Darwinから派生したiOSのように、モバイルOSではたとえUnix系であってもCUIコンソールを持たないものもある。これは、モバイル機器の入力インターフェイスが複雑なオペレーションには適していないことのほか、システムへの変更を簡単に加えることができないようにするというセキュリティ的な理由もある。

CUIのコンソールが用いられる代表的なOS[編集]

脚注[編集]

注釈[編集]

  1. ^ Microsoft WindowsmacOSは、デスクトップPC版とノートPC版とで基本的なアーキテクチャに差はなく、搭載ハードウェアを問わずデスクトップOSと総称される。

出典[編集]

関連項目[編集]