linuxを使っていると出てくるターミナルという物がありますよね
これに似た用語で区別がつかないのですが・・・
・ターミナル(端末)
・ターミナルエミュレーター
・擬似端末
・コンソール
・仮想コンソール
・プロンプト
参考サイト
ちょっと古すぎる話はよく分からないのですが・・・歴史が絡んでいるようです。
端末(ターミナル)= 遠隔からコンピュータを利用する専用マシーン(自分は見たことありません。)
現在よく使用されているGUI画面のLinuxのターミナルの正式名称は、ターミナルエミュレータということですよね?(黒い画面のCUIのヤツですね)
コンソールと仮想コンソールとターミナルでは、何が違うんでしょうか??
コンソールとターミナルの違い
ちょっとよく分からないですね・・・
おまけに、ターミナルエミュレータには、さらに細かく分かれるようで、ttyとptsというのがでてきまして・・・
ttyとptsの違いはなんでしょうか??
参考サイト
tty = 実端末・・・なにそれ?
以前、標準出力のデバイスファイルを辿ったところptsというものに辿りついたのですが・・・・
さらに、擬似端末について調べると、ptyという物が出てきて、マスタースレイブのペアが・・・・・・
擬似端末 =「仮想コンソール、端末装置、シリアルポートハードウェアなどを使用しないテキスト端末のインターフェイスを提供する。」
って、ターミナルエミュレータのことですよね?
わかりにくいです・・・
これらの違いは一体何でしょうか?
歴史が絡むと話が難しいです。
どなたか教えてください。
気になる質問をクリップする
クリップした質問は、後からいつでもMYページで確認できます。
またクリップした質問に回答があった際、通知やメールを受け取ることができます。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。

回答5件
0
ベストアンサー
・ターミナル(端末)
これは物理的な専用端末機ですね。今は無きDECのVT100という端末機が典型的です。
端末エミュレータソフトがBIOSROMに焼かれた専用PCと思えば、当たらずといえども遠からず。
・ターミナルエミュレーター
これは、パソコン上で、あたかもVT100などのふりをするソフトウェアのことです。
パソコン+ターミナルエミュレーターでターミナルと同等です。
・擬似端末
これは、Unix/Linux上で、あたかも自分自身の端末のふりをするソフトウェア機構のことです。
多くのUnix/Linuxソフトウェアは、標準入力・標準出力を扱いますが、標準入力・標準出力では無く、そのプロセスに関連付いた端末を相手に入出力を行うソフトウェアがあります。
そういうソフトウェアに対して、端末のふりをしてくれるデバイスドライバです。
Unix/Linuxには、「端末プロセスグループ」という概念が有り、デーモン以外のプロセスにはかならずそれと関連付いた端末か擬似端末があります(制御端末ともいう)。
・コンソール
これは物理的なモニタ・キーボードのこと。PC・サーバーにUSBとかVGAとか、場合によってはシリアルポートで直接繋がれたモニタ・キーボードの事です。
・仮想コンソール
ネットワークでつながった他のPCで、あたかもコンソールのふりをしてくれるソフトウェアのことです。
当然、元のPC・サーバーにもそれをサポートする機構が必要です。
BIOS画面の表示とか、OSの起動などは、コンソールでしか行えませんが、ネットワーク越しにそれらを行うための物です。
・プロンプト
これは本来的には、端末に対して入力を促す(=プロンプトする)ための文字列です。「READY」とか「OK」とか、「C:>」とか。
投稿2017/05/16 14:16
総合スコア86285
0
追記:自分の見聞きしたことや解説なんかもみつつ回答してみましたが、考えてみるとこのあたり自分が勘違いしているような点もあるんじゃないかという気もしてきます。ご指摘などあれば突っ込んでいただけるとありがたいです。
今我々の身近にある計算機はパソコンという言い方をします。これはパーソナルコンピューターの略で「個人用コンピューター」ということです。
しかしUnix系OS(以下単にUnixといいます)はもともと個人用コンピューターで動かすものではなく、どっかの別室に計算機だけがドンとおいてあって、その横には管理者だけが操作を許されるコンソール端末(コンソールも端末の一種)が置かれてました。
一般の計算機ユーザーは計算機本体とは若干離れた場所にある端末(ディスプレーとキーボード)から計算機へログインして利用するという感じです。なんでこうなってたかというと計算機一台が個人で使うには高すぎたってことだと思います。数千万とか億のケタの計算機とかあったみたいです。今でもあるのかも知れません(スーパーコンピューターとか)。
最初のころのコンソールや端末はシリアル回線で計算機と繋がってました。現在のイーサーは1000Mbpsとかですが、シリアルは1Kbps~10Kbpsというオーダーの速度です。桁違いに遅かったわけで、1秒に数百文字とか転送するのがせいぜいなのでビットマップディスプレーなどではなく文字だけが表示されていたものだったわけです。さてコンソールや端末という用語はこれら昔のハードウェアのことを指すとまず考えるといいと思います。
今日のパソコンではディスプレー装置が10Gbpsのオーダーの通信線でつながってます。その速度があるので2000x1000とかのピクセルを毎秒100回ぐらいのリフレッシュレートでアニメーションできたりするわけです。しかし通信路はこれほど高速になりましたが、Unixでは前述したようなコンソールや端末と別の形のハードウェアは導入されず、昔ながらのコンソールや端末ハードウェアがあたかもそのまま存在するかのように扱っています。昔ハードウェアだったものは「高速な通信路・ビットマップディスプレーをそなえた計算機環境上でソフトウェアによりエミュレート」しているわけです。
という背景を踏まえて・・・
コンソールとターミナル
とりあえずパソコン上でUnixを動かすとコンソールとターミナルの違いは漠然とする気がしますが・・・
- コンソール
GUIなしでUnixを起動したとき、最初に立ち上がる画面をコンソールとして捉えればいいでしょう。それは昔のUnixを起動したときに計算機の横のコンソールを使って対話したときと同じ対話セッションを表すものだからで、デバイスファイルとしては/dev/consoleになるのでしょうか。しかしGUIモードで一般ユーザーとしてログインした端末上でsuとタイプして特権ユーザーとしての操作を始めることができますね。そのようなセッションで利用している際には端末エミュレーターは昔のコンソール上での操作と同様のことをしているので「コンソール上でこれこれをする」と書いてあってもそれは実は端末エミュレーター上でもできるものだということを知っていればいいのではないかと思います。(コンソールと端末を厳格に区別するより昔はこういう使い方をしていたらしいという程度の知識さえあれば特に混乱しないと思います)
- 端末
GUIモードで稼働している状態で一般ユーザーとしてログインしている場合、CUI操作をするために「端末(エミュレーター)」を起動すると一般ユーザーとしてログインされた状態で画面が開かれますが、それが端末と考えればいいと思います。
仮想端末
/dev/ttyとか/dev/ptsとかはデバイスファイルのことであり、前述のハードウェアの話とはまた違ってきますが単語が同じなので若干混乱するかも知れません。これらは「端末デバイスファイル」というべきものです。計算機に元々、ハードウェアとしてくっついていたような端末は/dev/ttyで管理されており、ハードとしてくっついているのではなく、リモート端末から回線を通じて接続されたようなセッションに対する端末は/dev/ptsにマッピングされていた・・・という程度の認識でよいと思います。
しかしX windowによるGUI環境で端末を起動すると/dev/ptsになってますね。これはXが端末エミュレーターの実現のために/dev/ttyではなく/dev/ptsを利用することを意味します。実際にどういう区別になっているのか自分にもきちんとわかりませんでした ><
わかりにくいです・・・
歴史的経緯があって古い概念や用語がずっと使われているこうしたものの場合、Unixがコンソールや端末をどのように扱っているかのバックグラウンド知識がない状態だと確かに分かりにくいと思います。自分も充分わかっているとは言えませんが、あちこちの解説を読むことによりある程度は見えてくると思います。
これらの違いを正確に把握するにはかなり広範囲な歴史やUnixとしての振る舞いの知識が前提になる気がするので、実際に区別する必要が生じたとき、あるいは特定の解説記事を読んでいて「これはどっちのことを指すんだろう」と疑問に思ったときに、あらためて具体的な質問をしたほうが分かりやすくなるかも知れません。一挙に理解しようとせずにだんだんと知るようにするのもよいと思えるのです。
投稿2017/05/15 00:02
編集2017/05/15 00:17総合スコア18404
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。

0
まず、コンピュータを個人で所有するなんて夢だった時代、大型電算機(それこそ部屋全体を占拠するような)に対してやり取りを行うために端末(ビデオターミナル)が作られました。キーボードとディスプレイを備え、場合によってはプリンタも拡張できる、当時としては画期的な代物です。(何せそれまでは穿孔テープやらタイプライターのお化けのようなプリンタやらを使ってましたから)
これが使いやすいため、以後のコンピュータでもこれが標準になりました。それは端末そのものが使われなくなった今でも同様で、端末をソフト的にエミュレートしてやりとりができるようになっています。これが端末エミュレータ(有名どころでは TeraTerm や PuTTY)です。また、この端末の事実上の標準が、DEC という会社が売っていた VT100 という端末です。端末エミュレータは事実上 VT100 エミュレータでもあります。
さて、端末は当初はコンピュータと直接ケーブルでつながっていました。この「直接つながっている端末」のことを、その置かれている場所も含めて「コンソール」と呼びます。
これに対して、コンピュータが進歩すると、電話回線やそれに類するものを使って、遠隔地からコンピュータを使うといった使い方が登場します。その場合でも遠隔地には端末があるわけですが、この「直接はつながっていない端末」のことを、「ターミナル」と呼ぶようになりました。
※LANに参加している端末からアクセスする場合も「ターミナル」です
Linux の GUI 環境は同じマシン上である場合、127.0.0.1 に対する LAN アクセスという形態をとるため、ターミナルとなります。※当然 LAN で別のマシンからでも X Window System を使って GUI アクセスできますが
現在我々が使う端末エミュレータは、ほぼ自動的に「ターミナル」です。
※ネットワーク機器(スイッチ)の保守用にシリアル接続でつなげるくらいですね、コンソールは
投稿2017/05/15 01:24
総合スコア13707
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
0
ひとつずつ回答しようかと思いましたが、似たようなことをまとめているサイトがあったのでリンクで割愛。
http://qiita.com/tadsan/items/441dcd910537d3f408e5
TTY端末で開発してた時代が懐かしい。
投稿2017/05/15 00:57
総合スコア17000
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。

0
とりあえず分かるだけ
・ターミナル(端末)・・・シリアル(イーサネット?)などでつながったCUI表示装置(VT-100など)
・ターミナルエミュレーター・・・Windowsの有名どころでは、Tera Term,rlogin
・コンソール・・・直付け端末(いわゆるTEXTモードで立ち上がるときに最初に情報が表示され、"login:"を表示する。・・・)
・プロンプト ・・・shellが出す入力促進表示(#、$、>など)
投稿2017/05/14 20:47
編集2017/05/14 20:49総合スコア6851
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
あなたの回答
tips
太字
斜体
打ち消し線
見出し
引用テキストの挿入
コードの挿入
リンクの挿入
リストの挿入
番号リストの挿入
表の挿入
水平線の挿入
プレビュー
質問の解決につながる回答をしましょう。 サンプルコードなど、より具体的な説明があると質問者の理解の助けになります。 また、読む側のことを考えた、分かりやすい文章を心がけましょう。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/05/16 14:39
2017/05/17 12:56
2017/05/17 13:15
2017/05/17 13:35
2017/05/17 13:40
2017/05/17 13:52
2017/05/17 13:59
2017/05/17 14:04
2017/05/17 14:06 編集
2017/05/17 14:11
2017/05/17 14:18 編集
2017/05/17 14:30
2017/05/17 14:50
2017/05/17 15:03
2017/05/17 15:07
2017/05/17 15:11
2017/05/17 15:17
2017/05/17 15:27
2017/05/17 15:28
2017/05/17 15:30
2017/05/17 15:36
2017/05/17 15:40
2017/05/17 15:50
2017/05/17 15:57 編集
2017/05/17 16:09
2017/05/17 16:15
2017/05/18 07:37
2017/05/19 16:57
2017/05/23 13:48
2017/05/23 13:53
2017/05/23 14:11
2017/05/23 14:33
2017/05/23 14:38
2017/05/23 14:42
2017/05/23 14:51
2017/05/23 14:54
2017/05/23 15:13
2017/05/23 15:17
2017/05/23 16:00
2017/05/23 16:14