SEKUNDARNA MEMORIJA
SEKUNDARNA MEMORIJA
Sekundarna memorija
● Sadržaj sekundarnih memorija – stalan
● Smještanje operativnog sistema, podataka i programa
● Magnetni disk - najznačajnija komponenta eksterne memorije
● Bolje performanse i veća dostupnost – korištenje RAID disk tehnologija
● Eksterna optička memorija
● Sistemi sa magnetnim trakama
● Procesor računara i disk komuniciraju putem kontrolera diska
● Kontroleri različitih diskova pružaju isti interfejs ka ostatku računara
Struktura hard diska
● Hard disk (ili tvrdi disk) je uređaj koji piše i čita podatke. ● Hard disk služi za trajno smještanje podataka i nakon gašenja
računara. ● Hard disk se sastoji od elektroničkog i mehaničkog dijela. Tvrdi disk
se sastoji od 5 glavnih dijelova:● Magnetna ploča ● Glava za čitanje/pisanje● Pobuđivačka kazaljka ● Pobuđivač● Osovina
Organizacija
● Podaci se zapisuju u trake - koncentrične krugove (engl. tracks).
● Međuprostor (engl. intertrack gap)● Staze su podjeljene na sektore (engl. Sectors)
(uobičajeno 512 bajta)● Međuprostor između sektora (engl.
intersector gaps)● Trake su imenovani od vanjske strane diska
(sektor 0) prema centru, i mogu se još nazivati i cilindri
● u pojedinom uređaju nalazi više ploča● ekvidistantne trake na svim diskovima čine
jedan cilindar.
Formatiranje
● Low level format-software lays down tracks and sectors on empty disk
● High level format is done next-partitions
512 bit sectors standardPreamble contains address of sector, cylinder, numberECC for recovery from errors
Klasteri
● Pojedini sektori grupisani i iskorišteni za zapis podataka nazivaju se nakupine (clusters).
● Operativni sistem se brine o iskorištavanju sektora i njihovom grupisanju u clustere.
● U idealnom slučaju pojedine datoteke će biti zapisane u jednom kontinuiranom clusteru, – u stvarnosti datoteke će biti više manje razbacane u više clustera na disku.
● Ova pojava se naziva fragmentacija ● dovodi do smanjivanja brzine pristupa datotekama
– Preslagivanje datoteka u kontinuirane clustere - defragmentacija
Karakteristike diska
● Kapacitet diska predstavlja količinu podataka koja stane na disk. Mjeri se u bajtima– proizvod broja glava, cilindara (staza po ploči),sektora po stazi i broja bajtova
po sektoru.
● Kategorisanje najvažnijih tehničkih karakteristika:– Prema kretanju glave diskove dijelimo na one fiksnom glavom (jedna po stazi) i
pokretnom glavom (jedna po površini),
– Diskovi mogu biti uklonjivi i neuklonjivi,
– jednostrani ili dvostrani,
– Prema broju ploča imamo diskove sa jednom ili sa više ploča
– Mehanizam glave može biti zasnovan na kontaktu (floppy) i aerodinamičkom međuprostoru (Winchester).
BZR - bite zone recording● Kod modernih diskova stvarni broj sektora po stazi
zavisi od pozicije staze
Podjela diska na sektore i staze(ljevo)- klasična podjela(desno) modernija zone bit recording podjela
Geometrija diska
● određena brojem magnetnih površina odnosno glava za čitanje i pisanje, brojem cilindara i sektora
● taj podatak se čuva na posebnoj memorijskoj lokaciji sa baterijskim napajanjem – CMOS RAM
● sa trodimenzionim adresiranjem «glava,cilindar, sektor» (engl. head, cylinder, sector)
● se može pristupiti svim dijelovima diska
Parametri koji određuju performanse diska
● Disk rotira konstantnom brzinom● Za čitanje i pisanje glava mora biti pozicionirana na željenu stazu na
početak željenog sektora na toj stazi. ● Kretanje glave: od ruba diska i nazad● Vremena:● vrijeme traženja (engl. seek tima) ● rotaciono kašenjenje (engl. rotational delay) - vrijeme potrebno da se
početak željenog sektora poravna sa glavom naziva se ● vrijeme pristupa = vrijeme traženja + rotaciono kašenje● vrijeme prenosa (engl. transfer time) - kad se glava nalazi na ispravnoj
poziciji nastupa prenos podataka
Parametri koji određuju performanse diska
● Pored vremena pristupa i vremena prenosa podataka, postoje nekoliko vremena kašnjenja (queuing delays) povezana sa U/I operacijama
● Kada proces pokrene jedan U/I zahtjev, mora prvo čekati u redu na uređaj sve dok taj uređaj ne bude dostupan.
● Vrijeme traženja počinje u trenutku kada je uređaj dodijeljen
Vrijeme traženja
● Vrijeme traženja je vrijeme potrebno da se ručica diska pomjeri na zahtjevanu stazu.
● Dvije ključne komponente: inicijalno vrijeme uspostavljanja i vrijeme koje je potrebno za prelazak do željen staze
Rotaciono kašnjenje
● Diskovi rotiraju brzinom koja se kreće od 3600 rpm (Revolutions Per Minute) do 15,000 rpm.
● Floppy dsikovi rotiraju sa brzinima tipično između 300 i 600 rpm. U najgorem slučaju, glava se mora pomjeriti od staze 0 do staze najbliže centru, a u prosjeku pola rotacije.
● Za minifloppy koji rotira sa 300rpm, srednje rotaciono kašnjenje je 100ms, a za hard disk koji rotira sa 3600rpm ono se smanjuje na 8,3ms.
Vrijeme prenosa (Transfer Time)
● gdje je● T - vrijeme prenosa,● b -broj bajta koji trebaju biti preneseni,● N - broj bajta na stazi,● r - rotaciona brzina, rpm
Ukupno prosječno vrijeme pristupa
● Ts je prosječno vrijeme traženja
Pravljenje particija
Jjedna particija ili se prema potrebi nekoliko particija koje se ponašaju kao zasebni diskovi.
● Više particija – kad želimo instalirati više operativnih sistema.
– kada je instaliran samo jedanoperativni sistem
– razdvojiti sistemske fajlove od korisničkih.
Glavni startni zapis (Master BootRecord)
● Informacije o svim particijama diska su zapisane u prvom logičkom sekotru, prvi sektor, prve staze na prvoj površini diska.
● Glavni startni zapis (engl. Master Boot Record). ● BIOS pristupa MBR-u kod svakog pokretanja računara.● MBR sadrži program koji očitava particionu tabelu, provjerava koja je
particija aktivna i očitava prvi sektor● aktivne particije - startni sektor (engl. boot sector). ● U startnom sektoru se nalazi mali program čijim pokretanjem započinje
bootstrap rutina odnosno učitavanje operativnog sistema u memoriju.
BIOS I BOOT
SEKTOR FAZANA PC
RAČUNARIMA
POWER GOOD
TIMER PREKIDA RESET
JMP FFFF:0000
GREŠKE BEEP
TRAŽI BIOS NA ADRESAMAC000:0000 i C780:0000
GREŠKE C000 ROM ERROR
0000:0472=1234
INIT VIDEO KARTICE
WARM=1
PNP BIOS ?
TEST BIOSA
TEST MEMORIJE
WARM BOOT ?
ZA SVE UREĐAJE SMJESTI PODATKE U RAM
ISKLJUČI KONFLIKTE
DODIJELI IRQ ADRESE
OMOGUĆI SVE UREĐAJE
UČITAJ CMOS RAM
DISKETA?
NAĐI MBR SEKTOR, CIL=0, HEAD=0, SECTOR=1, LEN=512
UČITAJ MBR NA 0000:7C00
MBR NEMA 55AA NA KRAJU
SKOČI U LOADER
NAĐI AKTIVNU PARTICIJU I POZICIJU BOOT SEKTORA
UČITAJ BOOT SEKTOR
BASIC ROM
NO ROM BASIC, SYSTEM HALTED
STARTAJ BASIC
NAĐI BOOT SEKTOR, TRACK=0, HEAD=0, SECTOR=1, LEN=512
LOŠA SIGNATURA
DISKETA
DISK BOOT FAILURE
GENERAL FAILURE ERROR
DOS, WIN3.1
WINDOWS 95/98/ME
WINDOWS NT, XP, 2000
LINUX NEBUTABILNA DISKETA
NON SYSTEM DISK OR DISK ERROR
WINDOWS VISTA
Formatiranje diska (niski nivo)
● Formatiranje diska je proces kod koga se na magnetni medij upisuju oznake koje predstavljaju granice staza i sektora, a neformatiran disk se ne može koristiti. Na niskom nivou se obično obavlja fabrički.
● Pripreme se signali za prepoznavanje (Preamble) i korekciju grešaka sektora (ECC) od particija
Formatiranje diska (visoki nivo)
● Druga vrsta formatiranja je tzv. formatiranje visokog nivoa (eng. high level formating) DOS/Windows operativnih sistema štopredstavlja formatiranje fajl sistema.
● Obično se formatira jedna od particija
● Logički sektori se pridružuju fizičkim
Preplitanje (interleaving)
• Preplitanje se koristilo za usaglašavanje brzine rotacije i prijenosa
• Logički sektori se ne redaju sekvencijalno u fizičke nego se preskače po jedan (b) ili dva (c)
Raspoređivanje zahtjeva za rad sadiskom
● Veliki broj zahtjeva za rad sa diskom● Pravilnim raspoređivanja ovih zahtjev (engl. disk scheduling) može se
skratiti ukupno vrijeme pozicioniranja ili rotaciono kašnjenje. ● Svaki zahtjev sadrži informacije o tome da li je u pitanju operacija čitanja
ili pisanja, adresu bloka na disku, adresu memorijskog bafera i broj bajtova koje treba prenijeti.
● Više zahtjeva može stići istovremenao a u jednom trenutku može biti obrađen samo jedan zahtjev.
● Za raspoređivanje pristiglih zahtjeva za rad sa diskom postoji više algoritama: FCFS, SSTF, SCAN, C-SCAN, LOOK i CLOOK.
Ciljevi raspoređivanja diska
● Za dati skup U/I zahtjeva
● Treba usaglasiti pristup disku za više U/I zahtjeva radi bržih performansi i smanjenog vremena pristupa
– Vrijeme pristupa ≈ udaljenost pristupa
– Mjeri se ukupnim kretanjem glave u broju cilindara od jednog zahtjeva do drugog.
Hard Disk Drive
Algoritmi raspoređivanjaIme Opis
FCFS Prvi došao – prvi uslužen
SSTF Najkraće vrijeme pristupa prvo – obrađuje zahtjev koji skraćuje sljedeći pristup
SCAN (ili Elevator) Pomjeri glavu s kraja na kraj (ima trenutni pravac)
C-SCAN Obradi samo zahtjeve u jednom pravcu (circular SCAN)
LOOK Slično SCAN, ali ne idi do kraja diska.
C-LOOK Cirkularni LOOK.Slično C-SCAN,ali ne idi do kraja diska.
FCFS (First Come First Serve)Ukupno kretanje glave: 640 cilindara za sve zahtjeve
SSTF (Shortest Seek Time First)● Odabira zahtjev s minimalnim vremenom pristupa od trenutne
pozicije glave● Ukupno kretanje glave: 236 cilindara● Rizik: Izgladnjivanje zahtjeva
SCAN: Elevator algorithm● Glava diska ide s jednog kraja diska ka drugom,
opslužuje zahtjeve dok ne dođe na drugi kraj diska, gdje se okreće glava i nastavlja opsluživanje
● Ukupno kretanje glave: 208 cilindara
LOOK (optimizovani elevator)● Glava diska ide samo do zadnjeg zahtjeva u oba
pravca, gdje se okreće glava i nastavlja opsluživanje
● Ukupno kretanje glave: 180 cilindara
C-SCAN (Circular-SCAN)● Daje uniformnije vrijeme čekanja nego SCAN
tretirajući cilindre kao kružnu listu.● Glava ide s kraja na kraj diska, obrađujući pri
tome zahtjeve. Kada dostigne drugi kraj vrati se na početak diska, bez obrađivanja zahtjeva u povratku
C-LOOK: A version of C-Scan● Glava ide do zadnjeg zahtjeva u jednom pravcu
I vraća se prije povratka na kraj diskae disk
Pouzdanost: Loši sektorio Defekt se prepoznaje razlikovanjem upisane I naknadno
pročitane vrijednostio Loše sektore može obraditi disk kontroler ili OSo Kontroler ima listu blokova i premapira iho U slučaju da to radi OS, koristi posebne tablice
(a) Disk s lošim sektorom (b) loš zamijenjen rezervnim (c) Pomjeranje sektora radi premoštenja
RAID strukture
● RAID strukture se koriste za realizaciju stabilnih sistema i koriste princip ogledala.
● Sa više diskova odvojeni U/I zahtjevi se mogu obraditi paralelno sve dok podaci koji se zahtjevaju leže na odvojenim diskovima.
● Jedan U/I zahtjev može biti obrađen paralelno ako podaci kojima se pristupa leže distribuirano na više diskova.
● Industrijski standardi poznati pod nazivom RAID (Redundant Array of Independent Disks).
RAID ● RAID šema se sastoji od 7 nivoa (od nivoa
0 do nivoa 6).
● Tri osnovne zajedničke karakteristike.
● (1) RAID je skup fizičkih diskova koje operativni sistem vidi kao jedan logički disk,
● (2) Podaci su raspoređeni preko niza fizičkih diskova.
● (3) Redudantni kapacitet se krosti za smještanje peritetne informacije koja garantuje oporavak u slučaju ispadadiska.
● Detalji druge i treće karakteristike razlikuju se za različite RAID nivoe.
● RAID 0 ne podržava treću karakteristiku.
RAID 0
● RAID nivo 0 nije pravi član RAID familije s obzirom da ne uključuje redundansu.
● Kod RAID 0 sistema korisnici i sistemski podaci su distribuirani preko cijelih diskova u nizu.
– podaci su podijeljeni na trake (striped) ● Svi korisnici i podaci se posmatraju kao da su smješteni na jedan veliki
logički disk. ● Disk je podijeljen na trake, koje mogu biti fizički blokovi, sektori ili
neke druge jedinice (round robin mapiranje)● Prednost ove šeme je da ako se jedan U/I zahtjev sastoji od zahtjeva ka
više traka one mogu biti obrađene u paraleli. ● RAID 0 je veoma brza konfiguracija i ima najbolje performanse čitanja i
upisa, ali pošto nema nikakvu redundansu otkaz bilo kog diska znači gubitak svih podataka.
RAID 1
● RAID 1 se razlikuje od ostalih RAID nivoa (2 do 6) po načinu na koji je postignuta redundansa.
● Redundansa se postiže prostim dupliciranjem svih podataka. ● Podaci se dijele na trake kao kod RAID 0 nivoa, samo u ovom
slučaju svaka logička traka se mapira na dva odvojena fizička diska. ● Svaki disk ima svoj disk ogledalo (engl. mirror disk) koji sadrži iste
podatke. ● Zahtjev za čitanje može se uslužiti sa bilo kog od dva diska koji
sadrže iste podatke, a nastoji se da se smanji vrijeme traženja i rotacionokašnjenje.
● Zahtjev za pisanje treba da se uradi na oba diska koji sadrže te podatke ali to se može učiniti paralelno.
● Osnovna mana: cijena
RAID 2
● RAID nivoi 2 i 3 koriste tehnike paralelnog pristupa. ● Kod paralelnog pristupa svi diskovi učestvuju u izvršenju svakog
U/I zahtjeva. ● Koristi se dijeljenje podataka na trake● Kod RAID 2 i 3 nivoa, trake su male, često veličine bajta ili
riječi. ● ECC (error-correcting code) se koristi za računanje greške. ● Bez obzira na broj diskova podataka, potrebna su još 3 diska za
ECC koja mogu sačuvati podatke uslučaju otkaza bilo kog diska. ● RAID 2 nije praktično implementiran.
RAID 3
● RAID 3 je organizovan na sličan način kao RAID 2 ● RAID 3 zahtjeva jedan redundantni disk, bez obzira
koliko● ima podatkovnih diskova. ● Organizuje podatke na nivou bit ili bajta, a po pitanju
redundanse prvi put se uvodi parnost diskova (engl. bit-interleaved parity).
● Kod diskova se tačno zna gdje je nastupila greška. U slučaju greške pristupa se disku parnosti i podacise rekonstruišu na bazi parnosti. Za sve diskove podataka dovoljan je jedan disk parnosti.
RAID 4
● RAID nivo 4 konfiguracija ima organizaciju dijeljenja podataka na nivou bloka, a po pitanju redundanse koristi parnost za diskove na nivou bloka (engl. block-interleaved parity).
● Za N blokova, sa N diskova, dovoljan je jedan blok parnosti koji je jednak veličini trake diska.
● U svakom ciklusu upisa učestvuje i diska parnosti a to dovodi do preopterećenja ovog diska koji može postati usko grlo sistema.
RAID 5
● RAID 5 je organizovan na sličan način kao RAID 4. ● Razlika je u tome da RAID 5 distribuira trake parnosti
preko svih diskova. ● Tipično se koristi round-robin šema alokacije ● Od osnovnih struktura RAID 5 predstavlja najbolju
kombinaciju: – posjeduje paralelizam,
– konkurentnost,
– dobar je za velike upise,
– diskovi su ravnomjerno opterećeni
RAID 6
● RAID 6 predstavlja jedinu RAID šemu koja može razriješiti problem u slučaju otkaza više od jednog diska
● Ukoliko se koriste prethodne šeme, osim RAID 1, svi podaci se gube ako istovremeno otkažu dva diska ili više diskova
● Kod RAID 6 šeme koristi se računanje dvije različite parnosti koje se smještaju u blokove na različitediskove.
● RAID 6 šema koja ima podatke za N logičkih diskova zahtjeva ukupno N+2 diska.
Raid Level 0+1● Razdvoji podatkena odsječke● Zatim odsječke na drugu kopiju
data disks mirror copies
Stripe 0
Stripe 4
Stripe 3Stripe 1 Stripe 2
Stripe 8
Stripe 7Stripe 6Stripe 5
Stripe 9
Stripe 0
Stripe 4
Stripe 3Stripe 1 Stripe 2
Stripe 8 Stripe 9
Stripe 7Stripe 6Stripe 5
Raid Level 1+0 (RAID 10) ● Napravi parove u ogledalu● Razdijeli na skup uparenih● Pouzdanije od RAID 0+1
Mirror pair
Stripe 0
Stripe 4
Stripe 8
Stripe 3
Stripe 11
Stripe 7
Stripe 2
Stripe 10
Stripe 6
Stripe 1
Stripe 5
Stripe 9
Stripe 0
Stripe 4
Stripe 8
Stripe 3
Stripe 11
Stripe 7
Stripe 2
Stripe 10
Stripe 6
Stripe 1
Stripe 5
Stripe 9
SSD (Solid State Drive)● SSD pruža potpuno direktan pristup blokovima
– Uniformno vrijeme pristupa različitim blokovima● Poluprovodnička Flash memorija
– MOSFET s 2 gate, od kojih je jedan izolovan pa čuva podatke godinama
43
Proces brisanja na SSD
● Brisanje: Prije upisa na SSD mora se obrisati blok (svi biti postavljeni na 1)
● Vrijeme života: Mjeri se brojem ciklusa brisanja
● Nivelisanje navlake: Drajveri firmware ili OS moraju balansirati broj ciklusa brisanja na svakom bloku da se uređaj ne pokvari prerano – Izbjegavati fiksiranje dijela za virtuelnu memoriju
44
Hibridni diskovi
DramCache
NVCache
Add a non-volatile cache
ATA Interface
Magnetni diskovi su još uvijek jeftiniji
Hibridni disk koristi mali SSD kao bafer za ve i magnetni diskć Izmijenjeni blokovi se upisuju na magnetni disk na bazi:
Vremena, najave gašenja
Upravljanje Swap prostorom
● Swap-prostor — Virtualna memorija koristi disk prostor kao proširenje glavne memorije
● Swap-prostor se može čuvati u datotečnom prostoru ili biti na posebnoj disk particiji
● Upravljanje Swap-prostorom
– Alocirati swap prostor kada se proces pokrene, sadrži programski segment I segment podataka
– Kernel koristi swap mape za praćenje upotrebe (koliko korisnika koristi tu stranicu)
Priključivanje diskova● Priključeno na računar
– Pristupa se kroz lokalnil I/O port– Koristi hardversku sabirnicu I kontroler (e.g., IDE, ATA, SATA,
FireWire, USB, SCSI, FC– Fiber Channel)● Mrežni priključak
– Specijalni sistem za pohranu preko mreže podataka– Klijent pristupa koristeći RPC baziran protokol (npr., NFS za
Unix sisteme ili CIFS za Windows sisteme)● Mreža za smještaj
– Privatna mreža (koristi protokole za smještaj) connecting file servers and storage units
47
Mrežni priključak diskova● Pristup ide preko mreže● NFS, CIFS i iSCSI su popularni
protokoli● Koristi se poziv udaljene procedure
(RPC) između računara koji pristupa disku i računara koji dijeli disk
● Poziv udaljene procedure zapakuje parametre zahtijeva udaljenom računaru, koji obradi zahtijev i vrati rezultate
● Koristi datotečni sistem udaljenog računara
Mreža za smještaj (SAN)
● Specijalna posvećena mreža za pristup podacima na nivou blokova
● Više računara povezano na različite diskove
Izmjenjivi mediji
● Zahtijevaju ljudsku intervenciju da bi se pristupilo podacima
● Magnetni (trake, diskete)● Poluprovodnički (stikovi, SD kartice)● Optički (CD, DVD)
Magnetne trake
• Dva tipa:Koturasti
Na mainframe računarima
Kertridž (QUIC, DAT, VHS)Koristi se na PC
• U oba slučaja traka se može ukloniti s diska• Montiranje je proces kada je traka spremna za
upotrebu• Sekvencijalni pristup• Istovremeno po 8 bita + paritet
Flopi disk• MFM kodiranje jačim (S) i slabijim (w) magnetnim
fluksom– Binarno 1 se kodira kao WS – Binarno 0 se kodira kao SW (ako je prethodni bit bio 0) ili
kao WW (ako je prethodni bit bio 1)
• Jedna ili dvije glave se pozicioniraju koračnim motorom
• 2, 2.5, 3, 3.5, 5.25 i 8”• Kapaciteti 75K-240M• Danas uglavnom za
hitni boot••
o Laser buši rupe na master (coated glass) disku
o Kalup je napravljen sa zaprekama gdje su rupe
o Smola izlivena unutra isti uzorak rupe kao stakleni disk
o Aluminij se stavi na vrh smoleo Rupice (udubljenja) i ravnine
(neizgorenog područje) su raspoređeni u spiralama
o Laser se koristi za čitanje rupica i ravnina i pretvori ih u bitove (0 i 1)
CD
o Cd se koristi za podatke i zvuko Potrebno poboljšati mogućnost korekcije grešaka na CDo Svaki bajt (8 bita) u 14 bitni simbol sa 6 bita ECCo 42 symbola čine okviro Grupa od 98 okvira čini CD-ROM sektoro Dodatni kod za ispravljanje grešaka na kraju sektora
CD-ROM
Presjek CD-R diska i laser.
U sivim CD-ovima zlatni sloj se zamijeni aluminijumom
Upisivi CD-R
DVD (Digital Versatile Disk)DVD isti dizajn kao CD sa poboljšanjima
1. Manje rupe (0.4 micron umjesto 0.8 micron).
2. Uža spirala (0.74 micron između staza umjesto 1.6 mikrona).
3. Crveni laser (0.65 micron umjesto 0.78 micron).
Može staviti standardni filn na DVD (133 minute)
Single-sided, single-layer (4.7 GB).
Single-sided, dual-layer (8.5 GB).
Double-sided, single-layer (9.4 GB).
Double-sided, dual-layer (17 GB).
USB uređaji● Podržano mnogo uređaja, svaki sa svojom internom
adresom (miševi, tastature, diskovi)● Popularno priključivanje Flash diskova, hard
diskova i floppy diskovaPodaci se prenose u formi paketa definisane strukture
● Paket ima zaglavlje i sadržaj