資格部

資格・検定の試験情報、対策方法、問題解説などをご紹介

AP 午前 ソフトウェア

OSミドルウェアファイルシステム開発ツールOSS

オペレーティングシステム

 二つのタスクが共用する二つの資源を排他的に使用するとき,デッドロックが発生するおそれがある。このデッドロックの発生を防ぐ方法はどれか。

  1. 一方のタスクの優先度を高くする。
  2. 資源獲得の順序を両方のタスクで同じにする。
  3. 資源獲得の順序を両方のタスクで逆にする。
  4. 両方のタスクの優先度を同じにする。

解答・解説

 

 ほとんどのプログラムの大きさがページサイズの半分以下のシステムにおいて,ページサイズを半分にしたときに予想されるものはどれか。ここで,このシステムは主記憶が不足しがちで,多重度やスループットなどはシステム性能の限界で運用しているものとする。

  1. ページサイズが小さくなるので,領域管理などのオーバーヘッドが減少する。
  2. ページ内に余裕がなくなるので,ページ置換えによってシステム性能が低下する。
  3. ページ内の無駄な空き領域が減少するので,主記憶不足が緩和される。
  4. ページフォールトの回数が増加するので,システム性能が低下する。

解答・解説

 

 優先度に基づくプリエンプティブなスケジューリングを行うリアルタイムOSにおける割込み処理の説明のうち,適切なものはどれか。ここで,割込み禁止状態は考慮しないものとし,割込み処理を行うプログラムを割込み処理ルーチン,割込み処理以外のプログラムをタスクと呼ぶ。

  1. タスクの切替えを禁止すると,割込みが発生しても割込み処理ルーチンは呼び出されない。
  2. 割込み処理ルーチンの処理時間の長さは,システムの応答性に影響を与えない。
  3. 割込み処理ルーチンは,最も優先度の高いタスクよりも優先して実行される。
  4. 割込み処理ルーチンは,割り込まれたタスクと同一のコンテキストで実行される。

解答・解説

 

 LANに接続された3台のプリンターA〜Cがある。印刷時間が分単位で4,6,3,2,5,3,4,3,1の9個の印刷データがこの順で存在する場合,プリンターCが印刷に要する時間は何分か。ここで,プリンターは,複数台空いていれば,A,B,Cの順で割り当て,1台も空いていなければ,どれかが空くまで待ちになる。また,初期状態では3台とも空いている。

  1. 7
  2. 9
  3. 11
  4. 12

解答・解説

 

 ジョブ群と実行の条件が次のとおりであるとき,一時ファイルを作成する磁気ディスクに必要な容量は最低何Mバイトか。

〔ジョブ群〕

f:id:trhnmr:20211004120101p:plain

〔実行の条件〕

(1)ジョブの実行多重度を2とする。

(2)各ジョブの処理時間は同一であり,他のジョブの影響は受けない。

(3)各ジョブは開始時に50Mバイトの一時ファイルを新たに作成する。

(4)f:id:trhnmr:20211004115658p:plain の関係があれば, ジョブXの開始時に作成した一時ファイルは,直後のジョブYで参照し,ジョブYの終了時にその一時ファイルを削除する。直後のジョブが複数個ある場合には,最初に生起されるジョブだけが先行ジョブの一時ファイルを参照する。

(5)f:id:trhnmr:20211004115711p:plain はジョブXの終了時に,ジョブY,ZのようにジョブXと矢印で結ばれる全てのジョブが,上から記述された順に優先して生起されることを示す。

(6)f:id:trhnmr:20211004115724p:plain は先行するジョブX,Y両方が終了したときにジョブZが生起されることを示す。

(7)ジョブの生起とは実行待ち行列への追加を意味し,各ジョブは待ち行列の順に実行される。

(8)OSのオーバヘッドは考慮しない。

 

  1. 100
  2. 150
  3. 200
  4. 250

解答・解説

 

 一つのI²Cバスに接続された二つのセンサがある。それぞれのセンサ値を読み込む二つのタスクで排他的に制御したい。利用するリアルタイムOSの機能として,適切なものはどれか。

  1. キュー
  2. セマフォ
  3. マルチスレッド
  4. ラウンドロビン

解答・解説

 

 フラグメンテーションに関する記述のうち,適切なものはどれか。

  1. 可変長ブロックのメモリプール管理方式では,様々な大きさのメモリ領域の獲得や返却を行ってもフラグメンテーションは発生しない。
  2. 固定長ブロックのメモリプール管理方式では,可変長ブロックのメモリプール管理方式よりもメモリ領域の獲得と返却を速く行えるが,フラグメンテーションが発生しやすい。
  3. フラグメンテーションの発生によって,合計としては十分な空きメモリ領域があるにもかかわらず,必要とするメモリ領域を獲得できなくなることがある。
  4. メモリ領域の獲得と返却の頻度が高いシステムでは,フラグメンテーションの発生を防止するため,メモリ領域が返却されるたびにガーベジコレクションを行う必要がある。

解答・解説

 

 複数のクライアントから接続されるサーバがある。このサーバのタスクの多重度が2以下の場合,タスク処理時間は常に4秒である。このサーバに1秒間隔で4件の処理要求が到着した場合,全ての処理が終わるまでの時間はタスクの多重度が1のときと2のときとで,何秒の差があるか。

  1. 6
  2. 7
  3. 8
  4. 9

解答・解説

 

 ページング方式の仮想記憶において,ページ置換えの発生頻度が高くなり,システムの処理能力が急激に低下することがある。このような現象を何と呼ぶか。

  1. スラッシング
  2. スワップアウト
  3. フラグメンテーション
  4. ページフォールト

解答・解説

 

 主記憶へのアクセスを1命令当たり平均2回行い,ページフォールトが発生すると1回当たり40ミリ秒のオーバヘッドを伴うシステムがある。ページフォールトによる命令実行の遅れを1命令当たり平均0.4マイクロ秒以下にするために許容できるページフォールト発生率は最大幾らか。ここで,他のオーバヘッドは考慮しないものとする。

  1. 5×10⁻⁶
  2. 1×10⁻⁵
  3. 5×10⁻⁵
  4. 1×10⁻⁴

解答・解説

 

 仮想記憶方式における補助記憶の機能はどれか。

  1. 主記憶からページアウトされたページを格納する。
  2. 主記憶が更新された際に,更新前の内容を保存する。
  3. 主記憶と連続した仮想アドレスを割り当てて,主記憶を拡張する。
  4. 主記憶のバックアップとして,主記憶の内容を格納する。

解答・解説

 

 リアルタイムOSにおいて,実行中のタスクがプリエンプションによって遷移する状態はどれか。

  1. 休止状態
  2. 実行可能状態
  3. 終了状態
  4. 待ち状態

解答・解説

 

 プログラム実行時の主記憶管理に関する記述として,適切なものはどれか。

  1. 主記憶の空き領域を結合して一つの連続した領域にすることを,可変区画方式という。
  2. プログラムが使用しなくなったヒープ領域を回収して再度使用可能にすることを,ガーベジコレクションという。
  3. プログラムの実行中に主記憶内でモジュールの格納位置を移動させることを,動的リンキングという。
  4. プログラムの実行中に必要になった時点でモジュールをロードすることを,動的再配置という。

解答・解説

 

 ページング方式の仮想記憶において,ページアクセス時に発生する事象をその回数の多い順に並べたものはどれか。ここで,A≧Bは,Aの回数がBの回数以上,A=Bは,AとBの回数が常に同じであることを表す。

  1. ページアウト ≧ ページイン ≧ ページフォールト
  2. ページアウト ≧ ページフォールト ≧ ページイン
  3. ページフォールト = ページアウト ≧ ページイン
  4. ページフォールト = ページイン ≧ ページアウト

解答・解説

 

 記憶領域の動的な割当て及び解放を繰り返すことによって,どこからも利用できない記憶領域が発生することがある。このような記憶領域を再び利用可能にする機能はどれか。

  1. ガーベジコレクション
  2. スタック
  3. ヒープ
  4. フラグメンテーション

解答・解説

 

 三つの資源X〜Zを占有して処理を行う四つのプロセスA〜Dがある。各プロセスは処理の進行に伴い,表中の数値の順に資源を占有し,実行終了時に三つの資源を一括して解放する。プロセスAと同時にもう一つプロセスを動かした場合に,デッドロックを起こす可能性があるプロセスはどれか。

プロセス 資源の占有順序
資源X 資源Y 資源Z
A 1 2 3
B 1 2 3
C 2 3 1
D 3 2 1
  1. B,C,D
  2. C,D
  3. Cだけ
  4. Dだけ

解答・解説

 

 仮想記憶方式で,デマンドページングと比較したときのプリページングの特徴として,適切なものはどれか。ここで,主記憶には十分な余裕があるものとする。

  1. 将来必要と想定されるページを主記憶にロードしておくので,実際に必要となったときの補助記憶へのアクセスによる遅れを減少できる。
  2. 将来必要と想定されるページを主記憶にロードしておくので,ページフォールトが多く発生し,OSのオーバヘッドが増加する。
  3. プログラムがアクセスするページだけをその都度主記憶にロードするので,主記憶への不必要なページのロードを避けることができる。
  4. プログラムがアクセスするページだけをその都度主記憶にロードするので,将来必要となるページの予想が不要である。

解答・解説

 

 ページング方式の仮想記憶において,主記憶に存在しないページをアクセスした場合の処理や状態の順番として,適切なものはどれか。ここで,現在主記憶には,空きページはないものとする。

  1. 置換え対象ページの決定→ページイン→ページフォールト→ページアウト
  2. 置換え対象ページの決定→ページフォールト→ページアウト→ページイン
  3. ページフォールト→置換え対象ページの決定→ページアウト→ページイン
  4. ページフォールト→置換え対象ページの決定→ページイン→ページアウト

解答・解説

 

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

単位 秒
ジョブ 到着時刻 単位実行時の処理時間
A 0 2
B 1 4
C 2 3
D 3 2
E 4 1
  1. 8
  2. 9
  3. 10
  4. 11

解答・解説

 

 プログラムの実行時に利用される記憶領域にスタック領域とヒープ領域がある。それらの領域に関する記述のうち,適切なものはどれか。

  1. サブルーチンからの戻り番地の退避にはスタック領域が使用され,割当てと解放の順序に関連がないデータにはヒープ領域が使用される。
  2. スタック領域には未使用領域が存在するが,ヒープ領域には未使用領域は存在しない。
  3. ヒープ領域はスタック領域の予備領域であり,スタック領域が一杯になった場合にヒープ領域が動的に使用される。
  4. ヒープ領域も構造的にはスタックと同じプッシュとポップの操作によって,データの格納と取出しを行う。

解答・解説

 

 仮想記憶管理におけるページ置換えアルゴリズムとしてLRU方式を採用する。主記憶のページ枠が,4000,5000,6000,7000番地(いずれも16進数)の4ページ分で,プログラムが参照するページ番号の順が,1→2→3→4→2→5→3→1→6→5→4のとき,最後の参照ページ4は何番地にページインされているか。ここで,最初の1→2→3→4の参照で,それぞれのページは4000,5000,6000,7000番地にページインされるものとする。

  1. 4000
  2. 5000
  3. 6000
  4. 7000

解答・解説

 

 処理はすべてCPU処理である三つのジョブ A,B,C がある。それらを単独で実行したときの処理時間は,ジョブAは5分,ジョブBは10分,ジョブCは15分である。この三つのジョブを次のスケジューリング方式に基づいて同時に開始すると,ジョブBが終了するまでの経過時間はおよそ何分か。

〔スケジューリング方式〕

(1)一定時間(これをタイムクウォンタムと呼ぶ)内に処理が終了しなければ,処理を中断させて,待ち行列の最後尾へ回す。

(2)待ち行列に並んだ順に実行する。

(3)タイムクウォンタムは,ジョブの処理時間に比べて十分に小さい値とする。

(4)ジョブの切替え時間は考慮しないものとする。

 

  1. 15
  2. 20
  3. 25
  4. 30

解答・解説

 

 プリエンプション方式のタスクスケジューリングにおいて,タスクBの実行中にプリエンプションが発生する契機となるのはどれか。ここで,タスクの優先度は,タスクAが最も高く,タスクA>タスクB=タスクC>タスクDの関係とする。

  1. タスクAが実行可能状態になった。
  2. タスクBが待ち状態になった。
  3. タスクCが実行可能状態になった。
  4. タスクDが実行可能状態になった。

解答・解説

 

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

〔ページフォールト発生時の処理時間〕

(1)ページアウトを伴わない場合,ページインの処理時間は20ミリ秒である。

(2)ページアウトを伴う場合,置換えページの選択,ページアウト,ページインの合計処理時間は60ミリ秒である。

 

  1. 0.25
  2. 0.33
  3. 0.67
  4. 0.75

解答・解説

 

 三つのタスクA~Cの優先度と各タスクを単独で実行した場合のCPUと入出力(I/O)装置の動作順序と処理時間は,表のとおりである。優先順位方式のタスクスケジューリングを行うOSの下で,三つのタスクが同時に実行可能状態になってから,タスクCが終了するまでに,タスクCが実行可能状態にある時間は延べ何ミリ秒か。ここで,I/Oは競合せず,OSのオーバヘッドは考慮しないものとする。また,表中の( )内の数字は処理時間を示すものとする。

タスク 優先度 単独実行時の動作順序と処理時間(ミリ秒)
A CPU(2) → I/O(6) → CPU(4)
B CPU(2) → I/O(4) → CPU(2)
C CPU(2) → I/O(2) → CPU(3)
  1. 6
  2. 8
  3. 10
  4. 12

解答・解説

 

 セマフォを用いる目的として,適切なものはどれか。

  1. 共有資源を管理する。
  2. スタックを容易に実現する。
  3. スラッシングの発生を回避する。
  4. セグメンテーションを実現する。

解答・解説

 

 ページング方式の仮想記憶における主記憶の割当てに関する記述のうち,適切なものはどれか。

  1. プログラム実行時のページフォールトを契機に,ページをロードするのに必要な主記憶が割り当てられる。
  2. プログラムで必要なページをロードするための主記憶の空きが存在しない場合には,実行中のプログラムのどれかが終了するまで待たされる。
  3. プログラムに割り当てられる主記憶容量は一定であり,プログラムの進行によって変動することはない。
  4. プログラムの実行開始時には,プログラムのデータ領域とコード領域のうち,少なくとも全てのコード領域に主記憶が割り当てられる。

解答・解説

 

 CPUスケジューリングにおけるラウンドロビンスケジューリング方式に関する記述として,適切なものはどれか。

  1. 自動制御システムなど,リアルタイムシステムのスケジューリングに適している。
  2. タイマ機能のないシステムにおいても,簡単に実現することができる。
  3. タイムシェアリングシステムのスケジューリングに適している。
  4. タスクに優先順位をつけることによって,容易に実現することができる。

解答・解説

 

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

キャッシュメモリ ロード時刻(分:秒) 最終参照時刻(分:秒) 参照回数
C0 0:00 0:08 10
C1 0:03 0:06 1
C2 0:04 0:05 3
C3 0:05 0:10 5
  1. FIFO
  2. LFU
  3. LIFO
  4. LRU

解答・解説

 

ミドルウェア

 Hadoopの説明はどれか。

  1. JavaEE仕様に準拠したアプリケーションサーバ
  2. LinuxやWindowsなどの様々なプラットフォーム上で動作するWebサーバ
  3. 機能の豊富さが特徴のRDBMS
  4. 大規模なデータを分散処理するためのソフトウェアライブラリ

解答・解説

 

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

  1. EAI(Enterprise Application Integration)
  2. EJB(Enterprise JavaBeans)
  3. ERP(Enterprise Resource Planning)
  4. UML(Unified Modeling Language)

解答・解説

 

ファイルシステム

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

  1. A,B,C
  2. A,C,B
  3. B,A,C
  4. C,B,A

解答・解説

 

開発ツール

 分散開発環境において,各開発者のローカル環境に全履歴を含んだ中央リポジトリの完全な複製をもつことによって,中央リポジトリにアクセスできないときでも履歴の調査や変更の記録を可能にする,バージョン管理ツールはどれか。

  1. Apache Subversion
  2. CVS
  3. Git
  4. RCS

解答・解説

 

 プログラムの性能を改善するに当たって,関数,文などの実行回数や実行時間を計測して統計を取るために用いるツールはどれか。

  1. コンパイラ
  2. デバッガ
  3. パーサ
  4. プロファイラ

解答・解説

 

 ホワイトボックステストにおいて,プログラムの実行された部分の割合を測定するのに使うものはどれか。

  1. アサーションチェッカ
  2. シミュレータ
  3. 静的コード解析ツール
  4. テストカバレージ分析ツール

解答・解説

 

オープンソースソフトウェア

 OSS(Open Source Software)における,ディストリビュータの役割はどれか。

  1. OSSやアプリケーションソフトウェアを組み合わせて,パッケージにして提供する。
  2. OSSを開発し,活動状況をWebで公開する。
  3. OSSを稼働用のコンピュータにインストールし,動作確認を行う。
  4. OSSを含むソフトウェアを利用したシステムの提案を行う。

解答・解説

 

 オープンソースライセンスのGNU GPL(GNU General Public License)の説明のうち,適切なものはどれか。

  1. GPLであるソースコードの実現する機能を利用する,別のプログラムのソースコードを作成すると,GPLが適用される。
  2. GPLであるソースコードの全てを使って派生物を作った場合に限って,GPLが適用される。
  3. GPLであるソースコードの派生物のライセンスは,無条件にGPLとなる。
  4. GPLであるソースコードを組み込んだ派生物をGPLにするか否かは,派生物の開発者が決める。

解答・解説