Puncte:1

Există vreun fel de document RFC complet pentru formatul MBR (master boot record) - mai bine cu explicații?

drapel gd

Proiectez codul care enumerează partițiile din sistem. Citind numeroase documente nu pot elabora o listă completă și definită de constrângeri pentru algoritm și nu pot afla de ce există constrângeri.

  • MBR rădăcină are 4 intrări și, prin urmare, MBR poate conține 4 partiții primare;
  • În această listă de MBR rădăcină, poate exista o singură partiție extinsă, care apoi se conectează la MBR-uri secundare cu volume logice.

Întrebări:

  1. De ce DOS 6.22 FDISK nu permite crearea a 3 partiții primare, ci doar una?
  2. De ce MBR secundar în lanțul de partiții extins trebuie să aibă un singur volum logic, în timp ce poate avea 3 (salvând 2 link-uri suplimentare pentru lista extinsă de partiții)?
  3. Când partiția extinsă a fost verificată pentru unități logice până la sfârșitul lanțului, enumerarea revine înapoi la MBR rădăcină și continuă de la următoarea intrare după intrarea în partiția extinsă? De ce nu?
  4. Ce se întâmplă cu sistemul de operare DOS sau Windows dacă constată că intrările MBR nu respectă constrângerile (vezi întrebările de la 1 la 3 de mai sus)? Cu alte cuvinte, există vreo descriere a procesului de enumerare a partițiilor/unităților logice ale sistemului de operare?
Puncte:1
drapel in

O înregistrare de pornire principală este un tip de sector de pornire pentru utilizare cu sisteme compatibile cu IBM PC. Versiunea originală a MBR a fost scrisă de David Litton de la IBM în iunie 1982 și introdusă public în 1983 cu PC-DOS 2.0. Cu toate acestea, PC-DOS a implementat doar cele mai importante funcții, nu totul.

Cel mai apropiat de o „spec” (sunt conștient de) este https://thestarman.pcministry.com/asm/mbr/STDMBR.htm

Structura MBR este următoarea:

adresa hex (dec) mărimea funcţie
0x0000 (0) 440 încărcător de pornire
0x01B8 (440) 4 semnătură de disc (din familia Windows NT)
0x01BC și 0x01BC (444 și 445) 2 zero (0x0000)
0x01BE (446) 64 tabel de partiții
0x01FE și 0x01FF (510 și 511) 2 semnătură
total 512

Raspunsuri:

  1. De ce DOS 6.22 FDISK nu permite crearea a 3 partiții primare, ci doar una?

Suportul pentru medii partiționate a fost introdus cu IBM PC DOS 2.0 în martie 1983, dar suportând doar o partiție primară la acel moment. Acest lucru nu s-a schimbat niciodată. DOS în sine nu a folosit mai mult de o partiție primară. În consecință, FDISK nu se poate crea mai mult de o partiție primară.

  1. De ce MBR secundar în lanțul de partiții extins trebuie să aibă un singur volum logic, în timp ce poate avea 3 (salvând 2 link-uri suplimentare pentru lista extinsă de partiții)?

Nu sunt complet sigur ce vrei să spui exact cu „MBR secundar”, așa că, în cele din urmă, următoarele nu vă răspunde la întrebare. (Vă rugăm, tratați cu grijă!)

Suportul pentru o partiție extinsă a fost adăugat cu DOS 3.2. Unitățile logice imbricate într-o partiție extinsă au venit cu DOS 3.30.

Fiecare tabel de partiții extins definește exact o partiție logică și indică următorul tabel de partiții extins, dacă este necesar. Cu alte cuvinte - tabelele de partiții extinse funcționează conform principiului listei înlănțuite. Sectorul său de pornire este specificat în raport cu poziția tabelului de partiții curent. A doua intrare poate conține o concatenare la un alt tabel de partiții extinse și are întotdeauna tipul 5. În sectorul de început al acestei intrări este întotdeauna referită în raport cu sectorul primei partiții extinse. Deoarece este înlănțuit prin definiție, nu vă puteți referi la toate partițiile extinse, prin urmare nu puteți salva 2 link-uri suplimentare.

  1. Când partiția extinsă a fost verificată pentru unități logice până la sfârșitul lanțului, enumerarea revine înapoi la MBR rădăcină și continuă de la următoarea intrare după intrarea în partiția extinsă? De ce nu?

Nu. Deoarece nu există o „întrare următoare”.

  1. Ce se întâmplă cu sistemul de operare DOS sau Windows dacă constată că intrările MBR nu respectă constrângerile (vezi întrebările de la 1 la 3 de mai sus)? Cu alte cuvinte, există vreo descriere a procesului de enumerare a partițiilor/unităților logice ale sistemului de operare?

Dacă partițiile nu sunt recunoscute, atunci acestea nu sunt utilizate. Dacă prima partiție primară nu poate fi găsită, atunci DOS/Windows nu poate porni.

Notă: Versiunile anterioare de Windows se bazau pe literele de unitate determinate de MS-DOS, dar începând cu Windows 2000, aceste mapări sunt stocate în chei de registry, cum ar fi HKLM\SYSTEM\MountedDevices.Pentru anumite constelații de sistem, semnătura discului este utilizată și în fișierul boot.ini, care face parte din încărcătorul de încărcare Windows NT (NTLDR). Windows atribuie semnătura discului atunci când este inițializat un nou disc.

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.