リニアアドレス

プログラムから見たメモリのアドレスだよ
「物理アドレス」と対比されるよ
簡単に書くよ
リニアアドレス(英:linear address)とは
「仮想アドレス」のこと。
用語の中身としては
プログラムから見た、メモリのアドレスのこと
です。

詳しく書くよ
順番に見ていきましょう。
メモリは「パソコンさんが作業するときに使う机」ね。
パソコンさんは、お仕事道具をメモリの上に広げて、えっちらおっちらと働きます。
パソコンさんが使う机(メモリ)は、上から見るとマス目で区切られています。
そして、それぞれのマス目には、使いやすいように番号が振られています。
この「マス目に振られた番号」を「アドレス」と言います。
例えば、13番のマス目にミカンを置いたとしましょう。
この状況を指して
13番アドレスにミカンを置いた
と表現したりします。
さて、この机のマス目に振られた番号ですが
1.プログラムから見たときの番号
2.実際に割り当てられている番号
は一致しません。
プログラムさんが「1番アドレスにミカンを置いたぜ!」と思っても、実際には100番アドレスに置かれていたりするのです。
もう少し細かく見ておきます。
「こまけぇこたぁいいんだよ!!」な人は適当に読み流してください。
例えば、そうですね。
ここにミカンを持ったプログラムさんがいます。
プログラムさんは、ミカンを机の上に置きたいです。
このとき、プログラムさんはミカンを机の上に直接は置きません。
「メモリ管理ユニット(MMU)」と呼ばれるやつに「このミカンを机の上に置いておくれ」と依頼するのです。
プログラムさんは、メモリ管理ユニットさんに「このミカンを1番アドレスに置いてよ」と依頼しました。
この依頼を受けたメモリ管理ユニットさんは、ミカンを1番アドレスに……置くとは限りません。
メモリ管理ユニットさんの気分で勝手に決めます。
おっと、どうやら今回は13番アドレスにミカンを置いたようですね。
それからしばらくして、プログラムさんが戻ってきました。
プログラムさんは、どうやらお腹が空いたようです。
メモリ管理ユニットさんに「1番アドレスに置いてもらった例のミカンを持ってきてよ」と依頼しました。
この依頼を受けたメモリ管理ユニットさんは、しれっと13番アドレスからミカンを持ってきます。
そして「ほれ、1番アドレスに置いておいたミカンだよ」と渡しました。
ここで、ミカンを置いたマス目の番号に注目してください。
プログラムさんは、ミカンを「1番」のマス目に置いたつもりになっています。
プログラムさんの視点で見れば、メモリ管理ユニットさんを経由したとはいえ、1番のマス目に置いたミカンを1番のマス目から持っていきました。
実際には、どうでしょう?
ミカンは「13番」のマス目に置かれていましたよね。
これが、プログラムから見たときの番号と実際に割り当てられている番号が一致しない理屈です。
以上を踏まえて、机のマス目に振られた番号(メモリのアドレス)
1.プログラムから見たときの番号
2.実際に割り当てられている番号
のうち
1.プログラムから見たときの番号
が「リニアアドレス」です。
リニアアドレスは「論理アドレス」や「仮想アドレス」などと呼ばれる場合もあります。
あと、ついでなので書いておくと
2.実際に割り当てられている番号
は「物理アドレス」と呼ばれています。
気が向いたら、併せて覚えてあげてください。

一言でまとめるよ
まぁ「リニアアドレス」って単語が出てきたら「プログラムから見たメモリのアドレスなんだな~」と、お考えください。

おまけ
■訳してみるよ
「linear(リニア)」の意味は「線の」とか「線形の」とか「直線の」とかです。
「address(アドレス)」の意味は「住所」とかです。
何となくくっつけると
線の住所
となります。
よく分かりませんね。