コンパクションとデフラグは別のものですか?
ソフトウェア No Comments »コンパクションは主記憶装置の利用されなくなった領域を集めて利用できる領域を作り出します。
たぶん、みなさんが言っているデフラグはWindowsに付属のデフラグのことだと思います。
デフラグはハードディスクにある領域の断片化を解消するものです。
行う機器が違うので、コンパクションとデフラグはまったく別なものです。
p57 問18のアプリケーションのCPU利用率が低いというのがわかりませんでした。
ソフトウェア No Comments »スラッシングが発生すると、主記憶領域と補助記憶装置の間の転送が多くなるのでCPUは待ち時間が多く(転送する時間待っている)なるのです。
そのためCPUの利用率は低くなります。
オープンアドレス法やチェーン法、シノニムレコードの違いの説明をお願いします。
ソフトウェア No Comments »まず、ハッシュ法という方法を行うとシノニムレコードが発生します。これは割り算したときの余りを格納するアドレスとしているので、余りの値が同じになることがあります。これをシノニムといいます。
シノニムが発生すると、同じ番地に同じレコードを格納できないのでオープンアドレス法やチェーン法で対応します。
オープンアドレス法は、とりあえず空いている領域にシノニムレコードを格納しています。また、チェーン法は空いている領域にレコードを格納して、もとのホームレコードの場所からリスト構造(ポインタ)でつないでいきます。
順編成ファイルで原則としてファイルの作り直しとあったが、どうゆう時にファイルの作り直しを避けられるのか知りたい。
ソフトウェア No Comments »ファイルの作り直しは、レコードを追加、更新、削除するときに作り直しとなります。読み込みするだけならファイルを作り直すことはありません。
オープンアドレス法でテキストのとおり11を追加したとして、その後、新たに11とコリジョンしたときはどうなるのですか?
ソフトウェア No Comments »オープンアドレス法で11とコリジョンしたときは、空いている格納領域を探して格納します。空いている領域に格納するときは、シノニムで使用したこことをわかるようにしておきます。
カーネル、シェルの説明を分かりやすくお願いします。
ソフトウェア No Comments »UNIXにおいてOSの中核となるプログラムをカーネルといいます。カーネルはUNIXの制御プログラム部分であり、これがないとUNIXは動きません。
シェルというのはユーザのインターフェース部分であり、コマンドで操作していく操作性がシェルによって違っています。UNIXにはbシェル系やcシェル系と呼ばれるシェルが複数用意されており、自分で操作性がよいシェルというものを選ぶことができます。
UNIXはWindowsと違い、自分でいろいろなプログラムを組み合わせてOSを自分仕様につくりかえることができるのです。
直接編成ファイルがあやふや
ソフトウェア No Comments »直接編成ファイルでハッシュ関数でレコードを格納していく方法を考えます。
0というレコードを格納するときは、基数である11で割ります。(基数はあらかじめ決められています)
0÷11=0 余り 0
となります。この余りをレコードを格納する番地とするのです。
だからレコードの0は0番地に格納されます。
11というレコードを格納するときも同じです。
11÷11=1 余り 0
となります。11も余りが0になってしまいました。これをコリジョンやシノニムと呼びます。(余りが同じになり格納する番地が同じになること)
最初に格納された0のレコードをホームコードといって、後から格納しようとする11をシノニムコードといいます。
テキストにおける12はすでに格納されているレコードです。
12も格納するときは
12÷11=1 余り 1
となり、格納する番地が1になります。だから、12は1番地に格納されているのです。
ベースアドレス指定方式の動的再配置可能とはまったく別の意味ですか?
ソフトウェア No Comments »まったく関連がないということではありません。動的再配置可能のシステムを実現するためにはベースアドレス指定方式のようなアドレス指定方式が使われているという意味です。動的再配置では主記憶装置のどの場所にロードされるかわからないので、ベースレジスタに基点となるアドレスを記憶させて、その相対的な位置からデータの番地を割り出します。
動的再配置可能なシステムを実現するためにはベースアドレス指定方式が利用されていると考えておくといいでしょう。
オーバレイのときセグメントはどこへロールアウトするのか教えてください
ソフトウェア No Comments »ロールアウトするセグメントは主記憶装置から消去されます。オーバレイは、プログラムを意味のある単位(モジュール)に分割してセグメントという形式で主記憶装置にロードします。スワップと違うのは、スワップは一時的に補助記憶装置に退避するのに対して、オーバレイは必要なセグメントだけロードできればいいので、ロールアウトしたセグメントは主記憶から消去されるだけです。