web-dev-qa-db-ja.com

> 2 TBハードドライブのサポートについて(やや)より良い説明を求める

今日、グーグルで調べていると、シーゲイトが2010年後半に3TBドライブを出荷する予定だと主張する投稿に出くわしました。 (いくつかの例にリンクしますが、現時点では投稿ごとに1つのリンクしか許可されていません)。

今、私はこれの根底にある退屈な詳細をよりよく理解するための「必要性」を本当に持っていません。ただ興味があるだけ。そして混乱した。

だから...私が答えるよりも誰かがより多くの情報を得ることを望んでいるいくつかの質問。

  1. ハードウェアとソフトウェアの両方の潜在的なアドレス指定の問題についての話は私を混乱させました。アサーションは、2より大きいハードドライブにアクセスするための現在の制限を回避する方法として、Long LBA addressing (LLBA)と呼ばれるものがCommand Descriptor Blockに必要であるというものですTB =(1TB =2⁴⁰B)。

    いいよ。しかし、この問題が最後に発生したときは、LBAフィールドの長さを28ビットから48ビットに拡張することで解決したと思いました。 (このWebサイトを覚えていますか? www.48bitlba.com )6バイトのLBAは明らかに十分な大きさなので、このLLBAトークはどうなっていますか。私はこれがすべてWin XP SP2によって修正されたと思いましたが、もっと早くはありませんか?そして確かにすべてのハードウェアがタスクに対応しているはずですよね?

  2. 2より大きいドライブで私が理解している本当の問題TBは、現時点でほぼすべてのハードドライブをパーティション分割するために使用されるマスターブートレコード(MBR)の4バイトのLBAフィールドです。最も可能性の高い解決策は、IntelのGUIDパーティションテーブル(GPT)に移行することです。GPTはLBAに8バイトのフィールドを使用します。

    このコンテキストで私が理解していないのは、GPTを使用する3TBドライブからWindowsを起動する際の問題です。確かに、現在のPC BIOSは、GPTを認識または操作する方法を知りません。ただし、すべてのGPTには、セクター0にいわゆる「安全」または「保護」MBRが付属しています。

    AppleはすでにMBRのハイブリッドバージョンを使用して、Intel Mac(別名Boot Camp)でWindowsを起動できるようにしています。たとえば、PCBIOSが3の最初の2 TB 3 TBまたはより大きなドライブ?

4Kセクターがこれらすべてにどのように適合するかなど、さらに多くの質問があります。しかし、それはおそらく私がただ黙ってこれを投稿する時です。 ;-)

-不合理なジョン

9
irrational John

「LongLBA」に関する発言は、その1人のSeagate製品マネージャーから発信されたようです。彼女がおそらく意味したのは、48ビットLBAがハードウェアの標準であるにもかかわらず、32ビットOSとドライバーは(a)32ビットであり、それがより面倒であるため、すべての48ビットをサポートしない可能性があるということです。 MBRはとにかくパーティションに対して32ビットしかサポートしないので、なぜわざわざするのですか。

ATA仕様ではハードウェア側にある48ビットLBAを採用することで128GBの障壁が破られたとき、28ビットから増加しました。また、OS /ドライバー側では、古い28ビットの制限をハードコーディングしていないことを確認します。現在の適切に記述されたドライバーは実際には実際の48ビット制限に準拠していると言えるかもしれませんが、チェーンのどこかで誰かが簡単に抜け出し、32ビットドライバーで32ビットしかサポートしていないことは簡単にわかります。とにかく32ビットOSが出て行く途中であることを考えると、それがすべて機能することを確認する価値はないかもしれません。

あなたが言ったように、本当の問題は(少なくともWindowsの場合)BIOSベースの(非EFI)コンピューターからGPTディスクを起動することです。 Protective MBRは、ディスク全体が1つの未知のパーティションのように見えるように設計されているため、BIOS/MBR対応のコンピューターはディスクに触れません。ハイブリッドディスクを作成して、2TBバリアより下のパーティション用にMBRに他のエントリも含めることができます。しかし、そのようなハイブリッドディスクは壊れやすく(MBRまたはGPTパーティションツールのいずれかで簡単に壊れる)、公式にはGPTディスクではなくなりました。また、GPTパーティションを起動するのではなく、MBRパーティションを起動します。 GPTパーティションをデータドライブとして使用したいだけなら、それで問題ないかもしれません。

そして、なぜBIOSはGPTを起動できないのですか?簡単に言うと、そうではないということです。その機能を追加するには、よりスマートなBIOSが必要です。そしてそれがEFIの目的です。

4KBセクターは、32ビットLBAを備えた16TBディスクを提供します。 (そして、より大きなセクターが少ないということは、I/Oオーバーヘッドが潜在的に少ないことを意味します。)しかし、すべてのOSとドライバー、さらには一部のアプリでさえ、可変サイズのセクターをサポートするように作成する必要があります。必要なのは、セクターサイズが512にハードコードされている1つの場所です。したがって、4KBセクターも、多くの関係者から多くの作業が必要になるため、「簡単な」ソリューションではありません。ただし、GPT(セクターサイズに依存しない)および可変サイズセクターをサポートする将来のソフトウェアを作成する場合は、ある時点で一般的な方法として採用される可能性があります。

6
Ken

あなたは確かにcan BIOSマシンのGPTディスクから起動します。ちょうどその窓はそれができないと主張します。

それでも実際には真実ではありません; GPTディスク上のBIOSコンピューターからWindowsを起動できます。起動ファイルを保持するために必要なのは、1つの小さな追加のMBRディスクだけです。スペア(小さな)パーティション、フロッピー、USBドライブ(想定)を備えた他のOSで使用されているハードディスク...

Windowsインストール/修復ディスクを起動します。スティックにシステムドライブを作成し、bcdbootを使用してブートファイルをスティックに配置します。 bootsectを使用してブートセクターを追加します。変更 {bootmgr}deviceからboot。スティックから起動します。

手順の詳細 ここ

3
Milind R

このコンテキストで私が理解していないのは、GPTを使用する3TBドライブからWindowsを起動する際の問題です。

従来のBIOSシステムでは、BIOSはディスクからブートセクタをロードし、16ビットリアルモードで実行します。次に、ブートセクタからロードされたコードは、適切なOSを見つけてロードする必要があります。

MSは、リアルモードローダーにGPTサポートを実装したことはありません。そのため、GPTパーティションテーブルを読み取って残りのOSを起動することはできません。したがって、GPTディスクからWindowsを起動するには、従来のBIOSの代わりにuEFIを使用するか(マザーボードがサポートしていて、Windowsのバージョンが十分に新しい場合は問題ありません)、サードパーティのローダーなどの何らかの回避策を使用する必要があります。ハイブリッドパーティションタイプまたは起動用の個別のディスク。

0
plugwash