外出自粛中でも楽しく過ごす!QAまとめ>>

物理アドレスと論理アドレスの違いが今一わかりません。

というよりイメージできません…

詳しい方お願いします。

このQ&Aに関連する最新のQ&A

A 回答 (4件)

> 実際の位置を示すものが物理アドレス、勝手に番地をつけたものが論理アドレスという理解でいいでしょうか


そうです。

少し難しく言えば、物理を絶対、論理を相対という言葉に置き換えて説明する人もいます。
見方が変われば変化するものを論理アドレスといいます。前回のデュアルブートのときの起動している自分のパーティションを「C」パーティションとするというのがそうです。
    • good
    • 0
この回答へのお礼

回答ありがとうございます!
物理アドレスは固定、論理アドレスは変化するものなのですね!

お礼日時:2011/06/04 09:42

> 物理アドレスと論理アドレスの違いが今一わかりません。


> というよりイメージできません…

どういう例えであればイメージできるかなんですが、住所表示はどうでしょうか。
一般的に、公的機関の住所表示は、何丁目何番何号ということで一意的に区別されております。
例えば団地などでは、自治体の班を設定しています。
何々班の班長といった具合です。何班の1番、2番といいます。
このとき前者を物理アドレスといい、後者を論理アドレスと呼びます。

コンピュータの場合、実際に接続されているアドレスと、OS固有に分類しやすいように勝手につけた呼び名があります。
このOSによって勝手に付けられた呼称のことを論理アドレスと呼ぶのが一般的です。

Windowsで言えば、ドライブ名などは、Cパーティションという論理アドレスになります。
実際は、内蔵HDDの第一パーティションというのが物理アドレスになります。

これは、起動したOSにより変更されます。
XP、VISTA、7と3個のOSをデュアルブートした場合は、今起動している自分のパーティションが、"C"というパーティションとして論理アドレスを勝手に割り付けています。
この「勝手に割り付けられた呼称」を論理アドレスといいます。
    • good
    • 0
この回答へのお礼

回答ありがとうございます。
実際の位置を示すものが物理アドレス、勝手に番地をつけたものが論理アドレスという理解でいいでしょうか?

お礼日時:2011/06/04 02:09

何についてのことなのかをはっきり書かないと、期待する回答が得られるかどうかわかりませんよ。



たとえば、MMUに関することであれば、論理アドレスと仮想アドレスは同じ意味です。
仮想アドレスの何番地から、物理アドレスの何番地を、何バイト割り付けるかをMMUに設定することで、メモリの再配置が可能になります。
単純なバンク切り替えの場合でも同じことがいえます。
    • good
    • 0

http://systemwalker.fujitsu.com/jp/man/lifecycle …
のようにクラスタリング構成を取るときに物理アドレスと論理アドレスを使います

この図で言えば、業務サーバ2台にそれぞれ固定で割り当てられているのが物理アドレスです
論理アドレスは運用系にくくりついているアドレスで、フェイルオーバが起きて運用系と待機系が入れ替わると、それに合わせて右のサーバへ移動します
ということで、常に論理アドレスでサーバにアクセスすれば運用系にアクセスできる、ということになります
    • good
    • 0

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

Q論理アドレスというのは何でしょうか?

論理アドレスというのは何でしょうか?
どういう意味があるのでしょうか?
またはどういう役割を果たしているのでしょうか?

Aベストアンサー

>論理アドレスというのは何でしょうか?
>どういう意味があるのでしょうか?

 コンピュータの中でプログラムを動作するには、メモリと呼ばれる場所で
プログラムが実行されます。ここには、プログラムを実行させる為のたくさんの命令が置かれている場所や、その命令によって読み込まれたり変更されたりするデータが置かれる場所があります。この命令やデータがどこに有るのか、分かるようにするのがアドレスです。
 このアドレスは、論理アドレスと物理アドレスの2種類あります。
 物理アドレスが実際に、コンピュータが命令やデータを扱っているアドレス
なのですが、コンピュータを効率よく動作させる為にに、場所を移動してしまう事を行います。(スワップと言います。)つまり、例えば、Aと言う命令が
あったとします。このAの命令が置かれている、アドレスが時間がたつとコンピュータが色々な場所に移動してしまいます。
 コンピュータのプログラムを作る人は、この物理アドレスを使って、
コンピュータに処理をさせようとしたら、大変なことになってしまします。
(実際には、不可能だとおもいますが)そのため、Aのアドレスはある1つの
値で変わらないように決めたアドレスが論理アドレスになります。

>またはどういう役割を果たしているのでしょうか?

 つまり、つまり人間に分かりやすいアドレスが論理アドレスで、コンピュータが、動く時に使っているアドレスが、物理アドレスになります。

 この論理アドレスと物理アドレスとのデータ変換を行う装置がコンピュータに入っていて、人とコンピュータの仲立ちを行っています。

>論理アドレスというのは何でしょうか?
>どういう意味があるのでしょうか?

 コンピュータの中でプログラムを動作するには、メモリと呼ばれる場所で
プログラムが実行されます。ここには、プログラムを実行させる為のたくさんの命令が置かれている場所や、その命令によって読み込まれたり変更されたりするデータが置かれる場所があります。この命令やデータがどこに有るのか、分かるようにするのがアドレスです。
 このアドレスは、論理アドレスと物理アドレスの2種類あります。
 物理アドレスが...続きを読む

Qpingでポートの指定

pingでIPアドレスを指定して、通信できるかどうかというのは
よく使いますが、pingでポートを指定して応答するかどうかは調べられるのでしょうか?

よろしくお願いします

Aベストアンサー

pingを含むICMPというプロトコルは、OSIの7レイヤで言うところのL2(同一セグメント内通信)とL3(IPルーティングされた通信)の両方にまたがる、ちょっと珍しいプロトコルです。

IPアドレスは指定できますが、別サブネットに属するIPアドレスに到達できればL3通信、できなければゲートウェイと呼ばれる同一サブネットに属する中継装置からの回答を得るという点でL2(MAC通信ではなく、同一セグメント内通信という意味)通信です。

ポート番号はL4で使用されるアドレスですから、L4機能の疎通確認はping(を含むICMP)ではできません。

FTPの疎通確認であれば、クライアントからサーバに対するTCP/21通信(FTP-CMD)が可能であること(サーバからクライアントへのTCP/21からの応答を含む)+サーバからクライアントに対するTCP/20通信(FTP-DATA)が可能であること(クライアントからサーバへのTCP/21からの応答を含む)が必要でしょう。

監視ソフトによるものであれば、
・クライアントからサーバへのログイン(TCP/21)
・クライアントからサーバへのlsの結果(TCP/20)
で確認すればよいでしょう。

pingを含むICMPというプロトコルは、OSIの7レイヤで言うところのL2(同一セグメント内通信)とL3(IPルーティングされた通信)の両方にまたがる、ちょっと珍しいプロトコルです。

IPアドレスは指定できますが、別サブネットに属するIPアドレスに到達できればL3通信、できなければゲートウェイと呼ばれる同一サブネットに属する中継装置からの回答を得るという点でL2(MAC通信ではなく、同一セグメント内通信という意味)通信です。

ポート番号はL4で使用されるアドレスですから、L4機能の疎通確認はping(を含む...続きを読む

QIPアドレス「0/16」とか「0/24」って何?

IPアドレスの表示で
10.1.0.0/16とか10.1.1.0/24とか
ありますが、
この「0/16」「0/24」っていったい何のことでしょうか?
インターネットで調べても見つかりません!
助けて下さい!!

Aベストアンサー

IPアドレスは32ビットであり、ネットワークアドレス(通称はサブネット)と、ホストアドレスに分ける事ができます。
ご質問の/24等の表記は、24ビットマスクと表現され、32ビット中の24ビットがネットワークアドレス部である事を示しています。正確に表現するなら、10.1.1.0/255.255.255.0になり、10.1.1.の部分がネットワーク(サブネット)となり、そのネットワーク内には8ビット分のホストアドレスが存在できる事になります。つまり、10.1.1.1~10.1.1.254の254個です。10.1.1.0は一般的には使用せず、10.1.1.255はサブネット内ブロードキャストアドレスなので使用できません。
同一ネットワーク内の端末同士(上記の10.1.1.1~10.1.1.254に相当)は、ARPと言うプロトコルでIPアドレスからMACアドレスを調べ、直接通信します。一方、異なるネットワーク間で通信する場合、ルータが中継して通信します。例えば、24ビットマスクのネットワークで、10.1.1.10の端末と10.1.2.30の端末は、ネットワークが10.1.1.0/24と10.1.2.0/24であり、異なるネットワークとなりますので、先程のARPでMACアドレスを調べて通信する事ができません。この様に、異なるネットワーク間を中継する役割がルータとなります。

IPアドレスは32ビットであり、ネットワークアドレス(通称はサブネット)と、ホストアドレスに分ける事ができます。
ご質問の/24等の表記は、24ビットマスクと表現され、32ビット中の24ビットがネットワークアドレス部である事を示しています。正確に表現するなら、10.1.1.0/255.255.255.0になり、10.1.1.の部分がネットワーク(サブネット)となり、そのネットワーク内には8ビット分のホストアドレスが存在できる事になります。つまり、10.1.1.1~10.1.1.254の254個です。10.1.1.0は一般的には使用せず、10.1.1...続きを読む

Qポートの80と443

こちらのサービス(https://secure.logmein.com/)を利用すると、インターネットを見られるサーバーのポートの80と443が空いていればルータやファイアウォールに特段の設定なく外部からサーバーを操作できるそうですが、逆にサーバーのポートの80や443を空けることには何か危険性があるのでしょうか。

Aベストアンサー

ポート80は一般的なHTTP、ポート443はHTTPSです。
この2つのポートがあいていなければインターネット接続(WEBブラウジング)は出来ません。
ですから、ほとんどのファイアウォールでこのポートは開いています。(インターネット接続を制限している社内LANでは当然閉じていますが)

ちなみに、よく使うポートとしてはFTPで20、21、SMTP(送信メール)で25、受信メールPOP3で110あたりです。セキュリティポリシー上、この辺は制限される事も多いですが、HTTP 80、HTTPS(暗号化用)443は通常閉じません。


危険性?
WEBプロトコルを使ってFTP的なファイル転送(WebDAV)やVPN等も出来るようになっています。当然そこにはある種の危険はつきものですが、WEBブラウジングに伴う危険と大きく変わりません。ウィルス等に感染していればこの2つのポートだけでも相当危険でしょうね。

参考まで。

Qシェルコマンドの 2>&1 とはどういう意味でしょうか?

command > /dev/null 2>&1

というコマンドがありましたが意味がわからないので教えてください。
> /dev/null
部分は、出力を捨てるということだと思いますが、
2>&1
部分がわからないです。

Aベストアンサー

Unix ではファイル記述子というのがあって、番号、多くの場合 0, 1, 2 が使われます。0は入力、1は普通のメッセージ出力、2はエラーメッセージの出力というように使い分けされています。

さて、ご質問ですが、command > /dev/null という部分は、command の普通のメッセージ(ファイル記述子1番)を /dev/null というファイル(このファイルは特殊で、ここに出力された内容は全て捨てられます)に出力されます。で、残る "2>&1" という部分ですが、これは2番のファイル記述子を1番というファイル記述子にする、という意味になります。

従いまして、"command > /dev/null 2>&1" とすることで command からの全てのメッセージは(/dev/nullに)捨てられる、つまり、エラーがあろうがなかろうが出力されるメッセージは何もないことになります。

Q起動しているサービスを確認するコマンド

初歩的な質問で恐縮ですが、ご教示いただけますと幸いです。

起動しているサービスを確認するために以下の2つのコマンドを打ってみるのですが、結果(出て来るサービス名)が違います。
このコマンドの違いについてご教示いただけますでしょうか。

(1)service --status-all
(2)chkconfig --list

Aベストアンサー

(1)service --status-all

サービスの現在のステータスを調べるコマンド

(2)chkconfig --list

OSのブート時に自動起動するサービスを調べるコマンド

違いが出るのは、
・ブート後に手動あるいは他のコマンドから起動したサービス
・ブート後に手動あるいは他のコマンドから、あるいはエラーで停止したサービス
・ブート後に実行はされるがすぐに停止して常駐しないサービス (ntpdate とか)

あるいは、(1)ではサービス名が表示されない物もあるので、どのサービスがどんなステータス出力をするのか知っておく必要もありますね。(service network statusとか)

Q「いずれか」と「いづれか」どっちが正しい!?

教えて下さいっ!
”どちらか”と言う意味の「いずれか」のかな表記として
「いずれか」と「いづれか」のどちらが正しいのでしょう???

私は「いずれか」だと思うんですが、辞書に「いずれか・いづ--。」と書いてあり、???になってしまいました。
どちらでもいいってことでしょうか?

Aベストアンサー

「いずれか」が正しいです.
「いづれ」は「いずれ」の歴史的かな遣いですので,昔は「いづれ」が使われていましたが,現代では「いずれ」で統一することになっていますので,「いずれ」が正しいです.

QFTPコマンドでディレクトリごとファイル移動できるコマンドはありますか?

タイトルどおりなのですが、FTPでファイルを転送する際に、サブフォルダを含むディレクトリごとファイル転送するコマンドはありますでしょうか。
ディレクトリの中にあるすべてのファイルを移動したいのですが、サブフォルダがたくさんあるので、わざわざディレクトリの場所へ移動してmputを繰り返すのはめんどうで仕方ありません。
よろしくお願いします。

Aベストアンサー

ご使用になるOS環境が書いてないのですが、Linux,BSD等ならncftpで、get -R dir。
Windowsならffftpを使えば良いと思います。

Qsedなどで、特定の文字列の後の文字列を抽出したい

sedなどで、特定の文字列の後の文字列を抽出したい

シェルスクリプト内で、sedなどを使って特定の文字列の後の文字列を抽出したいのですが、どうすればいいでしょうか?

たとえば、abcXYZ123defghiのなかから、XYZの後の「123」を抜き出したいです。

echo abcXYZ123defghi | sed ...

のようにして実行させたいです。

Aベストアンサー

日本語対応sedだと日本語数字混じりでもできますね。

echo abcXYZ12357defghi | sed -e 's/^.*XYZ\([0-90-9]*\).*$/\1/' -e 'y/0123456789/0123456789/'
12357

※ 使っている日本語コードの指定は必要かも(例えば、 --ctype=EUC)

echo abcXYZ12357defghi | sed -e 's/^.*XYZ\([0-90-9]*\).*$/\1/'
12357

※ 入力フォームに書いている時はASCIIと日本語の判別がし易いけど回答見るとわかり難いですね。後ろの例での結果57とy/0123456789/の数字部分が日本語です。

Qinterface,extend,implementのちがい

お世話になります、

Javaを勉強しているのですが、
interface,extend,implementの使い分けがわかりません。

私の解釈としては、
(1)interfaceは、グローバル変数の定義、グローバルメソッドの定義(実装はしない)。

(2)extendは、extendクラスを親クラスとして親クラスの機能を使用できる。

(3)implementは…,implementもextendと同じような意味だと解釈しているんですが、違う点は、implementで定義してあるメソッドは、使用しなくても、実装しなければならないという点でしょうか?

とにかくこの3つのを使い分けるコツとかあれば教えてください。
よろしくお願いします。

Aベストアンサー

バラバラに理解してもしょうがないッス。

まず、
(1)interface と implements
(2)class と extends

が対応しているわけっす。

JavaはC++と違って、比較的言語仕様を「簡単」にしたので「多重継承」という
概念がないです。
多重継承っていうのは、複数のクラスを親クラスにして継承するってことですね。

たとえば、 「TextFieldクラス」と「Japaneseクラス」を多重継承すると、
「JTextFieldクラス」ができるっていうのが自然な考え方でしょう?

まぁ、例えば、日本語クラスであれば、getStringLength()メソッドなどが
あったほうが良いでしょうか。
このgetStringLength()メソッドは、2バイト文字も1バイト文字も「1文字」
と数えてくれると言う点で、まさに、日本語クラス用のメソッドだと言えるでしょう。

例えば、Java的に記述すると、、、
class Japanese {
public int getStringLength() {
  ・・・
return strlength;
 }
 ・・・
}

class TextField {
・・・
}

class JTextField extends TextField, extends Japanese {
・・・・
}

C++ではそのように実装するでしょう。
しかし、Javaにはこのような高度な機能はありません。

そこで、生まれた苦肉の策が、「interfaceとimplements」です。

interface Japanese {
public int getStringLength(); // interfaceは実装を含まない!
                 // すなわち「実装の継承」ができるわけではない。
}

class TextField {
・・・
}

class JTextField extends TextField implements Japanese {
・・・・
public int getStringLength() {
  ・・・
return strlength; //implementsの実装を「各クラスで」実装してやる必要がある。
 }
}


結局のところ、Javaでは、複数のクラスを親クラスには持ち得ないため、継承できなかったクラスは「各クラスで実装してやる必要性」があるのです。


ではどのように使うのが効果的か?

なまえのままです。「代表的なインターフェイス」にたいしてinterfaceを使うのが良いと思います。

例えば、プレイヤー系であれば、ビデオ・コンポ・ウォークマン・などにかかわらず、
interface controlpanel {
public play();
public stop();
public next();
public back();
}
というような基本的インターフェイスを「持っているべき」です。

こうすることで、それぞれのクラス宣言の際に、これらの「インターフェイスを持っているべきであり、実装されるべきである」ということを「強く暗示」することができます。
class videoplayer extends player implements controlpanel {
public play() {・・・}
public stop() {・・・}
public next() {・・・}
public back() {・・・}
}

こうすることで、同様のクラスを作成するユーザーは、
「プレイヤー系は、4つ操作が出来るコントロールパネルをインターフェイスとして持つべきなのだな!?」という暗示を受け取り、自分のクラスでもそれを模倣するでしょう。

class mp3player extends player implements controlpanel {
public play() {・・・}
public stop() {・・・}
public next() {・・・}
public back() {・・・}
}

また、これらのクラスを使用するユーザーも、「implements controlpanel」という
表記を見て、「4つの基本操作は押さえられているのだな!」という基本中の基本動作を抑えることが出来ます。

まとめると、クラスに「こういう特徴もたしてください!」「こういう特徴持ってますよ!」という一種の暗示的警告や方向性を与えることができるわけですね。

バラバラに理解してもしょうがないッス。

まず、
(1)interface と implements
(2)class と extends

が対応しているわけっす。

JavaはC++と違って、比較的言語仕様を「簡単」にしたので「多重継承」という
概念がないです。
多重継承っていうのは、複数のクラスを親クラスにして継承するってことですね。

たとえば、 「TextFieldクラス」と「Japaneseクラス」を多重継承すると、
「JTextFieldクラス」ができるっていうのが自然な考え方でしょう?

まぁ、例えば、日本語クラスであれば...続きを読む


このQ&Aを見た人がよく見るQ&A

人気Q&Aランキング