見出し画像

【記憶装置6問】アクセス時間(FE計算シリーズ)

コンピュータのハードウェア性能は、>>CPUの実行速度Note<< だけでなく、周囲の装置、例えば記憶装置の読み込み/書き込み速度も絡みます。

今回は、メモリ・ディスクの問題を集めました。

基本的には >>ネットワーク問題は「みはじ」Note<< のようにデータ量/アクセス速度 = アクセス時間。

しかし、ディスク(磁気円盤)では「平均回転待ち時間」、キャッシュメモリと主記憶では「ヒット率(確率)」など独自の知識も必要になります。


それでは始めましょう!






記憶領域1

基本情報技術者修了試験 令和06年01月問13

正答はエ。

セグメント2(100kバイト)が空くので、セグメント3を前に詰める話です。

書き換え回数は、800kバイト/4バイト。要する時間は読み取りと書き込みで30+30=60ナノ秒。

よって、800kバイト/4バイト × 60ナノ秒 = 200k×60 = 12000k = 12000 × 1000 ナノ秒 = 12000 マイクロ秒 = 12ミリ秒。




記憶領域2(ブロック単位)

基本情報技術者修了試験 令和04年07月問14

正答はエ。

「ブロック単位で~」より、1ブロック4000バイト単位で使うと分かります。

2000バイトは、1ブロック(4000)。9000バイトは、3ブロック(12000)。空いた分が勿体ないかもですが、ブロック単位の方が管理しやすいんですね。

合計4ブロックなので、セクタは4×8=32個。




磁気ディスク | 1/2回転が特徴的

基本情報技術者修了試験 令和05年01月問14

正答はウ。

ディスク(円盤)なので、読み取り時間が段階的です。

  • ディスクを回転させる

  • 磁気ヘッドを移動させる

  • データを読み取る

ディスクを回転させる量は、状況によります。

読み取り開始位置がヘッド直下にあれば回転はしなくて良く、ヘッドの反対側にあれば1/2回転、ヘッドを過ぎた後ならほぼ1回転。

よって回転量は平均して1/2回転で計算します。これが特徴的。

毎分6000回転なので、毎秒100回転。1回転には1/100=0.01秒=10ミリ秒。1/2回転には5ミリ秒。


磁気ヘッドの位置決め時間は、問題文より20ミリ秒。


データ読み取りは、ディスクを回転させながら行います。よって回転量を求めます。

「1トラック(1周)に20kバイト」で「4kバイト」を読み取るので、4/20=1/5回転。1回転に10ミリ秒だったので、1/5回転は2ミリ秒。


以上より、5+20=25ミリ秒で読み取り開始、2ミリ秒で読み取り終了。計27ミリ秒。




キャッシュメモリ | ヒット率(1-x)と置く

基本情報技術者修了試験 令和04年01月問13

正答はイ。

ヒット率はをaと置いて、両構成でのアクセス時間を計算しておきます。

  • 40×a + 400(1-a)

  • 20×a + 580(1-a)

問題文に「両社の処理時間が等しかった」より、方程式にできると分かります。

$$
40×a + 400 (1-a) = 20×a + 580(1-a)\\
40a + 400 -400a = 20a + 580 -580a\\
-360a +400 = -560a + 580\\
200a = 180\\
a = 180/200 = 0.9 = 90[\%]
$$


(1-a)にびっくりしたかもですね。

「~じゃない確率」を(1-a)と書くのは良く使います。並列システムの稼働率などでも使うのでテクニックとして知っておきましょう。

もしキャッシュメモリへのヒット率が20%だったら、主記憶にアクセスするのは80% (=100-20)。



もう1問、ヒット率いきましょう。

基本情報技術者修了試験 令和02年12月問13

正答はエ。

キャッシュメモリへのヒット率をaと置いて式を立てます。

$$
60×(1-a)+10a=15\\
60-60a+10a=15\\
-50a=-45\\
a=-45/(-50)=0.9
$$



もう1問いきます。

基本情報技術者修了試験 令和02年06月問15

正答はウ。

問題文を読むと、現在の応答時間を使って1式、3年後の応答時間で1式を作って解きそうです。

ヒット率をaと置いて、現在の状態で立式してみます。

$$
0.2a + 2.2(1-a) = 1.0\\
0.2a + 2.2 -2.2a = 1.0\\
-2.0a = -1.2\\
a = -1.2/(-2.0) = 0.6
$$

問題文より「3年後は半分」になるので、a=0.3。

では3年後で立式してみます。

$$
0.2×0.3 + 2.2(1-0.3)\\
= 0.06 + 2.2 - 0.66\\
= 1.6
$$


(1-a)はヒット率だけでなく、稼働率でも使います。興味があったら >>確率問題Note<< もどうぞ。




まとめ


お疲れ様でした。

データの読み込み/書き込み速度の計算は、ネットワークのデータ通信の計算と似ています。>>ネットワーク問題は「みはじ」Note<<

キャッシュメモリのヒット率で使った(1-a)は、稼働率などの確率問題でも使います。>>確率の解説Note<<

正解できる幅を広げたくなったら、FE計算シリーズをパラパラと読んで頂けると嬉しいです。


他のNoteも良かったら見て頂けると嬉しいです。

気が向いたらまた来てくださいね。お待ちしてます!


\力試しは修了試験で!4回分の解説です/


p.s. 普段は >> 専門学校とIT就職のブログ << をやってます。

でわでわ(・ω・▼)ノシ


この記事が参加している募集

スキしてみて

学習方法・問題特集のNoteは全て無料提供を続けます▼ もしご覧になったNoteが有益だったり、私の志に共感されたりしましたら、サポート頂けますと励みになります▼ もちろんコメントでも結構です(・ω・▼)ノシ