200 likes | 360 Views
Priprema diska za upotrebu odvija se u tri koraka: 1. Format NISKOG NIVOA - izvršava sam softver - sastoji se od niza koncentričnih staza, od kojih svaka sadrži broj sektora
E N D
Priprema diska za upotrebu odvija se u tri koraka: 1. Format NISKOG NIVOA - izvršava sam softver - sastoji se od niza koncentričnih staza, od kojih svaka sadrži broj sektora - program za formatiranje niskog nivoa određuje veličinu podataka sektora (većina diskova koristi 512 -B sektore) Formatiranje diska
CILINDRIČNI ISKOŠAJ- prilikom primjene formata niskog nivoa, pozicija sektora sa rednim brojem 0 je razmještena u odnosu na poziciju sektora istog rednog broja susjednih staza • omogućava čitanje višestrukih staza u jednoj kontinuiranoj operaciji, bez gubljenja podataka • koliko će iznositi taj iskošaj ovisi o veličini drajva
- zbog formatiranja niskog nivoa dolazi do smanjenja kapaciteta diska (obično je kapacitet formatiranog diska za 20% manji od neformatiranog) problem koji se javlja prilikom čitanja podataka sa susjednih sektora u istoj stazi riješen je ukrštenim numeriranjem sektora prilikom formatiranja diska
2. Dijeljenje diska na particije • particije se promatraju kao zasebni disk • na Pentium-ima i većini drugih kompjutora, sektor 0 sadrži master boot zapis koji sadrži boot zapis i tablicu particije, a tablica sadrži podatak o početnom sektoru i veličinu svake particije • da bi se omogućilo podizanje operacijskog sustava jedna particija mora biti u tablici označena kao aktivna
3. Format VISOKOG NIVOA • Uključuje: smještanje boot bloka, administraciju slobodnog (dostupnog) skladištenja, korijenski direktorij te prazne fail sustave • U tablicu particija smješta se određeni kod, koji govori o tome koji fail sustav se koristi u kojoj particiji (jer mnogi operacijski sustavi podržavaju višestruke nekompatibilne fail sustave)
Prilikom početka rada pokreće se BIOS (Basic Input Output System= program koji koristi mikroprocesor za podizanje sustava, obično je smješten u ROM memoriji, provjerava da li je sve u redu sa U/I uređajima) • Očitava master boot zapis i onda provjerava koja particija je aktivna • Boot sektor sadrži program koji pretražuje korijenski direktorij zbog određenog programa koji se učitava u memoriju i onda izvršava
Algoritmi kretanja mehaničke ruke diska - razmatramo pitanje vremena potrebnog da se izvrši upis ili čitanje bloka diska, kao i algoritme kretanja mehaničke ruke diska Vrijeme zavisi o: 1. Vremenu traženja ( vrijeme potrebno za pomicanje ruke do odgovarajućeg cilindra) 2. Zadrški rotacije ( vrijeme za koje pravi sektor dođe do glave) 3. Pravo vrijeme prijenosa podataka
FCFS algoritam - drajver diska prihvaća zadatke jedan za drugim i tako ih izvršava, FCFS (First-Come-First-Served) • malo se može uraditi što se tiče optimizacije vremena traženja • Disk drajveri posjeduju tablicu, indeksiranu brojevima cilindara, sa neizvršenim zahtjevima za pojedine cilindre koji su povezani u listu
2. SSF algoritam - najmanje traženje prvo (Shortest Seek First) • skoro duplo smanjuje ukupni pomak ruke u odnosu na FCFS algoritam • Preuzima se zahtjev za najbliži cilindar, u cilju minimizacije vremena traženja • MANA ovog algoritma je favorizacija cilindara koji se nalaze oko sredine diska
Primjer rada FCFS i SSF algoritma Imaginarni disk sa 40 cilindara, prvi zahtjev je za čitanje bloka na cilindru 11, nakon toga dolaze zahtjevi i za cilindre 1,36,16,34,9 i 12. FCFS pomicanje ruke = 111 cilindara SSF pomicanje ruke = 61 cilindar
3. LIFT algoritam • algoritam koji se kreće u jednom smjeru sve dok ima zahtjeva, zatim mijenja smjer • od softvera zahtjeva praćenje jednog bita, bita trenutnog smjera, GORE ili DOLJE • Po završetku jednog zahtjeva disk provjerava bit. Ako je GORE, ruka kreće do najvišeg neizvršenog zahtjeva • ukoliko nema takvih, dolazi do promjene bita, i ruka ide do najnižeg neizvršenog zahtjeva
Primjer lift algoritma Imaginarni disk sa 40 cilindara, prvi zahtjev je za čitanje bloka na cilindru 11, nakon toga dolaze zahtjevi i za cilindre 1,36,16,34,9 i 12. Pretpostavio da je bit smjera GORE: Redoslijed pomaka ruke je: 12,16,34,36,9,1 = 60 cilindara
Rad s greškama • Greške koje se dogode prilikom proizvodnje uzrokuju loše sektore, tj. Sektore čija se zapisana vrijednost ne može korektno pročitati • Postoje dva pristupa lošim blokovima: 1. S greškama se radi unutar kontrolora (prije isporuke diska vrši se njegovo testiranje i lista loših sektora se zapisuje na disk. Za svaki loš sektor postoji rezervni koji ga mijenja. Ta zamjena se vrši na dva načina: remapiranjem ili pomicanjem svih sektora odjednom)
Staza diska sa lošim sektorom • Zamjena rezervnog i lošeg sektora • Pomicanje sektora radi prelaska preko lošeg sektora
2. Rad u operacijskom sustavu • mora pronaći listu loših sektora, čitajući je sa diska ili testiranjem čitavog diska • nakon toga OS pravi tablice za remapiranje Loši sektori nisu jedini izvor grešaka • greške se javljaju i prilikom traženja, uzrokovane mehaničkim problemima
Stabilno skladištenje • podsustav diska koji ima svojstvo da prilikom pisanja ispiše točne podatke, ili ako podatci nisu točni neće ih ispisati, dok će postojeće podatke ostaviti netaknutim • Koristi par identičnih diskova, koji rade zajedno sa odgovarajućim blokovima da formiraju jedan blok bez grešaka • U odsustvu grešaka će odgovarajući blokovi na oba drajva biti isti, i njihovo čitanje daje isti rezultat