カテゴリ: 4.記憶管理

■H27秋
問18 三つの媒体A~Cに次の条件でファイル領域を割り当てた場合,割り当てた領域の総量が大きい順に媒体を並べたものはどれか。

〔条件〕
(1)ファイル領域を割り当てる際の媒体選択アルゴリズムとして,空き領域が最大の媒体を選択する方式を採用する。
(2)割当て要求されるファイル領域の大きさは,順に90,30,40,40,70,30 (Mバイト)であり,割り当てられたファイル領域は,途中で解放されない。
(3)各媒体は容量が同一であり,割当て要求に対して十分な大きさをもち,初めは全て空きの状態である。
(4)空き領域の大きさが等しい場合には,A,B,Cの順に選択する。

ア A,B,C
イ A,C,B
ウ B,A,C
エ C,B,A
【正解】エ

■H29秋
問17 ページング方式の仮想記憶において,ページ置換えの発生頻度が高くなり,システムの処理能力が急激に低下することがある。このような現象を何と呼ぶか。
ア スラッシング          イ スワップアウト
ウ フラグメンテーション     エ ページフォールト
【正解】ア

問18 CPUスケジューリングにおけるラウンドロビンスケジューリング方式に関する記述として,適切なものはどれか。
ア 自動制御システムなど,リアルタイムシステムのスケジューリングに適している。
イ タイマ機能がないシステムにおいても,簡単に実現することができる。
ウ タイムシェアリングシステムのスケジューリングに適している。
エ タスクに優先順位を付けることによって,容易に実現することができる。
【正解】ウ

■H28春
問17 ページング方式の仮想記憶において,あるプログラムを実行したとき,1回のページフォールトの平均処理時間は30 ミリ秒であった。ページフォールト発生時の処理時間が次の条件であったとすると,ページアウトを伴わないページインだけの処理の割合は幾らか。

〔ページフォールド発生時の処理時間〕
(1)ページアウトを伴わない場合,ページインの処理時間は20ミリ秒である。
(2)ページアウトを伴う場合,置換えページの選択,ページアウト,ページインの合計処理時間は60 ミリ秒である。
ア 0.25     イ 0.33     ウ 0.67     エ 0.75
【正解】エ

問18 仮想記憶方式に関する記述のうち,適切なものはどれか。
ア LRUアルゴリズムは,使用後の経過時間が最長のページを置換対象とするページ置換アルゴリズムである。
イ アドレス変換をインデックス方式で行う場合は,主記憶に存在する全ページ分のページテーブルが必要になる。
ウ ページフォールトが発生した場合は,ガーベジコレクションが必要である。
エ ページングが繰り返されるうちに多数の小さな空きメモリ領域が発生することを,フラグメンテーションという。
【正解】ア

■H27秋
問17 デマンドページング方式による仮想記憶の利点はどれか。
ア 実際にアクセスが行われたときにだけ主記憶にロードするので,無駄なページをロードしなくて済む。
イ 主記憶に対する仮想記憶の容量比を大きくするほど,ページフォールトの発生頻度を低くできる。
ウ プロセスが必要とするページを前もって主記憶にロードするので,補助記憶へのアクセスによる遅れを避けることができる。
エ ページフォールトの発生頻度が極端に高くなっても,必要な場合にしかページを読み込まないのでスラッシング状態を回避できる。
【正解】ア

■H27春
問16 仮想記憶方式では,割り当てられる実記憶の容量が小さいとページアウト,ページインが頻発し,スループットが急速に低下することがある。このような現象を何というか。
ア スラッシング          イ スワッピング
ウ フラグメンテーション     エ メモリリーク
【正解】ア

問18 500 k バイトの連続した空き領域に,複数のプログラムモジュールをオーバレイ方式で読み込んで実行する。読込み順序Aと読込み順序Bにおいて,最後の120 k バイトのモジュールを読み込む際,読込み可否の組合せとして適切なものはどれか。ここで,数値は各モジュールの大きさをkバイトで表したものであり,モジュールを読み込む領域は,ファーストフィット方式で求めることとする。

〔読込み順序A〕
100 → 200 → 200解放 → 150 → 100解放 → 80 → 100 → 120
〔読込み順序B〕
200 → 100 → 150 → 100解放 → 80 → 200解放 → 100 → 120

H27h-問18
【正解】イ

■H26秋
問16 三つの資源X~Zを占有して処理を行う四つのプロセスA~Dがある。各プロセスは処理の進行に伴い,表中の数値の順に資源を占有し,実行終了時に三つの資源を一括して解放する。プロセスAとデッドロックを起こす可能性があるプロセスはどれか。
H26a-問16
ア B,C,D     イ C,D     ウ Cだけ     エ Dだけ
【正解】イ

問17 固定区画方式を使用した主記憶において,大きさが100 k バイト,200 k バイト,300 k バイト,400 k バイトの区画をそれぞれ一つ設定する。この主記憶に,大きさが250 k バイト,250 k バイト,50 kバイトのプログラムをベストフィット方式で割り当てた。この時点で,使用できない領域は合計で何kバイト生じているか。
ア 200     イ 250     ウ 350     エ 450
【正解】イ

■H26春
問16 OSのプロセス制御におけるプリエンプティブ方式に関する記述のうち,適切なものはどれか。
ア 各プロセスがシステム資源を自主管理できるので,マルチプログラミングに向いている。
イ ノンプリエンプティブ方式に比べて,コンテキスト切替えのためのオーバヘッドが小さい。
ウ ノンプリエンプティブ方式に比べて,特定のプロセスがプロセッサを独占することが多い。
エ プリエンプティブ方式を実現するには,0Sがプロセスを強制的に切り替えて実行する機構が必要になる。
【正解】エ

問18 仮想記憶方式において,論理アドレスから物理アドレスへの変換を行うのはいつか。
ア 主記憶に存在するページをアクセスするとき
イ ページフォールトが発生したとき
ウ ページを主記憶にページインするとき
エ ページを補助記憶にページアウトするとき
【正解】ア

■H25秋
問18 記憶領域の動的な割当て及び解放を繰り返すことによって,どこからも利用できない記憶領域が発生することがある。このような記憶領域を再び利用可能にする機能はどれか。
ア ガーベジコレクション     イ スタック
ウ ヒープ              エ フラグメンテーション
【正解】ア

■H25春
問17 五つのジョブA~Eに対して,ジョブの多重度が1で,処理時間順方式のスケジューリングを適用した場合,ジョブBのターンアラウンドタイムは何秒か。ここで,OSのオーバヘッドは考慮しないものとする。
H25h-問17
ア 8     イ 9     ウ 10     エ 11
【正解】エ

問18 ぺージング方式の仮想記憶において,ページフォールト発生時のオーバヘッドによる1命令当たりの平均遅れ時間を求める式はどれか。

〔記号の説明〕
 t : 1回当たりのページフォールト処理時間
 f : ページフォールト発生率
 m : 1命令当たりの平均主記憶アクセス回数

ア t - f × m
イ t × f × m
ウ t × f ÷ m
エ f ÷ f ÷ m
【正解】イ

問19 仮想記憶方式におけるプログラムやデータの格納方法に関する記述のうち,適切なものはどれか。
ア 一つのプログラムや一連のデータは,主記憶装置及び補助記憶装置で必ず連続した領域に格納される。
イ 頻繁に参照されるプログラムやデータが主記憶装置に格納されているので,仮想記憶を用いない場合に比べて主記憶の平均アクセス時間が短くなる。
ウ プログラムやデータを補助記憶装置に格納し,必要に応じて主記憶に読み込むので,主記憶の見かけの容量を拡大できる。
エ ページアウトされたプログラムやデータがシステムの停止後も補助記憶装置に保持されるので,再起動後に主記憶の内容が復元される。
【正解】ウ

共通に使用される擬似言語の記述形式

 擬似言語を使用した問題では,各問題文中に注記がない限り,次の記述形式が適用されているものとする。

〔宣言,注釈及び処理〕
2009h21a_fe_pm_qs_1



演算子と優先順位〕
2009h21a_fe_pm_qs_2
注 整数同士の除算では,整数の商を結果として返す。%演算子は,剰余算を表す。

〔論理型の定数〕
true, false


■1.タスクとは
ジョブとタスクがあります。どちらも「仕事」という意味です。
では、どう違うのでしょうか。
ザックリ説明すると、
・ジョブ:人間からみた仕事の単位
・タスク:コンピュータから見た仕事の単位(なので、読みだしたり、演算したり、書きこんだりと工程が増える)

また、ジョブステップという言葉がある。ジョブを工程ごとに分解したものである。「違うぞ」という突っ込みがあるが、ジョブステップ=タスクとざっくり理解しておいて、それほど間違ってはいない。

ジョブ→ジョブステップ1=タスク1
   →ジョブステップ2=タスク2
   →ジョブステップ3=タスク3
   
■2.タスク管理
タスク管理に関して、過去問(H20秋FE午前問28)では、(複数のタスクがある場合に、)「マルチプログラミングの制御を行い,CPUを有効に利用する」とあります。

応用情報技術者試験を勉強する成子

なぜそんな制御が必要なのですか?
CPUは頭脳に例えられるという話をしたと思います。
人間と同じで、コンピュータであっても、複数のことを同時には考えることができません。
応用情報技術者試験を勉強する成子

そうなんですか?
パソコンでは、インターネットで動画を見ながら、メールを書いたりしていますし、その間にプリンタで印刷をかけたりもできますけど。
はい、パソコンでは複数のことを同時に実施しています。
ただ実際には、CPUが短い時間で瞬時に複数の仕事を切り替えています。それがあまりに高速なので、我々には同時に実行しているように見えるのです。
このように、CPUにはいくつものジョブがやってきて、それを効率的に管理する仕事がOSが実行すべきタスク管理です。

■マルチプログラミング
見かけ上、複数のタスクを同時に実行し、CPUを効果的に使う。
CPUが処理したあと、I/Oなどの待ち時間がある。
そのときに、別のプログラムを処理させるのだ。
似たような概念にパイプライン処理がある。
・パイプライン処理:CPUの命令単位
・マルチプログラミング:プログラム単位

タスク管理に関して、応用情報技術者試験のシラバスでは、以下の記載があります。
(4)タスク管理
① タスクと状態遷移
タスクとジョブステップ,スレッドとの関係,タスクの生成から実行,消滅までの状態遷移,ディスパッチャの役割を理解する。

用語例 軽量プロセス,実行可能状態,実行状態,待ち状態,プロセス,スレッド

② 多重(マルチ)プログラミング(マルチタスク)とスケジューリング
多重(マルチ)プログラミングの考え方,タスクのスケジューリングの代表的な方式について,スケジューリングの方法,特徴,スケジューリングにおけるトリガと優先順位の役割,同期制御・排他制御の必要性,実現方法を理解する。また,タスクとタスクの同期,タスク間でのデータの受け渡し,マルチスレッドの考え方,並列処理などを理解する。

用語例 プリエンプティブ方式,ノンプリエンプティブ方式,タイムスライス方式,イベントドリブン方式,フィードバック待ち行列方式,処理時間順方式,優先順,静的優先順位方式,動的優先順位方式,ラウンドロビン,SJF(Short Job First),最短時間順,割込み禁止,マルチCPU,排他制御,FCFS(First Come First Served),タイムクウォンタム,リソーススタベーション,SVC(SuperVisorCall)割込み,入出力終了割込み,ディスパッチ

では、過去問(H20秋FE午前)を見てみましょう。
問28 タスク管理の役割として,適切なものはどれか
ア 各種の補助記憶装置へのアクセス手段を,装置に依存しない形態で提供し,応用プログラム作成の負担を軽減する。
イ 仮想記憶空間を提供し,実記憶を有効に利用する。
ウ 入出力装置の制御を行い,正確かつ効率よく入出力装置を動作させる。
エ マルチプログラミングの制御を行い,  CPUを有効に利用する。





正解は、エです。ウは入出力管理、イは記憶管理、アはデータ管理です。

過去問(H21秋AP午前問19)
問19 リアルタイムOSのマルチタスク管理機能において,タスクAが実行状態から実行可能状態へ遷移するのはどの場合か。
ア タスクAが入出力要求のシステムコールを発行した。
イ タスクAが優先度の低いタスクBに対して,メッセージ送信を行った。
ウ タスクAより優先度の高いタスクBが実行状態となった。
エ タスクAより優先度の高いタスクBが待ち状態となった。





正解は、 ウです。

 

1.タスクの状態(プロセスの状態)

プロセスの状態には、「待ち行列に登録されているプロセスの状態を実行可能状態,実行中のプロセスの状態を実行状態」の他に、「待ち状態」があります。

過去問(H20FE秋午前問29)では、コンピュータのタスクの状態遷移として、次の図が記載されています。
状態遷移
また、実行状態のタスクが、「自分より優先度の高いタスクが実行可能状態になった」ことで、実行可能状態に遷移するともあります。
応用情報技術者試験を勉強する成子

なんかややこしいですね。
なぜ、そんな3つの状態があるのですか?



例えがいいか分かりませんが、以下と考えてはどうでしょう。
大きな病院で初診受付をしたとします。
・最初は、病院側の先生が決っていない状態で、今すぐ診察を受けられない状態ですから、受付でしばらく待ちます(⇒待ち状態)
・病院側は、問診票や先生の空き状況などを踏まえて先生が決ったら、患者さんに連絡します「○○先生の診察になりますので、第△診察室の前でお待ちください。これで、先生が空いたら診察を受けることができます。(⇒実行可能状態)
・前の患者さんの診察が終わったら、診察を受けられます(⇒実行状態)
※ここで、実行状態にあっても、途中で検査したりすると、もう一度診察を受けるまで、診察室の前で待つことがあります。(⇒実行可能状態に戻ります)

患者さんの数に対し、先生の数は圧倒的に少ないものです。よって、患者さんの状態(優先度)も確認しながら、患者さんを先生に割り当てていく作業が必要になります。

コンピュータも同じで、CPUにはいくつものプロセスがやってきます。CPUの数は限られていますから、そのプロセスの実行順序を決めるのがOSの役割であり、これがタスク管理です。
また、プロセスの実行順序を決定する方式にはいくつかの方式があり、到着順方式や、ラウンドロビン方式、優先度順方式などがあります。

以下にも解説しています。
http://sm.seeeko.com/archives/15876963.html

aae62d2c 

実行可能状態と待ち状態の違いがよく分かりません。




以下のように考えるといいかもしれません。

・実行可能状態:CPUが割り当てられればすぐに処理ができる。
・待ち状態:CPUが割り当てられても処理ができない。他からの入出力を待つなど

まあ、具体的に考えた方がいいですね。ブラウザを起動して検索を実行する場合で考えましょう。

①ブラウザを起動するためにクリックする⇒この時点では、実行されません。CPUが割り当てられないからです。よって、「実行可能状態」です。
②CPUが割り当てられる⇒「実行状態」になります。
③CPUは順番に割り当てられるので、まだ処理は残っているけど決められた自分の番が終わったら⇒実行可能状態(次のCPUが空くのを待つ)
④ブラウザの起動が終わり、ユーザからの次のアクション(たとえば、リンクをクリックするとか、検索キーワードを入力して検索するとか)を待っている状態になります。→待ち状態
⑤ブラウザを閉じる⇒タスクを終了させる

タスクマネージャもみてみましょう。実行状態にあるタスクにはCPUが割り当てられています。
CPUの利用が0%のタスクもたくさんそんざいします。これは、実行可能状態や待ち状態のタスクです。
taskmanager

2.プリエンプティブとノンプリエンプティブ

皆さんもお仕事されているとき、仕事は山のように降ってきますから、受け取った順に仕事をするのではなく、優先順位などをつけて仕事を調整されますよね。
コンピュータでも同じで、マルチタスク環境では、このように優先度に応じた仕事をする機能は必須になります。これがプリエンプティブです。
※preemptiveとは「先買権のある」という意味です。出典は、EXCEED 英和辞典(goo 辞書)より

プリエンプティブではない(=ノンプリエンプティブ)であれば、あるタスクがCPUを独占すると、他のタスクが実行できなくなってしまいます。過去問(H27春FE午前問19)では、「ノンプリエンプティブなスケジューリング方式の説明」として、「実行状態としたタスクが自ら待ち状態に遷移するか終了するまで,他のタスクを実行状態とすることができない」とあります。
応用情報技術者試験を勉強する成子

タスクスケジューリングには、到着順やラウンドロビンなど、いくつかの方式がありましたよね?
具体的にどれがプリエンプティブなのでしょうか。
では、過去問(H28春AP午前問19)をみてみましょう。
問19 ノンプリエンプティブだけのスケジューリング方式はどれか。
ア 残余処理時間順 ウ 優先度順
イ 到着順       エ ラウンドロビン
【正解】イ
ここにありますように、到着順だけがノンプリエンプティブで、それ以外はすべてプリエンプティブです。

3.タスクの状態に関する過去問

(1)過去問(H21秋AP午前問19)

問19 リアルタイムOSのマルチタスク管理機能において,タスクAが実行状態から実行可能状態へ遷移するのはどの場合か。
ア タスクAが入出力要求のシステムコールを発行した。
イ タスクAが優先度の低いタスクBに対して,メッセージ送信を行った。
ウ タスクAより優先度の高いタスクBが実行状態となった。
エ タスクAより優先度の高いタスクBが待ち状態となった。
正解は、ウです。
優先度の高いタスクBが実行状態となると、タスクAは実行可能状態になります。

(2)H29秋AP

問16 リアルタイムOSにおいて,実行中のタスクがプリエンプションによって遷移する状態はどれか。
ア 休止状態
イ 実行可能状態 
ウ 終了状態
エ 待ち状態






【正解】イ

(3)H27秋AP

問16 プリエンプション方式のタスクスケジューリングにおいて,タスクBの実行中にプリエンプションが発生する契機となるのはどれか。ここで,タスクの優先度は,タスクAが最も高<, タスクA>タスクB =タスクC>タスクDの関係とする。
ア タスクAが実行可能状態になった。
イ タスクBが待ち状態になった。
ウ タスクCが実行可能状態になった。
エ タスクDが実行可能状態になった。






【正解】ア

(4)H27春FE午前問19

問19 ノンプリエンプティブなスケジューリング方式の説明として,適切なものはどれか。
ア 新しいタスクが実行可能状態になるたびに,各タスクの残りの実行時間を評価し,その時間が短いものから順に実行する。
イ 実行状態としたタスクが決められた時間内に待ち状態に遷移しないときに,そのタスクを中断して実行待ち行列にある次のタスクを実行状態とする。
ウ 実行状態としたタスクが自ら待ち状態に遷移するか終了するまで,他のタスクを実行状態とすることができない。
エ タスクが実行可能状態になったときに,そのタスクの優先度と,その時,実行状態であるタスクの優先度とを比較して,優先度が高い方のタスクを実行状態とする。





ア:処理時間順(残余処理時間順)方式
イ:ラウンドロビン
エ:優先度順

【正解】ウ

(5)H27春ES午前Ⅱ問10

問10 優先度に基づくプリエンプティブなスケジューリングで動作する,二つの周期タスクA,Bがある。AはBよりも優先度が高く,周期は2ミリ秒,実行時間は1ミリ秒である。Bの周期が10ミリ秒のとき,1周期中に実行を完了できるBの実行時間は最大何ミリ秒か。ここで,A,B以外のタスクはなく,タスク切替えによるオーバヘッドはないものとする。
ア 3  イ 5  ウ 7  エ 9






【正解】イ

(6)H27秋AP午前問16

問16 プリエンプション方式のタスクスケジューリングにおいて,タスクBの実行中にプリエンプションが発生する契機となるのはどれか。ここで,タスクの優先度は,タスクAが最も高<, タスクA>タスクB =タスクC>タスクDの関係とする。
ア タスクAが実行可能状態になった。
イ タスクBが待ち状態になった。
ウ タスクCが実行可能状態になった。
エ タスクDが実行可能状態になった。






【正解】ア

 1.仮想記憶管理とは

応用情報技術者試験のシラバスでは、コンピュータシステム>ソフトウェア>オペレーティングシステム の中に「記憶管理」の章があります。
シラバスには次の記載があります。
② 仮想記憶管理
実記憶と仮想記憶の関係,仮想記憶の有効性,仮想記憶方式の種類と特徴,動的アドレス変換の仕組みを理解する。また,ページング方式の代表的なページ置換えアルゴリズムについて,ページ置換え手順を理解する。

用語例 ベースアドレス方式,セグメント方式,セグメントページング方式,単一仮想空間方式, 多重仮想空間方式, スラッシング, DAT ( Dynamic Address Translator:動的アドレス変換),TLB(Translation ookaside Buffer),ページフォールト,ページイン,ページアウト,デマンドページング,ページリプレースメント,LRU,FIFO,ワーキングセット
スワッピングとオーバレイによる主記憶管理よりも、効率的な記憶管理方法が仮想記憶管理です。
具体的には、補助記憶を利用し、主記憶を大容量に見せます。過去問(H21春シスアド問7)では、「仮想記憶方式が主記憶に及ぼす効果」に関して、「主記憶の見掛け上の容量が増加する」とあります。
応用情報技術者試験を勉強する成子 

スワッピングとオーバレイではダメなのですか?
たとえば、スワッピングであれば、プログラムを補助記憶に退避させます。
でも、メインメモリよりも大きなプログラムを使う場合、どうしようもないですよね。
仮想記憶
主記憶の領域を増やせればいいのですが、お金もかかることから、実際にはそう簡単にはいきません。
そこで、仮想記憶です。実際の主記憶領域よりも、仮想的に大きな領域があるように、CPUに見せるのです。
以下、イメージです。
補助記憶
仮想記憶では、主記憶以上の領域を、CPUに見せます。しかし、実際には主記憶の領域が限られています。そこで、補助記憶装置(HDD)の領域を使って仮想記憶を実現します。
このとき、上記のように、仮想記憶の領域と主記憶の領域を、一定の単位で管理するのが便利です。これが、後述するページング方式です。

過去問(H21秋IP問59)では、「OSの機能の一つである仮想記憶方式の目的」として、「主記憶の容量よりも大きなメモリを必要とするプログラムも実行できるようにする」とあります。
応用情報技術者試験を勉強する成子 


OSの機能なんですね。
はい、そうです。実際、Windowsでも自動で処理を行っています。
システムのプロパティ>詳細設定>パフォーマンス>詳細設定>仮想メモリ
で設定できます。
デフォルトでは、コンピュータによる自動管理がなされています。
仮想メモリ

 

 

2.ページング方式

仮想記憶を実現する一つの方式が、ページング方式です。他にもセグメント方式などもありますが、覚える必要はありません。試験では、ページング方式のみを覚えてください。
ページングに関して過去問(H20秋SW午前問27)では、「主記憶とプログラムを固定長の単位に分割し,効率よく記憶管理する。これによって,少ない主記憶で大きなプログラムの実行を可能にする。」とあります。
応用情報技術者試験を勉強する成子 

ちょっと分かりにくいです。
そうですね。
別の過去問(H25春FE午後問2)の説明を見てみましょう。
「仮想記憶方式の一つに,ページング方式がある。ページング方式は,仮想アドレス空間と物理アドレス空間のそれぞれをページと呼ぶ固定長の領域に分割しておき,ページ単位でアドレス空間を管理する。」とあります。
この過去問の図を見てみましょう。
仮装記憶
このように、仮想記憶と主記憶のアドレス空間を、固定長のページという単位で管理します。
応用情報技術者試験を勉強する成子 

でも、主記憶だけでは領域が足らないんですよね。
はい、そうです。だから、補助記憶装置の領域も借りる必要があります。具体的には、まず、ページが主記憶装置に割り当てられていないときにはOSに対してページフォルトの割り込みを発生させます。そして、必要なページを補助記憶装置から持ってきます(ページイン)。このとき、主記憶領域がいっぱいではいけませんので、不要なページを補助記憶に退避します(ページアウト)。
応用情報技術者試験を勉強する成子

不要なページはどういう基準で決めるのですか?
いい質問ですね。ページアウトするページを決める方法にはいくつかあり、FIFOやLRUなどがあります。詳しくは後述します。

では、別の過去問をみてみましょう。
■H20秋FE午前
問27 ページング方式の仮想記憶において,主記憶に存在しないページをアクセスした場合の処理や状態の順番として,適切なものはどれか。ここで,主記憶には現在,空きのページ枠はないものとする。
ア 置換え対象ページの決定→ページイン→ページフォールト→ページアウト
イ 置換え対象ページの決定→ページフォールト→ページアウト→ページイン
ウ ページフォールト→置換え対象ページの決定→ページアウト→ページイン
エ ページフォールト→置換え対象ページの決定→ページイン→ページアウト




正解:ウ

3.ページ置換えアルゴリズム

ページング方式の代表的なページ置換えアルゴリズムには以下の4つがあります。よく問われるのはLRUです。
①FIFO(First In First Out):先入れ先出し法。過去問(H24春FE午前問22不正解選択肢)では、「最も古くから存在するページを置き換える方式」とあります。
②LIFO(Last In First Out):後入れ先出し法。最も新しいページを置き換える方法です。
③LFU(Least Frequently Used):Frequentlyは「頻繁に」という意味です。過去問(H24春FE午前問22不正解選択肢)では、「最も参照回数の少ないページを置き換える方式」とあります。
④LRU(Least Recently Used):Recently は「最近」という意味で、Least Recentlyなので、「最近ではない」という意味になります。過去問(H24春FE午前問22不正解選択肢)では、「最後に参照されてからの経過時間が最も長いページを置き換える方式」とあります。

4.仮想記憶に関する過去問(午前問題)

(1)H29春AP

問16 4ブロックのキャッシュメモリC0~C3が表に示す状態である。ここで,新たに別のブロックの内容をキャッシュメモリにロードする必要が生じたとき,C2のブロックを置換の対象とするアルゴリズムはどれか。
H29h-問16
ア FIFO     イ LFU     ウ LIFO     エ LRU

【解説】
ページ置換えアルゴリズムには、主に選択肢の4つがあります。
この中で、C2を置き換えるには「最終参照時刻が最も遅い」ことに着目します。
最も使っていないと言う意味で、LRU(選択肢エ)が正解です。
参考ですが、それぞれの選択肢ではどれが置き換えられるでしょうか。
ア:FIFO⇒ロード時間が最も早いC0です。
イ:LFU⇒最も使われてないC1です。
ウ:LIFO→もっとも後にロードされたC3です。

【正解】エ

(2)H28春AP午前

問18 仮想記憶方式に関する記述のうち,適切なものはどれか。
ア LRUアルゴリズムは,使用後の経過時間が最長のページを置換対象とするページ置換アルゴリズムである。
イ アドレス変換をインデックス方式で行う場合は,主記憶に存在する全ページ分のページテーブルが必要になる。
ウ ページフォールトが発生した場合は,ガーベジコレクションが必要である。
エ ページングが繰り返されるうちに多数の小さな空きメモリ領域が発生することを,フラグメンテーションという。

⇒正解は、ア
エですが、ページングはページ単位で記憶領域を管理するため、小さな空きメモリ領域が発生しません。

問17 仮想記憶管理のページ入替え方式のうち,最後に使われてからの経過時間が最も長いページを入れ替えるものはどれか。
ア FIFO  イ LFU  ウ LIFO 工 LRU

⇒正解は、エのLRU(Least Recently Used)です。

(3)H25春AP午前
問19 仮想記憶方式におけるプログラムやデータの格納方法に関する記述のうち,適切なものはどれか。
ア 一つのプログラムや一連のデータは,主記憶装置及び補助記憶装置で必ず連続した領域に格納される。
イ 頻繁に参照されるプログラムやデータが主記憶装置に格納されているので,仮想記憶を用いない場合に比べて主記憶の平均アクセス時間が短くなる。
ウ プログラムやデータを補助記憶装置に格納し,必要に応じて主記憶に読み込むので,主記憶の見かけの容量を拡大できる。
エ ページアウトされたプログラムやデータがシステムの停止後も補助記憶装置に保持されるので,再起動後に主記憶の内容が復元される。

⇒正解はウです。

(4)H19春FE午前
問28 仮想記憶方式の一つに,仮想アドレス空間を固定長の領域に分割して管理するものがある。この固定長の領域を示す用語はどれか。
ア セクタ  イ セグメント  ウ フレーム  エ ページ
⇒正解はエ

(5)H26春AP午前
問18 仮想記憶方式において,論理アドレスから物理アドレスへの変換を行うのはいつか。
ア 主記憶に存在するページをアクセスするとき
イ ページフォールドが発生したとき
ウ ページを主記憶にページインするとき
エ ページを補助記憶にページアウトするとき

⇒正解は、ア

(6)H17春SW午前
問26 仮想記憶方式において,仮想アドレスと物理アドレスとを対応付けるアドレス変換機能に付加情報を与えることで,実現が容易になるものはどれか。
ア オーバレイ      ウ メモリインタリーブ
イ 記憶保護       エ メモリコンパクション

⇒正解は、イ

(7)平成28年秋期 午前 問18
問18 プログラムで使用可能な実メモリ枠が3ページである仮想記憶システムにおいて大きさ6ページのプログラムが実行されたとき,ページフォールトは何回発生するか。ここで,プログラム実行時のページ読込み順序は, 0,1,2, 3,4,0,2,4,3,1,4,5とする。ページング方式は,LRU (Least Recently Used)とし,初期状態では,実メモリにはいずれのページも読み込まれていないものとする。
ア 9   イ 10   ウ 11   エ 12



正解は、イです。

 

1.タスクのスケジューリング方式

タスクのスケジューリング方式には、到着順方式、ラウンドロビン、優先度方式など、いくつかの方式があります。

(1)到着順方式

到着順にタスクを実行状態にします。

(2)処理時間順(残余処理時間順)方式

過去問(H27春FE午前問19不正解選択肢)では、「新しいタスクが実行可能状態になるたびに,各タスクの残りの実行時間を評価し,その時間が短いものから順に実行する」とあります。

(3)ラウンドロビン

過去問(H27春FE午前問19不正解選択肢)では、「実行状態としたタスクが決められた時間内に待ち状態に遷移しないときに,そのタスクを中断して実行待ち行列にある次のタスクを実行状態とする」とあります。

(4)優先度順

過去問(H27春FE午前問19不正解選択肢)では、「タスクが実行可能状態になったときに,そのタスクの優先度と,その時,実行状態であるタスクの優先度とを比較して,優先度が高い方のタスクを実行状態とする」とあります。

2.タスクのスケジューリング方式に関する過去問

(1)過去問(H23春FE午後問2)

問2 CPUの割当て方式に関する次の記述を読んで,設問1,  2に答えよ。
オペレーティングシステムの役割の一つとして,プロセスにCPUを割り当てることがある。そして,プロセスの実行順序を決定する方式には,次のようなものがある。
(1)到着順方式
到着順にプロセスを待ち行列の末尾に登録する。実行中のプロセスが終了すると,待ち行列の先頭からプロセスを一つ取り出して実行を開始する。
到着順方式を図1に示す。待ち行列に登録されているプロセスの状態を実行可能状態,実行中のプロセスの状態を実行状態と呼ぶ。
プロセス
(2)ラウンドロビン方式
到着順にプロセスを待ち行列の末尾に登録する。実行中のプロセスが終了すると,待ち行列の先頭からプロセスを一つ取り出して実行を開始する。また,実行中のプロセスが一定時間(以下,タイムクウォンタムという)を経過したら,実行を中断して,待ち行列の末尾に再登録し,待ち行列の先頭からプロセスを一つ取り出して実行を開始する。
ラウンドロビン方式を図2に示す。
ラウンドロビン
これらの方式の効率を示す指標としてター'ンアラウンドタイムがある。ここで,ターンアラウンドタイムとは,プロセスが待ち行列に到着してから実行が終了するまでの時間であり,プロセスの実行順序に影響される。

(中略)

プロセスの実行順序を決める別の方式に優先度順方式がある。優先度順方式の例を図3に示す。プロセスにはあらかじめ優先度が付けてあり,待ち行列は優先度ごとに用意してある。ここで,優先度は1~10の10種類で,値の大きい方が優先度は高い。

優先度
この方式では,次のとおりにプロセスの実行を制御する。
① プロセスを優先度に対応した待ち行列の末尾に登録する。
② プロセスが登録されている優先度の最も高い待ち行列の先頭からプロセスを一つ取り出して実行を開始する。
③ 実行中のプロセスの優先度が2以上のとき,実行時間が20ミリ秒経過するごとに優先度を一つ下げる。優先度を下げた結果,実行中のプロセスの優先度が実行可能状態にある優先度の最も高いプロセスよりも低くなった場合,実行中のプロセスを中断して,①に戻る。
④ 実行中のプロセスが終了した場合,②に戻る。

  (2)H27春AP午前

問17 プロセスのスケジューリングに関する記述のうち,ラウンドロビン方式の説明として,適切なものはどれか。

ア 各プロセスに優先度が付けられていて,後に到着してもプロセスの優先度が実行中のプロセスよりも高ければ,実行中のものを中断し,到着プロセスを実行する。
イ 各プロセスに優先度が付けられていて,イベントの発生を契機に,その時点で最高優先度のプロセスを実行する。
ウ 各プロセスの処理時間に比例して,プロセスのタイムクウォンタムを変更する。
エ 各プロセスを待ち行列の順にタイムクウォンタムずつ実行し,終了しないときは待ち行列の最後につなぐ。





【正解】エ

(3)H17秋SW午前

問24 ジョブスケジューリングに関する記述として,適切なものはどれか。
ア FCFS (First Come First Served)方式は,ジョブの到着順に処理を行うもので,長大なジョブがあってもスループットが高い。
イ SPT (Shortest Processing Time First)方式は,処理時間の短いジョブの順に処理を行うので,対話型処理の平均応答時間を最小にできる。
ウ デッドラインスケジューリング方式は,目標の時間帯内に処理を完了することを目的に処理の優先度を決定するので,タイマ割込みのオーバヘッドが影響し,時間の制約の厳しいリアルタイム処理には向いていない。
エ 優先度順方式は,バッチ処理の優先度を高く設定し,リアルタイム処理の優先度を低くして運用するのが一般的である。





【正解】イ

(4)H19春DB午前

問3 ラウンドロビン方式のタスクスケジューリングの説明として,適切なものはどれか。
ア 一定時間ごとにタイマ割込みを発生させ,実行可能の待ち行列の先頭のタスクにCPU資源を割り当てる。
イ 各タスクの優先度に従ってCPU資源を割り当てる。
ウ 処理時間の短いタスクから順にCPU資源を割り当てる。
エ 何らかの割込みが発生したときに,直ちに起動する必要のあるタスクにCPU資源を割り当てる。





【正解】ア

(5)H23秋SM午前Ⅱ

問3 コンピュータシステムにおけるジョブスケジューリングの特徴のうち,適切なものはどれか。
ア CPUに割り当てるジョブをOSが強制的に切り替えるタイムスライス方式では,タイマ割込みが多発するので,スループットが低下する。
イ FCFS (first-come first-served)方式のジョブスケジューリングは,ジョブ間にCPUを公平に割り当てるので,スループット応答時間の保証が可能となる。
ウ 対話型処理とバッチ処理が混在するシステムでは,対話型処理の優先度を高くすることによって,対話型処理の応答性能の向上が期待できる。
エ 入出力を多用するジョブよりもCPUを多用するジョブの処理優先度を上げた方が,CPUの待ち時間が少なくなるので,全体のスループットの向上が期待できる。





【正解】ウ

(5)H29秋AP問18
問18 CPUスケジューリングにおけるラウンドロビンスケジューリング方式に関する記述として,適切なものはどれか。
ア 自動制御システムなど,リアルタイムシステムのスケジューリングに適している。
イ タイマ機能がないシステムにおいても,簡単に実現することができる。
ウ タイムシェアリングシステムのスケジューリングに適している。
エ タスクに優先順位を付けることによって,容易に実現することができる。





【正解】ウ

 

問2 オーバレイに関する次の記述を読んで,設問1,2に答えよ。

 近年,組込み(embedded)システムに利用されるプログラムの規模拡大に伴い,オーバレイが必要になってきている。オーバレイとは,プログラムを幾つかのオーバレイセグメント(以下,単にセグメントと呼ぶ)に分割しておき,OSがプログラムの実行に必要なモジュールを含むセグメントだけを主記憶領域に読み込んで実行する方法である。
 (1)10個のモジュールA~Jで構成されるプログラムがあり,各モジュールは図1に示す呼出し構造になっている。例えば,モジュールGは二つのモジュールH及びIを呼び出す。
17-FE問2-4
図1 モジュールの呼出し構造


 (2)このプログラムのモジュールの実行順序は,図2のとおりである。
17-FE問2-5
図2 モジュールの実行順序

 (3)A~Jの各モジュールの実行に必要な主記憶領域の大きさは,表のとおりである。なお,セグメントの大きさは,セグメントを構成するモジュールの大きさを合計したものになる。

        表 モジュールの大きさ
モジュール
A
B
C
D
E
F
G
H
I
J
大きさ(Mバイト)
10
8
6
5
6
4
6
2
3
15


設問1 次の記述中の[    ]に入れる正しい答えを,解答群の中から選べ。

 プログラムのオーバレイ構造と各セグメントを構成するモジュールを図3に示す。図3は,モジュールDがモジュールAから呼び出されたとき,主記憶領域にセグメントP0及びP2が読み込まれていることを表している。また,セグメントP1,P2及びP3は,主記憶領域の同じ番地を先頭としてそれ以降に読み込まれることを表している。
17-FE問2-1
図3 オーバレイ構造とセグメント


 このプログラムを実行したとき,プログラムの実行が終了するまでに,セグメントはP0,P1,P2,P3の順に,計4回だけ主記憶領域に読み込まれる。図3のオーバレイ構造で実行するのに必要な主記憶領域は,[    ]Mバイトである。

解答群
ア 24   イ 25   ウ 35   エ 36
オ 37   カ 38   キ 39   ク 40
正解は、エです。

設問2 次の記述中の[    ]に入れる正しい答えを,解答群の中から選べ。

 プログラムの実行時に利用する主記憶領域を減らすことが必要になったので,オーバレイ構造及びセグメントの見直しを行って,図4と図5に示す二つの案を作成した。
17-FE問2-2
図4 オーバレイ構造とセグメント案1

17-FE問2-3

図5 オーバレイ構造とセグメント案2

 図3のオーバレイ構造に比べて,プログラムの実行時に利用する主記憶領域を,案1では10 Mバイト,案2では[  a  ]Mバイト減らすことができる。
 プログラムを実行したとき,図2中のαの位置にあるモジュールFの実行が終了するまでに主記憶領域にセグメントが読み込まれる回数は,案1では合計6回,案2では合計[  b  ]回である。
 プログラムの実行が終了するまでに主記憶領域にセグメントが読み込まれる回数は,図3のオーバレイ構造に比べて,案1では合計[  c  ]回,案2では合計6回増える。

aに関する解答群
ア 10   イ 11   ウ 12
エ 13   オ 14   カ 15

b,cに関する解答群
ア 1   イ 2   ウ 3   エ 4   オ 5
カ 6   キ 7   ク 8   ケ 9   コ 10
正解は、
a イ
b キ
c エ です。

応用情報技術者試験シラバスでは、実記憶管理に関して、以下の記載があります。
① 実記憶管理
記憶領域の管理方式である固定区画方式,可変区画方式など,実アドレス空間の割当て方式の特徴,フラグメンテーションとその対策を理解する。また,主記憶装置を効率良く使うためのスワッピングとオーバレイを理解する。

用語例 実アドレス方式,単一連続割当て方式,記憶域管理アルゴリズム(ファーストフィット,ベストフィット,ワーストフィット),メモリコンパクション,ロールイン,ロールアウト,スワップイン,スワップアウト,セグメント方式,コンパクション
応用情報技術者試験を勉強する成子 

そもそも、「実記憶管理」ってどういう意味ですか?
CPUが頭脳で、メインメモリが机の上の作業場所に例える場合があります。
仕事をするときに、机の上の書類で作業するのですが、机の広さが足らない時がありませんか? 

その狭いスペース(メインメモリの領域)を効率良く使うための仕組みが実記憶管理です。
具体的には、スワッピングとオーバレイ、この後に記載する仮想記憶管理があります。

スワッピングに関して過去問(H20秋SW午前問27)では、「プログラムを一時的に停止させ,使用中の主記憶の内容を補助記憶に退避する。再開時には,退避した内容を主記憶に再ロードし,元の状態に戻す」とあります。

オーバレイに関して過去問(H20秋SW午前問27)では、「あらかじめプログラムを幾つかの単位に分けて補助記憶に格納しておき,プログラムの指定に基づいて主記憶に読み込む」とあります。
ようは、全てを一度に読み込むのではなく、必要なプログラムだけを主記憶(メインメモリ)に読み込むのです。
スワップ

過去問(H20秋SW午前問27)では、スワッピングに関して、「プログラムを一時的に停止させ,使用中の主記憶の内容を補助記憶に退避する。再開時には,退避した内容を主記憶に再ロードし,元の状態に戻す」とあります。

H16秋AD午前
問13 仮想記憶方式においてスワッピングが多発しているシステムに対して,主記憶を増設することの効果はどれか。
ア 画像修正ソフトで取り扱える色の数が増える。
表計算ソフトの計算精度が向上する。
ウ より大きいサイズのファイルが処理できるようになる。
ワープロソフトが速く動作するようになる。

H20秋AD
問10 仮想記憶機能をもつサーバで新しいプログラムを追加して実行したところ,スワッピングが多発し,以前から動作しているプログラムの処理効率が低下した。解決策として,最も適切なものはどれか。
ア 高速なCPUに変更する。
イ 高速な主記憶に変更する。
ウ 磁気ディスク装置を増設し,補助記憶の容量を拡大する。
エ 主記憶を増設する。

問3 データファイルのバックアップに関する次の記述を読んで,設問1,2に答えよ。

 Y社では,業務系システムが使用する業務データを磁気テープにバックアップすることを検討している。
 この業務系システムのサービス運用時間は,営業日(月曜日~土曜日)の9:00~19:00である。全体で18 Gバイトからなる業務データは,共通ファイルと,月曜日~土曜日の各曜日に利用する六つの曜日ファイル群からなる。各営業日には,共通ファイル全体(0.6 Gバイト)及びその曜日の曜日ファイル群の一部(場所は不定で0.6 Gバイト)の計1.2 Gバイトを更新する。データの更新状況を図に示す。ここで,1Gバイト=1,000 Mバイトとする。
170703_H20h FE pm 03
 このシステムにおいて,バックアップ方式を次のとおり検討している。
(1)週1回,日曜日にすべての業務データのバックアップ(フルバックアップ)を実施する。
(2)月曜日~土曜日に実施する部分バックアップは,次のいずれかの方式とする。
 ① 方式A
  日曜日のフルバックアップの時点以後に更新された業務データをすべてバックアップする。
 ② 方式B
  前日のバックアップの時点以後に更新された業務データだけをバックアップする。
(3)その他の条件は,次のとおりである。
 ① バックアップは,その日の業務終了後に実施し,その日のうちに終了する。
 ②磁気ディスクから磁気テープへのバックアップの速度は2Mバイト/秒,磁気テープから磁気ディスクへのリストアの速度も同じく2Mバイト/秒である。
 ③ フルバックアップと各営業日の部分バックアップはそれぞれ別の磁気テープに保存することとし,それぞれのバックアップデータは1本に収まるものとする。


設問1 バックアップ時間に関する次の記述中の[    ]に入れる正しい答えを,解答群の中から選べ。

 日曜日のフルバックアップに要する時間は150分である。
 月曜日~土曜日の部分バックアップは,方式Aの場合で最も時間がかかる曜日には[  a  ]分,方式Bの場合で毎日[  b  ]分かかる。
 なお,磁気テープはバックアップ開始までにセットされているものとする。

解答群
ア 5        
イ 10 
ウ 30
エ 35   
オ 145   
カ 150
正解は、
a エ
b イ
です。

設問2 障害発生時のデータ復旧に関する次の記述中の[    ]に入れる正しい答えを,解答群の中から選べ。

 障害発生時のデータ復旧に使用する磁気テープの最大本数は,フルバックアップされた磁気テープを含めると,方式Aでは[  c  ]本,方式Bでは[  b  ]本である。
 方式Aを採用した場合,復旧には最長で[  e  ]分かかる。
 なお,磁気テープの交換時間は3分とする。また,復旧の時間には,最初の磁気テープをセットする時間と最後の磁気テープを取り出す時間は含まない。

c,  dに関する解答群
ア 1   イ 2   ウ 6   エ 7   オ 8

eに関する解答群
ア 38   イ 183   ウ 185   エ 188   オ 193
正解は、
c イ
d エ
e エ
です。

障害や誤操作によってデータが失われることを防ぐために,データのバックアップが必要になります。バックアップの方式を次に述べます。
フルバックアップ
フルバックアップは、毎回,すべてのデータをバックアップする方式です。バックアップ時間は長くなり,保存するデータ量も増えますが,バックアップする仕組み、復旧手順はシンプルです。
差分バックアップ
差分バックアップは,フルバックアップのデータとの差分のみをバックアップすることです。例えば,毎週日曜日にフルバックアップを取得し,月曜日から土曜日に差分バックアップを取ります。こうすることで,フルバックアップに比べて、バックアップにかかる時間短縮とデータの保存領域の削減が期待できます。
backup1
増分バックアップ
増分バックアップは、差分ファイルの差分をバックアップすることです。差分バックアップよりも更に,バックアップにかかる時間短縮とデータの保存領域の削減が期待できます。
backup2
 
また、世代管理という言葉があります。世代を管理するという言葉のとおり,バックアップの複数のデータを管理します。例えば、バックアップをフルバックアップですべて一つのテープに上書き保存している場合は,1世代のみだけの管理になります。それを2本のテープに交互に保存した場合,2世代の管理が行えます。こうしておけば、少し古いデータに戻すことができます。

過去問(H20春SM午後1問1)を見ましょう
〔バックアップ運用の見直し〕
 E社のシステムで適用可能なバックアップ方式には,表2に示すように,現在適用している“通常バックアップ”のほかに,“増分バックアップ”と“差分バックアップ”がある。

表2 バックアップ方式
方式 バックアップ時の処理 ファイル回復時の処理
通常バックアップ マスクファイルをすべてバックアップする。 通常バックアップで取得したファイルをリストアする。
増分バックアップ 前回の通常バックアップ又は増分バックアップ以降に変更されたファイルだけをバックアップする。 通常バックアップで取得したファイルをリストア後に,[  b  ]をリストアする。
差分バックアップ 前回の通常バックアップ以降に変更されたすべてのファイルをバックアップする。 通常バックアップで取得したファイルをリストア後に,[  c  ]をリストアする。
  
  Y氏は新しいバックアップの運用方法として,次の二つの運用案を検討することにした。
(1)運用案A: 土曜日の夜間に“通常バックアップ”を行い,月曜日から金曜日の夜間は“増分バックアップ”を行う。
(2)運用案B: 土曜日の夜間に“通常バックアップ”を行い,月曜日から金曜日の夜間は“差分バックアップ”を行う。
 Y氏は二つの運用案について,次の3点を検討した。
① バックアップの処理時間
 バックアップの処理時間について調査したところ,“通常バックアップ”が70分で,“増分バックアップ”が平均で10分,“差分バックアップ”が平均で35分掛かることが分かった。
② バックアップしたファイルの管理運用
 バックアップしたファイルは,1日単位で外部記憶媒体に保存する。
③ 障害発生時のファイル回復時間
 ファイル回復時の処理で,各バックアップ方式のリストアの処理時間は,それぞれバックアップの処理時間と同一である。

〔ファイル回復時間の短縮〕
 これらの運用案では,バックアップの処理時間が短くなり,オンライン業務の開始までの余裕時間を確保することができるが,障害発生時のファイル回復時間が現行より長くなってしまう。そこで,Y氏は,ファイル回復時間を更に短縮するために,運用案A又は運用案Bの変更を検討することにした。

設問2 [バックアップ運用の見直し]について,(1),(2)に答えよ。
 (1)バックアップの処理時間について,運用案Aと運用案Bのそれぞれの案を採用した場合の,1週間のバックアップの処理時間合計(分)を求めよ。
 (2)ファイル回復時の処理について,表2中の[  b  〕,[  c  ]に入れる適切な字句を,それぞれ25字以内で答えよ。
正解は、
(1)
運用案A 120
運用案B 245

(2)
b 古い順に増分バックアップで取得したファイル
c 最新の差分バックアップで取得したファイル
です。

設問3  〔ファイル回復時間の短縮〕について,ファイル回復時間を90分以内とするために,修正の少ない運用案は運用案Aと運用案Bのいずれか。答案用紙の“運用案A・運用案B”のいずれかの文字を○印で囲んで示せ。また,その変更内容を,20字以内で述べよ。ただし,土曜日は通常バックアップを行い,1週間のバックアップの処理時間の合計が200分を超えないものとする。
正解は、
運用案 運用案A
変更内容 水曜日をバックアップに変更する。
です。

ファイルシステムに関して、応用情報技術者試験シラバスでは、以下の記載があります。
(1)ディレクトリ管理とファイル管理
ファイルを階層化して扱うディレクトリの種類と特徴,ディレクトリが管理するファイル情報,ファイル制御ブロック,ファイルポインタ,ファイルハンドルなどのファイル管理の仕組み,絶対パス相対パスを使用したファイルの特定方法を理解する。また,ディレクトリ管理,ファイル共有の仕組み,考え方,アクセス権を理解する。

用語例 物理的位置,保護情報,参照情報,シンボリックリンク,ショートカット,エイリアス,ルートディレクトリ,カレントディレクトリ,ホームディレクトリ,単一ディレクトリ,2 階層ディレクトリ,階層型ディレクトリ,木構造ディレクトリ,パス名,ファイルハンドル,ファイル記述子,キャラクタデバイス,ブロックデバイスブロッキング,共有ファイル

(2)ファイルシステムの種類と特徴
ハードディスク装置などの補助記憶装置の領域を,OS や利用者がファイルやディレクトリ(フォルダ)として使用できるようにするための機能を理解する。また,OS ごとに異なるファイルシステムが提供されていること,代表的なファイルシステムの特徴を理解する。

用語例 FAT ファイルシステムNTFS,HFS(Hierarchical File System),NFS(NetworkFile System),ボリューム

(3)ファイル編成とアクセス手法
ファイル編成やアクセス手法の種類,特徴を理解する。また,各編成方式におけるレコードの追加,削除,変更などの処理方法を理解する。

用語例 論理レコード,物理レコード,ブロック,非ブロックレコード,ブロックレコード,ブロックサイズ,順次アクセス,直接アクセス,動的アクセス,順編成,区分編成,索引順編成,直接編成,VSAM 編成,あふれ域,ブロッキング,デブロッキング

(4)検索手法
ディレクトリの構造の特徴による検索手法の違いを理解する。

用語例 ハッシング,インデックス

(5)バックアップ
ファイルのリカバリを目的としたバックアップの取得方法と手順,世代管理,ファイルの修復方法と手順など,バックアップの方式を理解する。

用語例 多重バックアップ,フルバックアップ,差分バックアップ増分バックアップ

問2 仮想記憶方式に関する次の記述を読んで,設問1~3に答えよ。
 OSの主記憶管理において,仮想記憶方式は,OSが提供する論理的な記憶領域(以下,仮想記憶という)上のアドレスと主記憶上の物理的なアドレスを対応付けて管理する方式である。仮想記憶方式では,補助記憶装置を仮想記憶として用いるので,仮想記憶上に主記憶の容量を超えるプログラムを格納することができる。仮想記憶上のアドレス空間を仮想アドレス空間,主記憶上のアドレス空間物理アドレス空間と呼び,それぞれの空間の記憶場所を仮想アドレスと物理アドレスで指定する。
 仮想記憶方式の一つに,ページング方式がある。ページング方式は,仮想アドレス空間物理アドレス空間のそれぞれをページと呼ぶ固定長の領域に分割しておき,ページ単位でアドレス空間を管理する。ページング方式による仮想アドレス空間のページと物理アドレス空間のページの対応例を,図1に示す。図1では,補助記憶装置に格納されているプログラムAはa1, a2, a3, a4, a5に分割されて,仮想ページ番号1~5のページに格納されている。
 
仮装記憶

 仮想アドレス空間及び物理アドレス空間の各ページには,先頭から順に番号を付け,それぞれを仮想ページ番号,物理ページ番号と呼ぶ。仮想ページと物理ページの対応は,ページテーブルで管理する。ページテーブルの要素の個数は仮想ページの個数と同じであり,各要素が仮想ページの1ページに対応している。ページテーブルでは,仮想ページの内容が物理アドレス空間にも存在しているかどうかを示すビット(以下,存在ビットという)と物理ページ番号が管理されている。存在ビットは,ページが存在しているとき1,存在していないとき0とする。
 
設問1 次の記述中の[  ]に入れる正しい答えを,解答群の中から選べ。
 プログラムの実行過程で存在ビットを調べ,プログラムの実行に必要なページが[ a ]に存在していないときには,ページフォールドという割込みが発生する。ページフォールドが発生すると,ページアウトやページインなどのページ置換え処理が実行される。ページ置換え処理のアルゴリズムには,ページインしてから最も時間が経過しているページを置換え対象とするFIFOアルゴリズムや,参照されていない時間が最も長いページを置換え対象とする[ a ]アルゴリズムなどがある。

解答群
 ア LFU  イ LIFO  ウ LRU 
 工 仮想アドレス空間  オ 物理アドレス空間

設問2 プログラムAを実行するために割り当てられた物理アドレス空間の物理ページの個数が3の場合を考える。プログラムAの実行過程において,物理アドレス空間にal, a2, a3が存在している状態でa4を参照するとページフォールドが発生する。このページフォールドが発生した後の処理の流れとして適切な答えを,解答群の中から選べ。ここで,解答群中の処理は左から右に向かって行うものとする。
【処理の単位】
① 退避させるページをページアウトする。
② ページ置換えアルゴリズムによって,物理アドレス空間からページアウトするページを決定する。
③ 実行に必要なページをページインする。
④ ページアウトしたページに対応するページテーブルの要素の存在ビットを0にする。
⑤ ページインしたページに対応するページテーブルの要素の存在ビットを1にする。
⑥ ページアウトしたページに対応するページテーブルの要素の物理ページ番号を設定する。
⑦ ページインしたページに対応するページテーブルの要素の物理ページ番号を設定する。

解答群
ア ①→②→③→④→⑤→⑥
イ ①→③→②→④→⑦→⑤
ウ ②→①→④→③→⑤→⑥
エ ②→①→④→③→⑦→⑤
オ ②→③→①→④→⑤→⑥
カ ②→③→⑤→⑥→①→④

設問3 次の記述中の[  ]に入れる正しい答えを,解答群の中から選べ。
 ページ置換えアルゴリズムとしてFIFOアルゴリズムを採用する。プログラムの実行過程で仮想ページが次の順で参照されるとき,物理ページの個数が3の場合のページフォールドの回数は[ c ]回である。そして,物理ページの個数を4に増やした場合のページフォールドの回数は[ d ]回である。ここで,プログラムの実行開始時点では,物理アドレス空間にはどのページも存在していないものとする。

【仮想ページの参照順を示す仮想ページ番号の並び】
 1→4→3→2→1→4→5→1→4→3→2→5→1

解答群
 ア 8  イ 9  ウ 10  エ 11  オ 12
正解は、以下です。
設問1 a オ 物理アドレス空間
     b ウ LRU

設問2 エ 
② ページ置換えアルゴリズムによって,物理アドレス空間からページアウトするページを決定する。
① 退避させるページをページアウトする。
④ ページアウトしたページに対応するページテーブルの要素の存在ビットを0にする。
③ 実行に必要なページをページインする。
⑦ ページインしたページに対応するページテーブルの要素の物理ページ番号を設定する。
⑤ ページインしたページに対応するページテーブルの要素の存在ビットを1にする。

設問3
c ウ 10回
d エ 11回

過去問(H20秋SW午前問27)では、オーバレイに関して、「あらかじめプログラムを幾つかの単位に分けて補助記憶に格納しておき,プログラムの指定に基づいて主記憶に読み込む」とあります。

過去問(H17秋FE午後問2)では、オーバレイに関する具体的な問題があります。冒頭の用語解説だけ引用すると、以下です。
オーバレイとは,プログラムを幾つかのオーバレイセグメント(以下,単にセグメントと呼ぶ)に分割しておき,  OSがプログラムの実行に必要なモジュールを含むセグメントだけを主記憶領域に読み込んで実行する方法である。
実際の過去問にもチャレンジしてください。
https://www.jitec.ipa.go.jp/1_04hanni_sukiru/mondai_kaitou_2005h17_2/2005h17a_fe_pm_qs.pdf

応用情報技術者試験を勉強する成子 

なぜオーバレイ(重ね合わせる)というのですか?




まあ、なんとなくイメージしにくいですね。必要なプログラムを上書きしていくからです。過去問(H22春ES午前2
問7)では、「記憶管理におけるオーバレイ方式の記述:として「必要がなくなったセグメントの領域に,次に実行するセグメントが上書きされる」と述べています。

問17 サーバアプリケーションの開発のための,オブジェクト指向技術に基づいたコンポーネントソフトウェアの仕様はどれか。

ア EAI (Enterprise Application Integration)
イ EJB (Enterprise JavaBeans)
ウ ERP (Enterprise Resource Planning)
エ UML (Unified Modeling Language)
正解は、イです。

ソフトウェア(特にオープンソース)は、結構ややこしい。現段階での考えをメモする。
 
著作権は放棄していないが、無料で使える。厳密には、フリーソフトウェアとフリーウェアは別物らしいが、後者は無視してよいだろう。

開発費をシェア(share:共有)するソフトという意味であり有償である。普通のソフトとどう違う?とツッコミを入れたくなる。

(3)PDSパブリックドメインソフトウェア)
H21ST午前25には、「著作権を放棄する、又は、放棄の宣言をする」ことが条件と述べられている。
日本にPDSはないという考えもあるようだ。「フリーソフトとどう違う?」「著作権があろうが、なかろうが、利用者にとっては同じ」と思う人もいるだろう。ポイントとなるのは、著作権が放棄されているので、第三者PDSを改変して、自分のソフトとして販売できるところである。フリーソフトではこれができない。

(4)OSSオープンソースソフトウェア)
別記事に書く

H19SM午前30
ソフトウェアの保守費用の推移のグラフを問う問題です。毎回考えてもいいのですが、覚えてしまうのが良いでしょう。
ソフトウェアの稼働開始時に保守費用が増加する理由は、修正保守のためです。修正保守とは、テストでは見つけきれなかったバグが、ソフトを使用するに従って発見され、それを修正するための保守です。
使用期間が長期にわたることによって保守費が増加する理由は、適合保守のためです。適合保守とは、クライアントOSの変化や事業環境の変化、連携システムの変化などに適合するための保守です。

覚えるときに、関連するほかのグラフも覚えましょう。
例えば、故障のバスタブ曲線。初期故障期、偶発故障期、磨耗故障期の3段階があります。
H20SM 問14に出題があります。

スラッシングに関して過去問(H27春AP午前 問16)では、「仮想記憶方式では,割り当てられる実記憶の容量が小さいとページアウト,ページインが頻発し,スループットが急速に低下することがある。このような現象」と述べています。
スラッシング対策の最も分かりやすい方法は、メインメモリを追加購入して増やすことです。それ以外には、プログラムの多重度を下げることがあります。

■過去問(H18春SM午前 問26)
問26 システム運用部門がCPU利用率,ページフォールト頻度などを測定したところ,スラッシングの発生が多くなっていることが分かった。処理能力を改善するために運用部門だけでできる当面の対応処置として,適切なものはどれか。
ア 磁気ディスクの作業域(ワークエリア)の割当てを変更する。
イ ジョブの多重度を下げて,メモリの使用を抑制する。
ウ ページ置換方式を変更する。
エ 補助記憶装置を増設して,作業域を再配置する。

正解は、イ。

■H25春FE午前
問19 主記憶の管理方式とマルチプログラミングでのプログラムの多重度の組合せで,スラッシングが発生しやすいのはどれか。
a
⇒正解は、ア

基本情報技術者 平成15年 午前 問30
スラッシングが発生しているときの状態

・アプリケーションのCPU使用率:低い
・主記憶と補助記憶の間のページ転送量:多い

↑このページのトップヘ