[ まえ | うえ ]

ここでは,講義中に行った 模擬テスト を公開していく.

本講義の評価は,試験期間中に行うペーパー試験 により 評価するが,過去問,本模擬試験の問題を,何割か(現在考慮中)そのまま出題する. そのため,本模擬試験の解答は原則として各自の自習に任せる.

  1. 基本ソフトウエアを 2 つ答えよ.
  2. オペレーティングシステムの役割を,歴史的背景を含めて論述せよ.
  3. 主記憶と 2 次記憶は,役割として何が同じで何が異なるか.
  4. 23 ビットで表現できる数は幾つか(例えば,2 ビットでは 00,01,10,11 の 4 個の数を表現できる).一般に,N ビットでは幾つか.
  5. 1G バイト,1M バイトのメモリへのアドレッシング(番地をふる) には, 各々何ビット必要か.
  6. バッチ処理とは,どのような処理か.
  7. UNIX 系オペレーティングシステム(UNIX,Linux,FreeBSD など)は, シングルユーザシステムか,マルチユーザシステムか.
  8. UNIX 系オペレーティングシステム(UNIX,Linux,FreeBSD など)は, タイムスライシング処理を行うか,行わないか.
  9. OS を起動することをなんというか.また,オペレーティングシステムカーネル が起動されるまでの処理の流れを説明せよ.
  10. ビックエンディアン(big endian) とリトルエンディアン(little endian) とは 何か,その違いを中心に説明せよ.
  11. (重量)プロセスとスレッドの違いを説明せよ.また, なぜ UNIX 系オペレーティングシステムで,スレッドが必要かを説明せよ.
  12. BIOS とは,何という英語の略か.また,その役割を説明せよ.
  13. プログラムは,実行形式(機械語) のとき,「メモリのどの位置にロードされても 実行可能形式」になっている.この形式を何というか.
  14. メモリ管理において,動的割り当て,動的解放を繰り返していると, 「空領域」の一つ一つが非常に小さな領域になり,かつ,その数が多くなってしまう. この状態を何というか.
  15. UNIX 系オペレーティングシステム(UNIX,Linux,FreeBSD など)で生成される プロセスは,重量プロセスといわれるなぜか.
  16. Xinu のプロセスは,生成されると何という状態に遷移するか,また, どのような処理を行うことにより「実行可能状態」となるか.
  17. 同じ優先順位のプロセスに,均等に処理を割り当てるスケジューリングポリシー を何というか.
  18. 「実行可能状態」のプロセスを並べた「待ち行列」を何というか.また,なぜ 「実行可能状態」のプロセスは,複数ありうるのか.説明せよ.
  19. Xinu 上で,以下のようにプログラミングする.
    long n = 0;
    
    main_xinu()
    
    {
    
      int procA(), procB();
    
      resume(create(procA, 200, 20, "prod", 0));
    
      resume(create(procB, 200, 20, "cons", 0));
    
    }
    
    procA()
    
    {
    
      long i; for(i=1;i<=2000000;i++) n++;
    
    }
    
    procB()
    
    {
    
      long i;
    
      for(i=1;i<=2000000;i++) printf("n is %d\n",n);
    
    }
    

    このプログラムをコンパイルし,実行すると,以下のような実行結果となる.

    n is 3423
    
    n is 3423
    
    n is 4876
    
    n is 4876
    
    . . .
    

    順に値が出力されずに,飛び飛びの値となってしまう.その理由を, 「コンテキストスイッチ」という言葉を用いて論述せよ.

  20. そこで,さらに,セマフォ関数 screate,signal,wait を用いることにより, n is 1, n is 2, n is 3, . . .と出力されるようになった.
    long n = 0;
    
    main_xinu()
    
    {
    
      int procA(), procB(); int prod, cons;
    
      prod = screate(1); cons = screate(0);
    
      resume(create(procA,200,20,"prod",2,prod,cons));
    
      resume(create(procB,200,20,"cons",2,prod,cons));
    
    }
    
    procA(int prod,int cons)
    
    {
    
      long i;
    
      for( i=1; i<=2000; i++ ) {
    
        wait(prod); n++; signal(cons);
    
      }
    
    }
    
    procB(int prod,int cons)
    
    {
    
      long i;
    
      for( i=1; i<=2000; i++ ) {
    
        wait(cons); printf("n is %d\n",n);
    
        signal(prod);
    
      }
    
    }
    

    ここで,2 つのセマフォの初期値を以下のように 10 と,0 にした場合, どのような結果となるか予想し,その理由を論述せよ.ただし,n++; に比べ, printf 関数の処理は非常に遅いと仮定せよ.

    prod = screate(10); cons = screate(0);
    
  21. UNIX 系オペレーティングシステムで,代表的なプロセス間通信の手法を 2 つ挙げよ.
  22. 共有メモリを持つ複数のプロセス間で通信をする場合,共有メモリを 用いることができる.その様子を「同期処理」という言葉を用いて説明せよ.
  23. X ウインドウシステムと,サーバクライアントモデルとの関係を述べよ.
  24. 「パラレル通信」と「シリアル通信」,各々長所,短所を述べ,その違いを 説明せよ.
  25. PCMCIA カードとは,どのような役目をするデバイスか.
  26. Xinu で以下のプログラムは,どの階層を初期化するプログラムか.
    for(i=0; isstate = SFREE;
    
      sptr->sqtail=1+(sptr->sqhead=newqueue());
    
    }
    
  27. SIMD 形式と,MIMD 形式の違いを,その用途を中心に説明せよ.
  28. 分散オペレーティングシステムにおいて,解決された問題点を 2 つ挙げよ.
  29. CPU の処理の源となる水晶発信装置が 400MHz の場合, 1 クロックは何秒になるか.
  30. Xinu の差分リスト(クロックキュー)で,key になるのは,どのような値か.
  31. 白黒(2色) で,640 × 480 の点(ドット) を持つディスプレイのためには, フレームバッファは何バイト必要か.
  32. フルカラーで,800 × 600 の点を持つディスプレイのためには,フレームバッファ は,何バイト必要か.
  33. ウインドウシステムの「ウインドウ描画」では,どのような処理に時間を使うか. 説明せよ.
  34. 分散オペレーティングシステムとは,どのようなオペレーティングシステムか, 従来の OS との違いを中心に論述せよ.
  35. タイムシェアリングシステムでは,割り込み処理でどのような処理が重要とな るか.
  36. 256 色で,800 × 600 の点を持つディスプレイのためには,フレームバッファは, 何バイト必要か.
  37. 仮想機械方式は,どのような目的のために用いられるか.
  38. アセンブリ言語の命令の部分を何というか.
  39. 仮想記憶において,アクセスしようとした番地にメモリが存在しなかった場合, 発生する割り込みをなんというか.
  40. 分散オペレーティングシステムにおいて,問題となる「負荷分散」とは何か, 説明せよ.
  41. 分散オペレーティングシステムにおいて,問題となる「位置透過」とは何か, 説明せよ.
  42. 仮想記憶において,管理の単位となる領域をなんというか.
  43. 仮想記憶を行うハードウエアで,最近の CPU に搭載されているものを何というか.
  44. 仮想記憶において,セグメントを切り替えるポインタを何というか.
  45. 仮想記憶において,セグメントの先頭からの相対番地を何というか.
  46. 仮想機械方式はどのような利点があるか.
  47. 教科書の 8章「多重プロセス」の演習問題、問3を解け.(解答は教科書)
  48. 教科書の 8章「多重プロセス」の演習問題、問4を解け.(解答は教科書)
  49. 教科書の 8章「多重プロセス」の演習問題、問5を解け.(解答は教科書)
  50. 教科書の 9章「メモリ管理」において,first-fit アルゴリズム, best-fit アルゴリズム,worst-fit アルゴリズムの違いを述べよ.
  51. 教科書の 9章「メモリ管理」の演習問題,問1を解け.(解答は教科書)
  52. 教科書の 9章「メモリ管理」の演習問題,問2を解け.(解答は教科書)
  53. 教科書の 9章「メモリ管理」の演習問題,問3を解け.(解答は教科書)
  54. 教科書の 9章「メモリ管理」の演習問題,問4を解け.(解答は教科書)
  55. 教科書の 10章「仮想メモリ」の演習問題,問1を解け.(解答は教科書)
  56. 教科書の 10章「仮想メモリ」の演習問題,問2を解け.(解答は教科書)
  57. 教科書の 10章「仮想メモリ」の演習問題,問3を解け.(解答は教科書)
  58. 教科書の 10章「仮想メモリ」の演習問題,問4を解け.(解答は教科書)

[ まえ | うえ ]