オペレーティングシステム|エンベデッドシステムスペシャリスト試験
この分野には 53問あります。くり返し出ているものから並べています。
この分野でくり返し出ている用語は排他制御(10問)・アルゴリズム(7問)・スケジュール(3問)・応答時間(2問)です。問題が多い回は平成24年度 春期(6問)・平成30年度 春期(5問)・令和2年度 10月(4問)です。
誰がいつCPUと資源を握るかを、時間軸で追う
優先度に基づくプリエンプティブなスケジューリングでは、実行可能なタスクのうち最も優先度の高いものが実行され、より高いものが実行可能になると実行中のタスクは中断されます。次に動かすものを選ぶのがスケジューラ、選ばれたものの情報をCPUに載せて走らせるのがディスパッチャです。応答時間は、時刻を区切って誰が動くかを追えば求められます。周期タスクでは、実行時間を周期で割った使用率の合計が1を超えると、どう並べても間に合いません。
共有資源はセマフォで守ります。P操作は値を減らし、空きがなければそのタスクを待たせます。V操作は値を増やし、待っているタスクがあれば一つを実行可能にします。二つのタスクが資源を逆の順序で取ると、片方だけを握った区間で切り替わったときにデッドロックが起き、取得の順序をそろえれば防げます。低い優先度のタスクが資源を握っている間に、中くらいのタスクが割り込んで高い優先度のタスクを待たせ続けるのが優先度逆転です。
割込みでは、割込み禁止の区間をできるだけ短くします。低い優先度の処理の中で割込みを禁止すると、その間に来た高い優先度の割込みへの応答が遅れるからです。割込み処理は割り込まれたタスクの状態を壊さないよう、それぞれのコンテキストで実行します。
仮想記憶は、主記憶の容量以上の空間をプログラムに見せる仕組みです。ページテーブルの大きさは、ページの数に1エントリの大きさを掛けて求めます。置換えは、最も早く入れたものを追い出すFIFOと、最後の参照が最も古いものを追い出すLRUを、参照列に沿って一つずつ追って数えます。平均アクセス時間は、アクセス1回の時間に、ページフォールトの負担を1回当たりに均した分を足して比べます。
主記憶管理の用語は、何をするかで区別します。要求を満たす最小の空き領域を選ぶのが最適適合、不要になった部分に次の部分を上書きするのがオーバレイ、実行中に必要なモジュールをライブラリから読み込むのが動的リンキングです。同じプロセスのスレッドはアドレス空間を共有するので、プロセス間より軽く通信できます。メモリマップドI/OをC言語で扱うときは、volatileを付けてコンパイラの最適化でアクセスが省かれないようにします。
この分野で出た問題
- 平成31年度 春期 問9ほとんどのプログラムの大きさがページサイズの半分以下のシステムにおいて,ページサイズを半分にしたときに予想されるものはどれか。ここで,このシステムは主記憶が不足しがちで,多重度やスループットなどはシステム性能の限界で運用しているものとする。
- 平成31年度 春期 問8セマフォの基本操作であるP操作,V操作に関する記述のうち,適切なものはどれか。ここで,セマフォ変数は事象の数を表すものとし,初期値は1とする。
- 令和2年度 10月 問8ページング方式の仮想記憶において,あるプロセスが仮想アドレス空間全体に対応したページテーブルをもつ場合,ページテーブルに必要な領域の大きさを2^xバイトで表すとすると,xを表す式はどれか。ここで,仮想アドレス空間の大きさは2^Lバイト,ページサイズは2^Nバイト,ページテーブルの各エントリの大きさは2^Eバイトとし,その他の情報については考慮しないものとする。
- 平成31年度 春期 問10ページング方式の仮想記憶において,ページ置換えアルゴリズムにLRU方式を採用した場合,ページの参照順序が1,2,3,2,3,1,4,2,4,3,1であるプログラムを実行するとき,ページの読込みは何回発生するか。ここで,主記憶のページ枠は3で,初期状態では主記憶にどのページも存在しないものとする。
- 令和2年度 10月 問9リアルタイムOSで用いられる,タスクがデッドラインを必ず守るデッドラインスケジューリングでは,周期タスクを図のように次の四つのパラメタr,C,D,T(0<r+C≦D≦T)の組みで表現することができる。
- 令和2年度 10月 問7リアルタイムOSにおけるコンテキストの使用方法に関する記述のうち,適切なものはどれか。
- 令和7年度 秋期 問6優先度に基づくプリエンプティブスケジューリングのリアルタイムOSを使用した組込みシステムにおいて,入力装置及び出力装置にアクセスする二つのタスクX,Yがある。XはYより優先度が低く,Xが資源待ち状態でない場合にYが資源待ち状態に遷移するとXが実行状態に遷移する。入力装置及び出力装置へのアクセスを排他制御するために,入力装置及び出力装置にそれぞれバイナリセマフォi及びoを用意し,X,Yを図のように実装した。このとき,デッドロックが発生するのはXの処理A,B,C,Dのうち,どの処理中にプリエンプションが発生してYが実行されたときか。ここで,Yの実行はαから行うものとし,Xの処理A,B,C,Dでは,入力装置及び出力装置へのアクセス並びにバイナリセマフォの操作は行わないものとする。
- 平成26年度 春期 問9CPU時間を多く必要とするタスクAと,入出力処理が多くCPU時間をほとんど必要としないタスクBで構成されているシステムがある。このシステムのスループットを高くする方法として,適切なものはどれか。
- 平成24年度 春期 問7FIFOで処理されるメールボックスに関する操作で,タスクが待ち状態に遷移するものはどれか。
- 平成31年度 春期 問7RTOSを用いたシステムにおいて,優先度逆転の原因となるものはどれか。
- 令和5年度 秋期 問8スケジューリングアルゴリズムにおける,リソーススタベーションに関する記述として,適切なものはどれか。
- 平成30年度 春期 問7スレッドとプロセスに関する記述のうち,適切なものはどれか。
- 令和3年度 秋期 問8セグメンテーションページング方式の仮想記憶において,セグメントテーブルに格納される情報はどれか。
- 平成30年度 春期 問8セマフォに関する記述のうち,適切なものはどれか。
- 平成23年度 特別 問8タスクが発行するシステムコールと発行後の状態遷移先との組合せとして,起こり得るものはどれか。
- 平成24年度 春期 問8デバイスドライバをアプリケーションタスクとして作成する場合の記述として,適切なものはどれか。
- 平成22年度 春期 問23プリエンプティブな優先度ベーススケジューリングで動作する三つの周期タスクA,B,Cがある。タスクCが実行可能になってから完了するまでの時間は最大何ミリ秒か。
- 令和4年度 秋期 問8プログラム実行時の主記憶管理に関する記述として,適切なものはどれか。
- 令和3年度 秋期 問7プロセスのスケジューリングに関する記述のうち,ラウンドロビン方式の説明として,適切なものはどれか。
- 令和6年度 秋期 問6プロセスの切替えに関する記述のうち,ディスパッチャの説明として,適切なものはどれか。
- 令和7年度 秋期 問7ページング方式の仮想記憶において,あるプロセスが仮想アドレス空間全体に対応したページテーブルをもつ場合,ページテーブルに必要な領域の大きさを2^xバイトで表すとすると,xを表す式はどれか。ここで,仮想アドレス空間の大きさは2^Lバイト,ページサイズは2^Nバイト,ページテーブルの各エントリの大きさは2^Eバイトとし,その他の情報については考慮しないものとする。
- 平成25年度 春期 問6ページング方式の仮想記憶において,ページフォールト発生時の動作状況が次の場合に,主記憶の平均アクセス時間が最も改善される対策はどれか。
- 平成30年度 春期 問1メモリマップド I/O の I/O ポートにアクセスするプログラムを C 言語で記述するときの注意点として,適切なものはどれか。
- 令和2年度 10月 問1メモリマップドI/OのI/OポートにアクセスするプログラムをC言語で記述するときの注意点として,適切なものはどれか。
- 平成30年度 春期 問9リアルタイム OS で用いられる,タスクがデッドラインを必ず守るデッドラインスケジューリングでは,周期タスクを図のように次の四つのパラメタ r,C,D,T(0<r+C≦D≦T)の組みで表現することができる。
- 平成28年度 春期 問10リアルタイムOSにおいて,タスクA〜Eの発生時刻,処理時間及び優先度が次のように定められている場合,タスクCの終了時刻はタスクAが発生してから何ミリ秒後となるか。ここで,優先度は1が最も高く,優先度の高いタスクが優先的に処理されるものとする。また,OSのオーバヘッドは考慮しないものとする。
- 平成28年度 春期 問9リアルタイムOSを用いたシステムにおいて,タスクAの優先度が最も低いとする。実行状態又は実行可能状態であるタスクがタスクAだけであるとき,電力の消費を抑えるためにタスクAで行う処理として,適切なものはどれか。
- 平成28年度 春期 問7リアルタイムシステムにおいて,アプリケーションタスクの要求によって入出力を行うデバイスドライバのタスク部が,要求された処理が完了したときに行う通知処理はどれか。
- 令和4年度 秋期 問5主記憶への 1 回のアクセスが 200 ナノ秒で,ページフォールトが発生すると 1 回当たり更に 100 ミリ秒のオーバーヘッドが生じるコンピュータがある。ページフォールトが主記憶アクセスの 50 万回中に 1 回発生する場合,ページフォールトは 1 秒当たり最大何回発生するか。ここで,ページフォールトのオーバーヘッド以外の要因は考慮しないものとする。
- 令和4年度 秋期 問11主記憶管理に関する記述のうち,適切なものはどれか。
- 平成22年度 春期 問8主記憶管理に関する記述のうち,適切なものはどれか。
- 平成26年度 春期 問7二つのタスクが共用する二つの資源を排他的に使用するとき,デッドロックが発生するおそれがある。このデッドロックの発生を防ぐ方法はどれか。
- 平成25年度 春期 問7仮想記憶システムにおいて,ページ置換えアルゴリズムとしてFIFOを採用して,仮想ページ参照列1,4,2,4,1,3を3ページ枠の実記憶に割り当てて処理を行った。表の割当てステップ“3”までは,仮想ページ参照列中の最初の1,4,2をそれぞれ実記憶に割り当てた直後の実記憶ページの状態を示している。残りを全て参照した直後の実記憶ページの状態を示す太枠部分に該当するものはどれか。
- 平成24年度 春期 問10仮想記憶方式において,記憶保護を実現するために,階層的に保護レベルを設定し,自分の属する階層よりも高い階層へのアクセスを禁止するものはどれか。
- 平成27年度 春期 問7優先度に基づくスケジューリングを行うリアルタイムOSを用いたシステムで,タスクの状態遷移を計測したところ,図の結果を得た。タスクが待ち,実行可能,実行の三つの状態をもつとき,(A),(B),(C)に当てはまるタスクの状態の組合せとして,適切なものはどれか。
- 平成27年度 春期 問10優先度に基づくプリエンプティブなスケジューリングで動作する,二つの周期タスクA,Bがある。AはBよりも優先度が高く,周期は2ミリ秒,実行時間は1ミリ秒である。Bの周期が10ミリ秒のとき,1周期中に実行を完了できるBの実行時間は最大何ミリ秒か。ここで,A,B以外のタスクはなく,タスク切替えによるオーバヘッドはないものとする。
- 平成30年度 春期 問10優先度に基づくプリエンプティブなスケジューリングを行うリアルタイム OS において,タスクの優先度逆転が発生する可能性があるのはどれか。
- 平成24年度 春期 問9優先度に基づくプリエンプティブスケジューリングが行われる二つのタスクA,Bがある。優先度はAの方が高く,制約条件は表のとおりである。Bが実行中,割込みによってAに実行を移すとき,A,Bともにデッドラインを超えないためには,割込みハンドラを何マイクロ秒以内で処理する必要があるか。ここで,割込み発生から割込みハンドラが起動するまでの時間,及びタスク切替えによるオーバヘッドの時間は無視するものとする。
- 平成23年度 特別 問9優先度に基づくプリエンプティブスケジューリングのリアルタイムOSを使用した組込みシステムで,入力装置及び出力装置にアクセスする二つのタスクX,Yがある。XはYより優先度が低く,Yが待ち状態となったときにXに処理が戻る。X,Yのアクセスを排他制御するために,入力装置及び出力装置それぞれに資源数1のセマフォを用意し,X,Yを図のように実装したとき,デッドロックが発生するのはXが処理中のどのタイミングでYが起床したときか。ここで,Yは起床するとαから処理を行うこととする。
- 平成22年度 春期 問10動的リンキングの機能はどれか。
- 令和6年度 秋期 問7可変区画方式を用いた主記憶管理において,最適適合アルゴリズムによって割り当てられる未使用領域はどれか。
- 平成25年度 春期 問5多重にハードウェア割込みが発生する組込みシステムにおけるISR(Interrupt Service Routine)の処理の説明のうち,適切なものはどれか。
- 平成23年度 特別 問4多重にハードウェア割込みが発生する組込みシステムにおけるISR(Interrupt Service Routine)の処理の説明のうち,適切なものはどれか。
- 平成27年度 春期 問9多重割込みを処理するリアルタイムOSの割込みハンドラの説明として,適切なものはどれか。
- 平成24年度 春期 問11多重割込みを処理するリアルタイムOSの割込みハンドラ処理として,適切なものはどれか。
- 平成22年度 春期 問7記憶管理におけるオーバレイ方式の記述として,適切なものはどれか。
正解と解説は、答え合わせのあとに出ます。
年度から解く
この分野の問題は 15年度ぶんの試験から出ています。いちばん新しいのは令和7年度 秋期です。年度別に解くと、回ごとにまとめて解けます。