†ハードディスクドライブ(HDD)は補助記憶装置のひとつで、高速大容量の記憶ユニットである。HDDにはプラッタと呼ばれる硬質の円盤が何枚か入っている。プラッタが硬質(ハード)であることから、ハードディスクと呼ばれるわけだ。†HDをフォーマットすると表面に木の年輪のように同心円状に並ぶトラックができる。両面にトラックがある。上下に重なる位置にあるトラックは、まとめてシリンダと呼ばれる。ハードドライブのスピンドルから同じ距離にあるすべてのトラックがひとつのシリンダを構成するわけである。両面フロッピーディスクの場合は、各シリンダが1対のトラックで構成される。シリンダ・トラック・読み書きヘッドにはわかりやすいように番号が付く。外側のトラックはトラック0と呼ばれ、すべてのトラック0をまとめたものがシリンダ0になる。ヘッド0は一番上のプラッタの上面に位置する読み書きヘッドだ。†ヘッドはHD上にデータを読み書きするための使用する部分である。駆動するには精密な位置制御ができるモーターが使用されていて、指定された位置に正確にヘッドを運ぶことができる。HDDは磁気ヘッドとディスク面が離れている浮動ヘッド方式である。ヘッドには読み取り用と書き込み用の2種類ある。この2種類を組み合わせて使用する。現在主流であるヘッドはAMRとGMRである。利用したデータ読み取り装置である。AMRの場合、電流とフリー層との角度によって電圧が変わる。その電圧の違いによって0と1の信号を読み取る。このAMRヘッドは、薄膜ヘッドと呼ばれている方式に比べて、ノイズの影響を受けにくい特徴がある。それでAMRヘッドは、読み取り精度を向上させてあるのだ。これで単位面積中に大量のデータを書き込んでも正しく読み取ることが可能である。利用したデータ読み取り装置である。GMRヘッドはAMRヘッドに比べてノイズの影響を受けづらいという特徴を持つ。よってAMRヘッドよりも読み取り精度が高い。具体的にいえば、単位面積当たり20[Gビット/インチ2]以上の記録密度を実現している。†TMRヘッドは、将来的に主流になると思われているヘッド方式である。TMRヘッドは、GMRヘッドと同じく4層構造のMR素子を使用している。非磁性層に絶縁材料を使用している点が、TMRヘッドとGMRヘッドの大きな相違点である。この非磁性層に絶縁材料を使用することによって、トンネル効果を利用してGMRヘッドよりも高い電圧差を生じさせることができる。†スピンドルモーターとは、ディスクを回転させるために使用する。制御基盤とは、ヘッドの動作制御、読み込み・書き込みの制御に使用します。磁気ディスクやヘッドは同一でも、接続する仕様によって制御基盤のみ異なるHDDも見受けられる。†アームは、ディスクの回転によって起こる風を受けて、読み書きヘッドが磁気ディスクに接触しないで浮くように設計されている。アームの動作は、アクチュエーターと呼ばれる正確に回転速度を制御できるサーボモーターを使用したシステムを用いる。†ファイルを磁気ディスクに書き込む際に、複数のレコードをひとまとめにしてブロックとして構成する。このときに1ブロックに含まれるブロック数をブロック化因数と呼ぶ。†バリアブル方式は、データ転送を可変長のブロック単位で行う。1トラックに複数のブロックを記憶でき、ブロック間にはIBG(ブロック間ギャップ)がある。セクタ方式は、1トラックを複数のセクタに分割して1ブロックを1個以上のセクタにまたがって記憶する。1個のセクタに複数のブロックは記憶できない。†データ読み込みは、ディスク上を捜査するヘッドが磁性体のN極・S極の向きが上向きか下向きかで判断して0と1を識別する磁束(下図の赤矢印)の互いに反対方向を向いているところで、反発が起こる。「→←」あるいは「←→」のところが1の信号に対応するわけである。†データの読み取り原理から見れば、ローレベルフォーマット状態では磁束が一定方向を向いているので全て0になっている。いうことは、ヘッドを使って磁束を反転させていけば0から1にすることができる。例:「←←←」は00である。真中の←を反転させて「←→←」にすると、11になる。データが格納されているセクタがヘッドに来るまでの時間。通常は1分間あたりの回転数から求める(rpm)。目的のトラックに磁気ヘッドが移動するまでの時間HDDの読み書き時間は次の公式によって計算される。(平均アクセス時間)=(平均回転待ち時間)+(平均位置決め時間)+(データ転送時間)例1:回転速度が5,000[回転/分]とすれば、1回転にかかる時間は1[分]/5,000[回転]=60,000[ミリ秒]/5,000[回転]=12[ミリ秒/回転]である。よって半回転時間は6[ミリ秒]である。平均位置決め時間は、HDDの磁気ヘッダの位置を決定する平均時間のことである。セクタ方式の磁気ディスクでは、1回の入出力はセクタ単位である。セクタは各トラックに同数個設定されている。セクタのデータ転送時間は、1[回転時間]×(1[セクタ長]/1[トラック容量])である。1セクタ当たり500バイトのデータが記録されていて、1トラック当たりの記録容量を15,000バイトとする。このときセクタのデータ転送量は、12[ミリ秒]×(500/15,000)=0.4[ミリ秒]である。例2:ディスク回転速度が2,500[回転/分]、記憶容量が20,000[バイト/トラック]のHDDがあったとする。これが10,000[バイト]のデータを読むための時間は次のように計算される。ディスク回転速度は2,500[回転/分]なので、1回転するのに60[秒]÷2,500=0.024[秒]=24[ミリ秒]となる。よって、10,000[バイト]のデータはディスク半回転分なので、12[ミリ秒]が答えである。◇[問題]HDDに格納したあるブロックを読み込み、引き続いて次のa〜dの位置関係にある2番目のブロックを読み込む場合、2番目のブロックの平均読み込み時間を昇順に並べよ。最初のブロックと同じシリンダにある[解答]ブロックにアクセスするには、�アクセスするアドレス(シリンダ番号・トラック番号・セクタ番号)を知り、�そのアドレスにアクセスすることが必要となる。そのアドレスに物理的にアクセスするには、�ディスクヘッドを指定シリンダ・指定トラック番号に移動し、�ディスクヘッドを指定セクタに位置付けするために回転待ちし、�指定アドレスのデータを読み書き(転送)する。問題ではブロックの長さが同じなので、データ転送時間は同じである。セクタの記述がないので、回転待ち時間も同じとみなす。要するに、位置決め時間に注目すればよい。a〜dにおけるアクセス回数と位置決め時間をまとめると次のようになる。短いよって、d<c<a<bとなる。†プラッタの表面は磁性体でコーティングされている。各プラッタはスピンドルに取り付けられ、スピンドルはモーターに取り付けられている。モーターはプラッタを一定の速度で回転させる。一般的な回転数は3600、4500、5400、7400[rpm]である。†HDDは、マスターブートレコード(MBR)内に格納されたデータによって基本的な起動手順を実行する。MBRは、HDDのシリンダ0、ヘッダ0、セクタ1に位置する。MBRにはブートストラップローダと呼ばれるプログラムと4つのパーティションテーブル、ブートシグニチャが記述されている。†HDDの物理構造に基づき、ディスクの記憶領域にアドレスを割り当てる方式。何番目のシリンダか、何番目のヘッドで読み取るか、トラック上の何番目のセクタかにより記憶領域にアドレスを割り当てる。3つの要素でひとつを構成される電話番号のようなものといえる。シリンダ・ヘッド・セクタの3つのパラメータを用いてディスクにアクセスする。シリンダはディスクの記録面の同一位置にあるトラックのこと。ディスクを同心円状に区切った区分。ヘッドは各面に対応する磁気ヘッドのこと。セクタは読み書きの最小単位となるトラックの区分のこと。ディスクの物理的なパラメータをそのまま使ったオーソドックスなアクセス方式で、古いHDDでは、このパラメータ通りのジオメトリ(物理構造)となっていた。†HDDの物理構造とは無関係に各セクタに順番に論理的なアドレスを割り当てていくアドレッシング方式のこと。LBA方式ではIDEの規格で生じていたアドレッシングの非効率を解消し、管理できる記憶容量の上限を超えることができるようになった。LBA方式では28ビットのアドレスを個々のセクタに割り当てている。宝くじの当選番号の通し番号のようなものといえる。†IDEが規格されたとき、HDD(IDE側)では、28ビットのアドレス、BIOSは24ビットのアドレスが管理できたが、シリンダ・ヘッド・セクタへのアドレスの割り当て方が異なっていたため、アドレスを20ビットまでしか利用することができなかった。そのために、E-IDEの規格では、LBA方式が採用され、BIOSの管理できる24ビットのアドレスまで利用できるようになった(24ビット<28ビット)。その後、HDDの大容量化の必要性からBIOSが変更され、32ビットのアドレスを管理できるようになり、利用できるアドレスはIDE側で管理できる28ビットになった(28ビット<32ビット)。20ビットHDDもBIOSも管理できる以上のアドレスを認識できない。ATAと呼ばれる方式が主流である。ところがHDDがDMAの転送モードに対応していたとしても、PC側がDMAが利用できるように設定されていなければ、速度が遅くなってしまい宝の持ち腐れとなってしまう。HDDのデータの転送が遅いと思ったときや、HDDの転送モードを確認したい時は次のようにしてください。1:「スタート」メニュー>「コントロールパネル」をクリックする。2:「パフォーマンスとメンテナンス」>「システム」をクリックする。3:「ハードウェア」タブ>[デバイスマネージャ]ボタンをクリックする。ATA/ATAPIコントローラ」の「セカンダリIDEチャネル」および「プライマリIDEチャネル」をダブルクリックする。5:「詳細設定」タブをクリックして、接続されているディスクの転送モードを確認・変更する。「現在の転送モード」で各ディスクのモードを確認することができる。数値が大きいほうが高速だが、騒音も比例して大きくなる。IDEなら、5400rpmか7200rpmを選択。流体軸受けモーター搭載と記述のある製品は動作音が静か。40Gバイトが理想的。IDE接続のHDDには、ATAという規格がある。転送速度によって、UltraATA/66、UltraATA/100などに分かれており、数字は「Mバイト/秒」単位の転送速度を表す。現在の主流はUltraATA/100。最新機種としてはUltraATA/133があるが、HDD自体も対応しているマザーボードも高価だ。HDDだけ高速にしても意味がないため、現在はお勧めできない。未フォーマットのディスクはセクタは存在せず、トラックのみ存在する。物理フォーマットはこのトラックにセクタのマークを付けていく役目を持つ。ここでいうマークはセクタ開始マーク・CHS情報・セクタサイズ・誤り訂正用のCRC・ギャップデータなどから構成されている。この構成方法が異なると同じディスクでも使用できるサイズが異なってくる。OSローダー(4678d)。