• ベストアンサー

磁気ディスク

下の2問の解き方を教えていただけませんか?? いろいろ調べてみたのですが、さっぱりわからずに困っています。。。よろしくお願いします。 (1) 次の仕様の磁気ディスクにおいて、必要とされるシリンダ数を求めよ。 ここでブロック間隔(IBG: Inter Block Gap)はブロックとブロックの間に存在し、ブロックの情報を記録する領域である。 またブロック化因数とは一つのブロックを構成するレコードの数である。 1シリンダ当たりのトラック数 19 トラック 1トラック当たりのバイト数 19,000 バイト 1レコードのバイト数 250 バイト ブロック間隔 150 バイト レコード件数 50,000 件 ブロック化因数 6 (2) 次の仕様の磁気ディスクの1ブロックアクセス時間を求めよ。ここでrpm(revolution per second)は一分当たりの回転数である。 平均位置決め時間 20 ミリ秒 1トラック当たりのバイト数 20,000 バイト ディスク回転速度 6,000 rpm 1レコードのバイト数 250 バイト ブロック間隔 150 バイト ブロック化因数 6

質問者が選んだベストアンサー

  • ベストアンサー
noname#227796
noname#227796
回答No.5

(1) 1ブロックの長さ   = レコード長×ブロック化因数+IBG   = 250 x 6 + 150   = 1,650 バイト 1トラックのブロック数   = 1トラックの長さ÷1ブロックの長さ   = 19,000÷1,650=11.52   = 11ブロック(端数切り捨て) 1トラックのレコード数   = ブロック数×ブロック化因数   = 11 x 6   = 66レコード 1シリンダに記録できるレコード数   =1トラックのレコード数×1シリンダのトラック数   = 66 x 19   = 1254レコード 必要なシリンダ数   = レコード件数÷1シリンダのレコード数   = 50,000÷1254 = 39.87   = 40シリンダ (2) 平均回転待ち時間=1回転時間÷2   =(時間(1分)÷ディスク回転速度)÷2   =1min(60,000ms)÷6,000rpm÷2   =5ms 1トラックあたりのデータ転送時間   =時間(1分)÷ディスク回転速度   =10ms 1ブロックの長さ   = レコード長×ブロック化因数+IBG   = 250 x 6 + 150   = 1,650 バイト 1トラックのブロック数   = 1トラックの長さ÷1ブロックの長さ   = 20,000÷1,650   = 12ブロック(端数切り捨て) 1ブロックあたりの転送速度   =1トラックの転送速度÷1トラックのブロック数   =10ms÷12   =0.83ms ※細かく計算しないで、複数の式をまとめると ※きっちり割り切れて 0.825 になります。 ※小数点以下何桁まで有効か、によりけりですが。 1ブロックアクセス時間   =平均位置決め時間+平均回転待ち時間+1ブロック転送時間   = 20ms + 5ms + 0.83ms   = 25.83ms -------- 以上が私の計算結果です。 わかりやすく式を列挙して計算しましたが、普通に計算する場合は、#1さんのやり方でかまわないです。(最終的にはその方向で計算できれば良いかと) (2)の方は、#3で指摘されているように、5ms足りません。 それと、#2で指摘されているように、図にすると理解しやすくなります。 ただ、(1)の↓この部分でケアレスミスしているかと。 >50000件格納するのに必要なトラック数 = 50000 ÷ 11 = 4545.4545・・・なので4546トラック これは、ブロック数で割るのではなく、レコード数が50,000件なので1トラックあたりのレコード数で割るのが正しいのではないかと思うのですが。 50000÷66=757.5757575....=758トラック で、以下、 758÷19 = 39.89 = 40シリンダ と。 私の方が間違いでしょうか?自信なし。 久しぶりなので、計算式等思い出せないものもあり(というかブロック化因数が思い出せなかった)、本+ネットを頼ったものもあって、自身がないのですが。(^_^; ここら辺の計算は、習うより慣れろ、なので、基本をベースに数をこなして覚えた方が良いでしょう。 #明日は有給のため夜更かし・・・

hiroko-0120-
質問者

お礼

とっても丁寧な回答、本当にありがとうございました。 とても分かりやすくて助かりました。 本やネットで調べていただいたみたいで。。。 感謝感謝です。 基本がまったくできていないので、 数こなしてがんばりたいと思います。 素敵なお休みをすごしてくださいねぇ♪

その他の回答 (5)

  • yutopapa
  • ベストアンサー率47% (139/295)
回答No.6

#1です。 しまった、やっぱりケアレスミスしてました。(^^; (1) 50000件格納するのに必要なトラック数 = 50000 ÷ 11 ÷ 6 = 757.57・・・なので758トラック 50000件格納するのに必要なシリンダ数 = 758 ÷ 19 = 39.894・・・なので40シリンダ (2) 平均回転待ち時間を足し忘れました。 平均回転待ち時間 = ディスク1回転の所要時間 ÷ 2 = 5ミリ秒 1ブロックアクセス時間 = 20ミリ秒 + 0.825ミリ秒 + 5ミリ秒 = 25.825ミリ秒 です。 フォローして下さった皆様、ありがとうございました。

hiroko-0120-
質問者

お礼

わざわざ訂正までしていただき 本当にありがとうございました!!

  • ymmasayan
  • ベストアンサー率30% (2593/8599)
回答No.4

No.1さんとNo.3さんをあわせてあわせ技で正解です。

hiroko-0120-
質問者

お礼

回答ありがとうございます! 基礎がまだまだなのでがんばります。

  • azicyan
  • ベストアンサー率21% (368/1747)
回答No.3

(2)はあと平均回転待ち時間を足す必要があるかも。 1回転の時間の半分です。5ミリ秒。

hiroko-0120-
質問者

お礼

補足までしていただいて! とっても助かりました!!!

  • azicyan
  • ベストアンサー率21% (368/1747)
回答No.2

数字だけを追うとわけがわからなくなってくるので 図を書いて考えるとわかりやすいですよ。

hiroko-0120-
質問者

お礼

回答ありがとうございます!! 図ですかぁ。 確かにテキストを見るとそれらしい図が書いてありました。 なかなか自分で考えるのは難しいですねぇ。 ありがとうございました。

  • yutopapa
  • ベストアンサー率47% (139/295)
回答No.1

基本情報処理の典型的な問題ですね。 その手の資格本を見れば解き方は載ってる筈です。 (1) 1ブロックのバイト数=250byte×6+150byte=1650byte 1トラック当たりの格納可能ブロック数=19000byte ÷ 1650byte = 11.5151・・・なので11ブロック 50000件格納するのに必要なトラック数 = 50000 ÷ 11 = 4545.4545・・・なので4546トラック 50000件格納するのに必要なシリンダ数 = 4646 ÷ 19 = 244.5・・・なので245シリンダ (2) 1ブロックのバイト数=250byte×6+150byte=1650byte ディスク1秒間の回転数=6000 ÷ 60 = 100回転 ディスク1回転の所要時間 = 1秒 ÷ 100 = 10ミリ秒 1ブロックリードする所要時間 = 1650 ÷ 20000 × 10 = 0.825ミリ秒 1ブロックアクセス時間 = 20ミリ秒 + 0.825ミリ秒 = 20.825ミリ秒 です。 (いや~久しぶりにこういう計算やりました。20年ぶり。間違ってたら恥ずかしいな。(^^;)

hiroko-0120-
質問者

お礼

回答ありがとうございます。 とっても助かりましたぁ。 情報処理の典型的な問題なんですね!! 勉強不足です。。。 本当にありがとうございました。

関連するQ&A

  • 磁気ディスクの問題

    「磁気ディスク装置の仕様が1トラック当たりの最大記憶容量が21000バイト/トラックでブロック間隔が200バイトで、記録するデータが レコード長600バイト、ブロック化因数8 のとき1トラックには最大何件のレコードが記録できるか。1つのブロックを複数のトラックにまたがって記録することはできない。」 というような問題なのですが、解答を見るとブロック間隔が4800から引いてありました。 なぜ足してはいけないのでしょうか?磁気テープの問題ならIBGも足すので混乱しています・・。 あと、公式みたいななものはあるのでしょうか?

  • 磁気ディスクの計算なんですが

    磁気ディスクの計算なんですが 40シリンダ/ディスク 60トラック/シリンダ 36000バイト/トラック 200バイト/IBG 500バイト/件(レコード) 1、この磁気ディスクの総容量は何メガバイトですか?1k=1000バイト1Mは1000000バイトとする 2、ブロック化係数1でデータを10000件格納するのに何トラック必要ですか? 3、上記のブロック化係数を8にしたとき何トラック必要ですか 4、ブロック化係数1でデータを格納した時、このディスクに何レコード格納できますか 5、上記、問題のブロック化係数を4にしたとき何レコード格納できますか これらの1~5の問題が全く分からないので詳しく教えてくださいお願いします。 詳しいサイトも教えていただけますとありがたいです。よろしくお願いします。

  • 磁気ディスク装置についての計算

    磁気ディスク装置についての計算 シリンダ数1600、1シリンダ当たりのトラック数19、トラック容量48000バイト、 ブロック間ギャップ470バイト、回転速度5100回転/分、平均シーク時間10ms の磁気ディスク装置について (1)ディスク容量はいくらか? (2)ブロッキングを行わない時、1200バイトの固定長レコードは1トラックにいくつ   格納できるか、また、1レコードを書き込むのに要する平均時間はいくらか?   (CPU使用時間、ブロック間ギャップの処理時間は無視できるものとする。) (3)ブロッキング係数が8のとき、(2)の各値はどうなるか? 以上3つの質問についてよろしくお願いします。

  • 磁気ディスクの計算問題です

    磁気ディスクの仕様 シリンダ数 16,384 1シリンダ内のトラック数 6 1トラック内のセクタ数 128 1セクタ内の記憶容量(バイト数) 512 1)この磁気ディスクの1シリンダ内の容量(Kバイト)はいくらか。1K=2^10とする 2)この磁気ディスクに1ブロック600バイトのデータを500ブロック記録する場合に必要なシリンダ数はいくらか。ただし、1ブロック長が1セクタ長を越える場合、複数のセクタを使用してもよいが、最後のセクタであまった領域は使用できないものとする。また、1ブロックを複数のトラックにまたがって記録することは出来ない。 答えは 1)384 2)2 です。

  • 磁気ディスク装置についての計算

    シリンダ数1600、1シリンダ当たりのトラック数19、トラック容量48000バイト、 ブロック間ギャップ470バイト、回転速度5100回転/分、平均シーク時間10ms の磁気ディスク装置について (1)ディスク容量はいくらか? (2)ブロッキングを行わない時、1200バイトの固定長レコードは1トラックにいくつ   格納できるか、また、1レコードを書き込むのに要する平均時間はいくらか?   (CPU使用時間、ブロック間ギャップの処理時間は無視できるものとする。) (3)ブロッキング係数が8のとき、(2)の各値はどうなるか? 以上3つの質問についてよろしくお願いします。

  • 磁気ディスク容量計算

    明日テストなのですが磁気ディスクの応用問題ができないのでわかりやすく教えていただけませんか 問題は 1トラックを20セクタ 1セクタ1024バイトでフォーマット 1kバイト=1024バイト 仕様は トラック/シリンダ 40トラック/シリンダ シリンダ数 800シリンダ です

  • この問題が分からないのです・・・

     ソフトバンク社の「第二種短期集中ゼミ」の問題を解いているのですが、 この問題の解き方が分からないので、教えてください~。(泣) どこから手をつけてよいのやらもまったく分からないんです。 問題集には答えのみしか書いてなくてホント困っています。 次に示すような仕様の磁気ディスク装置とファイルがある。 ただし、1つのブロックがトラックにまたがって記録されることはないとし、読み書きはセクタ単位で行われるものとする。10万レコードのファイルを書き込むのに必要な時間は、約何秒か。 磁気ディスク装置  データ転送速度 983040バイト/秒  ディスク回転数 3600回転/分  シリンダ数 1500  トラック当たりセクタ数 32  平均シーク時間 15ミリ秒 ファイル  レコード長 600バイト  ブロック化因数 27 で、解答は ア62 イ96 ウ148 エ167 から選ぶようになってて、 答えウになっています。

  • 磁気ディスクについて

    次のような仕様の磁気ディスク装置があります。 1トラックあたりの容量:30000 バイト 平均位置決め時間 :10 ミリ秒 ディスクの回転速度 :2,000 回転/分 平均回転待ち時間と、10000バイトのデータを処理するときのアクセス時間を求めるにはどうすれば良いでしょうか?よろしくお願いします。

  • 磁気テープ長の計算

    情報処理の問題の意味がわかりません。 解説をお願いします。 <問題> レコード長が750バイト、レコード件数が20,000件のファイルをデータ記録密度250バイト/ミリメートル、ブロック間隔15ミリメートルの磁気テープに書き込む。このとき、ブロック化因数を1(ブロック化しない)とすると、ブロック化因数を20としたときに比べて、必要な磁気テープ長は約何倍になるか。 ・ブロック間隔とは? ・ブロック化因数とは? よろしくお願いします。

  • シリンダ数を求める問題

    下の問題をやってみたのですがどうしても答えが合いません。どなたかご教授お願いします。 24000(バイト/トラック) 30(トラック/シリンダ) 上記の仕様の磁気ディスクに対して、100000件のレコードを記録するのに必要なシリンダ数を求めよ。1レコード200バイト、IRGは130バイトとする。 また、ブロック化係数を7とした場合に必要なシリンダ数を求めよ。 答えは ブロック化しない時、47シリンダ ブロック化係数が7の時、32シリンダ これが、自分で計算すると ブロック化しない時、45シリンダ ブロック化係数が7の時、31シリンダ になっていまします。

専門家に質問してみよう