> 2 TB'tan büyük sabit diskleri destekleme konusunda (biraz) daha iyi açıklamalar aramak


9

Bugün Google'da Googling yaparken, Seagate'in 2010'da bir süre sonra 3 TB'lık bir sürücü göndermeyi planladığını iddia eden yayınlara rastladım. Ne yazık ki, baktığım şeyler, birbirine uygun olmadığını düşündüğüm bilgi tidbitlerini içeriyordu. (Bazı örneklere bağlantı verebilirim, ancak şu anda yayın başına yalnızca 1 bağlantıya izin verilmektedir).

Şimdi bunun altında yatan can sıkıcı ayrıntıları daha iyi anlamak için herhangi bir "ihtiyacım" yok. Sadece merak ediyorum. Ve şaşkın.

Yani ... bazı sorular cevap verebileceğimden daha iyi bilgilendirilmiş bir kişi umuyorum.

  1. Hem donanımdaki hem de yazılımdaki olası bir adresleme sorunuyla ilgili konuşma beni şaşırttı. İddia şu ki Long LBA addressing (LLBA), Command Descriptor Block2 TB'den daha büyük bir sabit diske erişmek için mevcut sınırların üstesinden gelmenin bir yolu olarak adlandırılan bir şey olarak adlandırılan bir şeye ihtiyaç vardır (1 TB = 2⁴⁰ B).

    Tamam iyi. Ama bu sorunun en son ortaya çıkmasının, LBA alanının uzunluğunu 28 ila 48 bit arasında genişleterek çözüldüğünü düşündüm. (Bu web sitesini hatırlıyor musunuz? Www.48bitlba.com ) 6 baytlık bir LBA açıkça yeterince büyük, bu LLBA konuşmasında ne var. Daha önce olmasa da, tüm bunların Win XP SP2 tarafından düzeltildiğini düşündüm. Ve kesinlikle tüm donanımların göreve uygun olması gerekir, değil mi?

  2. 2 TB'tan daha büyük sürücülerle anladığım gibi asıl sorun şu anda neredeyse tüm sabit diskleri bölümlemek için kullanılan Ana Önyükleme Kaydı'ndaki (MBR) 4 bayt LBA alanları. En olası çözüm Intel'in GUID Bölümleme Tablosuna (GPT) geçmektir. GPT, LBA için 8 bayt alanı kullanır.

    Bu bağlamda anlamadığım şey, önyükleme ile ilgili sorun, Windows'un GPT kullanan bir 3 TB sürücüden olduğunu söylüyor. Mevcut PC BIOS'u bir GPT'yi nasıl tanıyacağını veya onunla nasıl çalışacağını bilemez. Ancak her GPT, sektör 0'da "Güvenlik" veya "Koruma" MBR'si ile birlikte gelir.

    Apple zaten Windows'u Intel Mac'lerinde (Boot Camp olarak) önyükleme yapabilmeleri için MBR'nin hibrit bir sürümünü kullanıyor. PC BIOS'un, örneğin 3 TB veya daha büyük bir diskin ilk 2 TB içindeki bir bölümü tanımasına ve önyüklemesine izin vermek için benzer bir şey yapılamadı mı?

4K sektörlerin tüm bunlara nereye sığacağı gibi daha fazla sorum var. Ama muhtemelen bunu kapatıp yayınlamamın zamanı geldi. ;-)

irrasyonel john

Yanıtlar:


6

"Uzun LBA" ile ilgili ifadeler bir Seagate ürün yöneticisinden geliyor gibi görünüyor. Muhtemelen kast ettiği şey, 48 bit LBA donanımda standart olmasına rağmen, 32 bit işletim sistemleri ve sürücülerin 48 bitin tümünü desteklemeyebileceğinden, (a) 32 bit olduklarından ve bu daha zahmetli ve (b) MBR, bölümler için yalnızca 32 biti destekliyor, bu yüzden neden rahatsız oluyorsunuz.

128GB bariyer, her ikisi de donanım tarafında, ATA spesifikasyonunda 28 bitlik bir artışla 48 bit LBA benimsenerek kırıldığında; ve ayrıca OS / sürücü tarafında, eski 28 bitlik sınırı zor kodlamadıklarından emin olmak için. Muhtemelen iyi yazılmış mevcut sürücülerin gerçek 48 bit sınırına uyduğunu söyleyebilirsiniz, ancak zincir boyunca bir yerde, birinin kolay yoldan çıktığını ve 32 bit sürücülerinde sadece 32 biti desteklediğini görmek kolaydır. 32-bit işletim sistemlerinin zaten çıkışta olduğu göz önüne alındığında, bunların hepsinin çalıştığından emin olmaya değmeyebilir.

Söylediğiniz gibi, asıl sorun (en azından Windows için), bir GPT diskini BIOS tabanlı (EFI olmayan) bir bilgisayardan önyüklemek. Koruyucu MBR, tüm diskin bilinmeyen tek bir bölüm gibi görünmesini sağlamak için tasarlanmıştır, böylece BIOS / MBR uyumlu bir bilgisayar bile ona dokunmaz. MBR'nin 2TB bariyerinin altındaki bölümler için başka girişler de içermesi için Karma disk oluşturabilirsiniz. Ancak bu tür Hibrit diskler kırılgandır (MBR veya GPT bölümleme araçlarıyla kolayca değiştirilebilir) ve artık resmi olarak GPT diskleri değildir. Ayrıca GPT bölümlerini de başlatmıyorsunuz, MBR bölümlerini açıyorsunuz. GPT bölümünü bir veri sürücüsü olarak kullanmak istiyorsanız bu sorun olmayabilir.

BIOS neden GPT'yi önyükleyemiyor? Kısa cevap, sahip olmamaları ve bu özelliği eklemek için daha akıllı bir BIOS'a ihtiyacınız olacak. Ve EFI bunun için.

4KB sektörleri size 32 bit LBA ile 16 TB diskler verecektir. (Ve daha az sayıda büyük sektör, potansiyel olarak daha az G / Ç ek yükü anlamına gelir.) Ancak, tüm işletim sistemleri ve sürücüler ve hatta bazı uygulamaların değişken boyutlu sektörleri desteklemek için yazılması gerekir. İhtiyacınız olan tek şey, sektör boyutunun kırılması için 512'de sabit kodlandığı bir yer. 4KB sektörleri de "kolay" bir çözüm değil çünkü birçok partiden çok iş gerektiriyor. Ancak, GPT'yi (sektör boyutu agnostik olan) ve değişken boyutlu sektörleri desteklemek için gelecekteki yazılımlar yazacaksanız, bir noktada ortak uygulama olarak kabul edilebilir.


3

Sen kesinlikle edebilir bir BIOS makinede GPT diskten önyükleme. Sadece pencereler yapamayacağını iddia ediyor.

Bu bile doğru değil; Windows'u GPT diskindeki bir BIOS bilgisayarından önyükleyebilirsiniz: önyükleme dosyalarını tutmak için yalnızca bir küçük MBR diskine ihtiyacınız vardır. Yedek (küçük) bölüm, disket, USB sürücü (varsayılan) olan diğer işletim sistemleri için kullanılan bir sabit disk ...

Windows kurulum / onarım diskine önyükleme yapın. Sistem sürücüsünü çubuk üzerinde oluşturun ve bcdbootönyükleme dosyalarınızı çubuğa koymak için kullanın . İle bir çizici ekleyin bootsect. Değişim {bootmgr} deviceTo boot. Çubuktan çizme.

Adımlar burada ayrıntılı olarak açıklanmıştır .


0

Bu bağlamda anlamadığım şey, önyükleme ile ilgili sorun, Windows'un GPT kullanan bir 3 TB sürücüden olduğunu söylüyor.

Geleneksel bir BIOS sisteminde, BIOS önyükleme kesimini diskten yükler ve 16 bit gerçek modda çalıştırır. Önyükleme sektöründen yüklenen kodun işletim sistemini doğru bulması ve yüklemesi gerekir.

MS, GPT desteğini gerçek mod yükleyicilerine hiç uygulamadı. Böylece GPT bölüm tablosunu okuyamaz ve işletim sisteminin geri kalanını önyükleyemez. GPT diskten pencereleri önyüklemek için ya geleneksel BIOS yerine uEFI kullanmanız gerekir (anakartınız destekliyorsa ve Windows sürümünüz yeterince yeni ise) veya üçüncü taraf yükleyici gibi bir geçici çözüm kullanmalısınız. hibrit bölüm türü veya önyükleme için ayrı bir disk.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.