Jeśli fdisk
użyję schematu partycjonowania MBR i utworzę partycję podstawową lub rozszerzoną za pomocą (wersja 2.20.1), wówczas rozpocznie się on w sektorze 2048. Jeśli dobrze pamiętam, starsze wersje fdisk
uruchomiły pierwszą partycję w sektorze 63. Jeśli MBR potrzebuje tylko 512 bajtów, więc dlaczego pierwsza partycja nie rozpoczyna się w sektorze 2? Co jest przechowywane w tych 2047 sektorach? Jakiś etap programu ładującego?
10
fdisk
wutil-linux-ng-2.17.1/fdisk/fdisk.c
, funkcjaupdate_sector_offset(void)
, wydany 22 lutego 2010. System Windows Vista został wydany w latach 2006-11.Odpowiedzi:
Stara luka 32 kB między MBR a pierwszym sektorem systemu plików nosi nazwę regionu zgodności DOS lub luki MBR, ponieważ DOS wymagał, aby partycje rozpoczynały się na granicach cylindra (a każdy cylinder miał 64 sektory, tj. 64 sektory * 512 bajtów / sektor = 32 kB przestrzeni) .
Starsza wersja GRUB (GRUB1) mogła go użyć do zainstalowania 1,5-etapowego programu ładującego GRUB1: http://www.gnu.org/software/grub/manual/grub.html#BIOS-installation .
Dodatkowe linki:
źródło
grub-install -v
że mam zainstalowany GRUB2 i jeśli wykonam,dd if=/dev/sda obs=1 ibs=1 skip=512 count=2047 2>/dev/null | strings -n4
to w tym obszarze są „ładowanie”, „Geom”, „Odczyt”, „Błąd” i powinny one należeć do GRUB2.Jest to optymalizacja wydajności i wcale nie jest związana z Linuksem, tylko ze sprzętem. Nowoczesne dyski (tak zwane dyski „4K”) wykorzystują sektory fizyczne o wielkości 4096 bajtów zamiast 512. Nadal możesz adresować pojedyncze sektory 512-bajtowe, ale może to poważnie wpłynąć na wydajność, jeśli partycje (a raczej: systemy plików) nie są wyrównane do 4K .
Początkowy sektor 64 byłby wystarczający dla tego wymagania. Wzrost do 2048 wydaje się zapobiegawczy (np. Pozwala na umieszczenie tam partycji rozruchowej UEFI, jeśli dysk zostanie później przekonwertowany na GPT).
źródło