Ja to ne bih baš nazvao „nultim“ sektorom, već radije prvim sektorom diska. ;-)
Ovde već postaje tradicija da se govori o fajlovima. Međutim,
fajlovi ne postoje! Oni su samo jedan od vidova apstrakcije/metafore koju nam pružaju „moderni“ (čak, nisu ni moderni, pošto je taj koncept star jedno 40 godina) operativni sistemi i njihova jezgra.
Kada se radi o softveru koji se pokreće u BIOS-u, ili koga neposredno sam BIOS pokreće (kao što je kod koji se nalazi u prvom sektoru), onda ne postoji pojam fajla.
O čemu se zapravo radi. BIOS učitava prvih 512 bajtova (tj. taj jedan sektor) u memoriju na adresu 0xc0:0 (ili tako nešto, sad ne znam napamet, davno je bilo kada sam se time igrao :). Zatim, uradi jedan jednostavan JMP na tu lokaciju, i to je sve.
Kod za te potrebe se zaista najčešće piše u asembleru, što zbog specifičnosti posla, što zbog malo raspoloživog prostora.
Što se tiče zapisa, to se može uraditi na mnoge načine, i to se radi „unapred“. Npr. ako koristiš neki operativni sistem u saglasju sa POSIX specifikacijom, onda možeš da koristiš naredbu „dd“ za direktan upis na proizvoljno mesto na disku.
Takođe, slobodno pročešljaj i ostale teme na ovom forumu, o tome se često priča, pošto je to prvi korak koji treba preći u razvoju operativnih sistema.
Možda se moje mišljenje promenilo, ali ne i činjenica da sam u pravu.