メモリーとメモリー

C言語ラーを目指してる日々が続いてます。でも疑問に思うのはプログラミングにあまり関わってないような気がするのだが・・・

今回はメモリーとメモリーということだけど、こないだの入門書をとりあえず最後まで読んだのだけど、買ったソケットプログラミングの本を再び読み返してまだまだ足りないなあという感想だった。んで、入門書をとりあえず最後まで読むだけ読んだら、足りないところはポインタと構造体というものだった。

ポインタというとC言語を習う学生にとって最大の難関ってことらしい。学生に限った話ではないけどね~。

たけけんが行ってた学校では、あいまいのままに先に進んでもどうせまた配列に戻ってくるから配列までしかやらないってことだったんで(記憶によればだが)、ポインタとか構造体は未知のアウターゾーンなのだ。習ってないのは確かだ。

それは置いといて、ポインタをちょこっと読んだのだけど、%pでアドレスを見ることが出来るんだが、今の環境はVMware上のScientific Linuxだから、これは仮想メモリのアドレスだよねってのが疑問に思ったこと。

ここで言う仮想メモリはスワップ領域ではなくて、ゲストOSのメモリを指してます。

困ったときはグーグル師匠の出番だ。

KVM でオーバーコミットを行う

KVMではCPU、メモリーのオーバーコミットが可能で、物理メモリ以上のメモリを割り当てる事が可能なのだ!という事らしい。

ということは、エミューレートされたマシン上でのメモリのアドレスが出ているわけだな。

仮想マシンと物理マシンとじゃメモリの使われ方って違うのかなって一瞬思ったけど、完全仮想化だったら、まあ一緒か。エミュレートされたものか実際のメモリなのかの違いなだけで。
だけどオーバーヘッドってのがあるみたいだから、物理メモリとは何かが違うはずなのだが。

コンピュータなんて理屈のかたまりなんだから、かならず理屈はわかるもののはずだ。
いっつも使ってるApacheだってCで出来てるんだからにゃあ。

 

Similar Posts:


2 thoughts on “メモリーとメモリー

  1. かぼちゃ

    こんにちは,先日フォローしていただいたかぼちゃです.

    ソケットプログラミングでは構造体(のアドレス,またそのキャスト)は捨てられない要素ですね.
    プロトコルにそって関数群をセルフで実装するなら話は別ですが….

    Reply
    1. たけけん Post author

      かぼちゃさん、はじめまして。
      どうも、サーバーの設定が原因でご迷惑おかけしたようで大変申し訳ございませんでした。m__m

      コメントありがとうございます!
      リンクまでしていただいてありがとうございます><
      こちらもこっそりリンク追加させていただきました。

      プログラミングはだいぶ久し振りの再入門ですけど、これから頑張っていこうと思っています。!(^^)!
      かぼちゃさんはお若いのに素晴らしいですね。
      頑張ってくださいね。
      またかぼちゃさんのブログの方にもお邪魔させていただきます~。

      Reply

Leave a Reply

Your email address will not be published. Required fields are marked *