• ベストアンサー

理解度測定の為に、此の質問文を纏めました。

もし各プロセスが再配置可能になっていましたら、 たとえ(実行状態から実行可能状態への移行の時に)当該プロセスが補助記憶装置へとスワップアウトされましても、 CPU利用権が割り当てられ得る段階で、 空きアドレスへのスワップインが叶い得る、 という意味合いで、『再配置可能』の性質が評価されているのでしょうか?

質問者が選んだベストアンサー

  • ベストアンサー
  • DarkMoon
  • ベストアンサー率21% (225/1046)
回答No.1

スワップインやスワップアウトなどの、いわゆる仮想記憶の機構とは無関係だと思います。 http://www.sophia-it.com/content/%E5%86%8D%E9%85%8D%E7%BD%AE%E5%8F%AF%E8%83%BD%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%A0 このURLでの説明をもう少しかみ砕いて説明すると、 メモリ上のアドレスに、100,200,300,400,500があるとします。 プログラム上でメモリアドレスを直接数値で指定してしまう、 例えば「メモリアドレス300を読み出せ」というプログラムをしてしまうと そのプログラムはメモリ上の好きな場所にロードさせたくても 他のメモリに読み込まれる命令やデータとの兼ね合いで メモリ上の好きな場所(その時空いている場所)に配置したくても出来ません。 ですが、メモリアドレスを相対的に指定する、例えば 「これから配置するメモリアドレスの基準値をxとしろ」 「メモリアドレスx+100を読み出せ」 なら、メモリアドレスの基準値を0にしようが100にしようが400にしようが 先述のプログラムと違って他に読み込まれる命令やデータのことを気にしなくていいです。 この、メモリアドレスを自由に決められるという性質が 「再配置可能」だと私は思います。

littlekids
質問者

お礼

畏れ入りますが、 下記のページでも御教授を賜れませんでしょうか? http://okwave.jp/qa/q7752239.html

littlekids
質問者

補足

有り難う御座います。 そもそも、 実行可能状態のプロセスが再配置されるのではないでしょうか?

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • 仮想記憶の仕組み

    仮想記憶の仕組みでスワップ領域には分割したプロセスが置かれ、セグメント番号が付けられたりします。 もし、必要なプロセスの一部分がメインメモリにない場合このスワップ領域からメインメモリにロードしないといけませんよね。 そこで補助記憶装置上の スワップ領域にある必要とするプロセスの一部分を、探し出すとき、ファイルシステム(FAT)を使うのでしょうか? またそれならクラスタ番号とセグメント番号は対応されて管理されてるのでしょうか。

  • テスト勉強で困っています

    オペレーティングシステムでプロセスを実行するためには主記憶と処理装置の両方が必要となりますが、スケジューリングにおいて二つを同時に割り当てるのではなく、主記憶の割り当てをしてから、処理装置の割り当てをするという2段階を採用するのはどうしてですか?

  • CPUについて教えて下さい。

    CPUについてこれまで調べて分かったことは、  ・処理能力の目安となる数値として、クロック周波数を用いる  ・レジスタに記憶されているデータに対して演算を行う  ・レジスタからメモリーやその他の部品にデータを転送する  ・メモリやその他の部品から、レジスタにデータを転送する があります。 それ以外に・・・  (1)補助記憶装置からのみ命令を読み取り、命令を実行する  (2)内部に主記憶装置(メモリ)を持つ  (3)CPUは演算を行い、制御機能は持たない  (4)主記憶が多ければ多いほどCPUの動作は遅くなる  (5)クロック信号が発生する間隔が短いほど、CPUの動作は高速になる この中から最も適切なものを1つ選ばなくてはなりません。 (1)は“補助記憶装置からのみ”というのが違うと思います。 それ以外はちょっと分からないので、どなたかお知恵をかして下さい。 解説も添えてもらえると助かります。 回答よろしくお願いします!

  • psコマンドについて

    CentOS6で、ps auxを実行した時、わからないことが3点あります。 PSコマンドにてssshの結果を取得しました 【結果】 USER  PID %CPU %MEM VSZ   RSS  TTY  STAT  START  TIME  COMMAND root   1010   0.0   0.0 1612  1172   ?  Ss    16:16    0:00  /usr/sbin/sshd 【質問】 1点目:STATに表示される、「Ss」について  二つSが付く、「Ss」の意味はどういうことなのでしょうか? 2点目:STATに表示される、「W」について  色々調べてみると、「スワップアウトしたプロセス」ということがわかるのですが  「スワップアウトしたプロセスとはどういうことなのでしょうか?」  データみたいにHDDに退避されたプロセス?ということなのでしょうか?  よって、処理速度が遅くなったりする? 3点目:TTYの「?」について  制御端末がない場合のプロセスが、 ?でが出力される。  ということはわかったのですが、このsshdは自動起動設定にしているため  「?」になったのでしょうか? ご教授お願いします。

  • SE初心者の質問(ページング編)

    仮想メモリと実メモリの間のやりとりを ページングというと思いますが、 私の持っている書籍には、 「実メモリ」と「仮想メモリ」を部分的にスワップしながら プログラムを実行する。 Windowsは、仮想記憶の仕組みが「ページング方式」である。 と書いています。 もう、質問内容がおわかりかもしれませんが、 「ページング」と「スワップ」の違いがわかりません。 IT用語辞典でも、スワップはプロセス単位で ページングはページ単位、と書いていますが、 やっていること(目的)は同じようにみうけられます。 どのような使い分けがなされているのでしょうか? また、各々の仕組みも違うのでしょうか?

  • 私の参考書には関係が記載されていません。

    ディスパッチャによって特定のスレッドへとCPUが割り当てられました際に、 もし何らかのデータの必要性が明らかになったのでしたら、其の時点で、 CPUがキャッシュメモリに問い合わせていき、 更にそれでも必要なデータが見付からない場合には、 主記憶装置・補助記憶装置に問い合わせるのでしょうか? キャッシュメモリとOSとMMUとの関係が分からないものですから、 畏れ入りますが、教えて下さいませ。

  • ユーザごとにCPUの占有率を制限

    題名の通りですが、たとえば、ユーザが利用できるCPUの利用率を最大50%までしか使えないようにしたい場合、どのようにすればよいですか? というのも、CPUの負荷下におけるプロセスの速度評価を行うために、無限ループをするプロセスを別に走らせて行っていたのですが、この負荷下で、評価したいプロセスを200回以上連続実行すると、200回全体の合計実行時間に、負荷がかかったような形跡がほとんどなくなってしまうという謎の現象が起こってしまったからです。 なので、ユーザが利用できるCPU占有率を一定にできないのかなと思い、質問してみました。 ulimitではできなさそうですよね。

  • 3段階の過程の間での循環

    プロセスの【実行可能状態】は、 『アナログ電話の保留状態と同じ段階』に有るのでしょうか?

  • ソフトウェア開発技術者~タスク管理について

    OSのタスク管理について、ある問題集で不明な点が…。以下その問題です。 「プロセスを、実行状態、実行可能状態、待ち状態、休止状態の4つの状態で管理するプリエンプション方式のOS上で、A、B、Cの3つのプロセスがロードされている。各プロセスの現在の状態は、Aが待ち状態、Bが実行状態、Cが実行可能状態である。プロセスAの待ちを解消する事象が発生すると、それぞれのプロセスの状態はどのようになるか。ここで、プロセスの優先順位は、A>B>Cの順に高いものとする」 正解はA:実行状態、B:実行可能状態、C:実行可能状態、となっています。ただ、以前他の文献で「待ち状態から直接、実行状態に移ることはなく、必ず実行可能状態を経由して実行状態になる」といった主旨の説明を読んだ記憶があります。すると、Aが待ち状態から実行状態に移るのは正しくないということになりますが、これはどのように解釈すればいいのでしょう?

  • タスクマネージャを開くと

    Win7 64bit です 起動後、壁紙状態でタスクマネージャを開いてパフォーマンス・タブ を見てゐると、 プロセス数 91 物理メモリ 16% CPU使用率 0% で 安定してゐるのですが、 時折 CPU使用率が 5~10%に跳ね上がって またすぐ 0% にもどります。何もしてゐないのにメモリスワップが起きて ゐるとは考へにくいのですが、これは一体何を意味してゐるのでせうか? ご教示いただければ幸ひです。

専門家に質問してみよう