01 Operativni Sistemi - Nedelja I

60
Operativni sistemi Operativni sistemi Predmetni nastavnik: Ranko Popović [email protected] (konsultacije: ponedeljak od 16,00 do 17,00) Predmetni asistent: Dušan Stamenković [email protected] (konsultacije: sreda od 12,00 do 13,00) Stranica predmeta: http://predmet.singidunum.ac.rs/course/view.php?id=108 Literatura: [1] Silberschatz A., Galvin P. B., Gagne G., Operating System Concepts, John Wiley & Sons, 7th ed., 2005. [2] Tanenbaum A. S., Modern Operating Systems, Prentice Hall, 3rd ed., 2007. [3] W. Stallings Operating Systems: Internals and Designs Principles, Fift ed., Prentice Hall, 2005. [4] R. Love, Linux Kernel Development, Second Ed., Novell Press, 2005. [5] R. Popović, I. Branović, M. Šarac, Operativni sistemi, Univerzitet Singidunum, 2011.

description

opis

Transcript of 01 Operativni Sistemi - Nedelja I

Page 1: 01 Operativni Sistemi - Nedelja I

Operativni sistemi

Operativni sistemi

Predmetni nastavnik: Ranko Popović

[email protected]

(konsultacije: ponedeljak od 16,00 do 17,00)

Predmetni asistent:Dušan Stamenković

[email protected]

(konsultacije: sreda od 12,00 do 13,00)

Stranica predmeta:http://predmet.singidunum.ac.rs/course/view.php?id=108

Literatura:[1] Silberschatz A., Galvin P. B., Gagne G., Operating System Concepts, John Wiley & Sons, 7th ed., 2005.

[2] Tanenbaum A. S., Modern Operating Systems, Prentice Hall, 3rd ed., 2007.

[3] W. Stallings Operating Systems: Internals and Designs Principles, Fift ed., Prentice Hall, 2005.

[4] R. Love, Linux Kernel Development, Second Ed., Novell Press, 2005.

[5] R. Popović, I. Branović, M. Šarac, Operativni sistemi, Univerzitet Singidunum, 2011.

Page 2: 01 Operativni Sistemi - Nedelja I

Operativni sistemi

Prvo poglavlje: Uvod

• Šta operativni sistemi rade

• Organizacija računarskih sistema

• Arhitektura računarskih sistema

• Struktura operativnog sistema

• Operacije operativnog sistema

• Upravljanje procesima

• Upravljanje memorijom

• Upravljanje skladištenjem

• Zaštita i bezbednost

• Distribuirani i paralelni sistemi

• Sistemi specijalne namene

• Računarska okruženja

Page 3: 01 Operativni Sistemi - Nedelja I

Operativni sistemi

Šta je operativni sistem (OS)?

• Program koji deluje kao posrednik između korisnika i računarskog hardvera.

• Ciljevi operativnog sistema:– Izvršavanje korisničkih programa i lakše rešavanje korisničkih

programa.

– Učiniti pogodnim za korisnika korišćenje računarskog sistema.

• Korišćenje računarskog hardvera na efikasan način.

Page 4: 01 Operativni Sistemi - Nedelja I

Operativni sistemi

Struktura računarskog sistema

• Računarski sistem se može podeliti na četiri komponente– Hardver – obezbeđuje osnovne računarske resurse

• CPU, memoriju, I/O uređaje

– Operativni sistem• Kontroliše i koordinira korišćenje hardvera između različitih

aplikacija i korisnika

– Aplikacioni programi – definišu načine na koje se sistemski resursi koriste za rešavanje računarskih problema korisnika

• Word procesori, kompajleri, web browsers (čitači), sistemi baza podataka, video igre

– Korisnici• Ljudi, mašine, drugi računari

Page 5: 01 Operativni Sistemi - Nedelja I

Operativni sistemi

Četiri komponente računarskih sistema

Korisnički interfejs

(API) Interfejs

sistemskih poziva

Page 6: 01 Operativni Sistemi - Nedelja I

Operativni sistemi

Definicija operativnog sistema

• OSalocira (dodeljuje) resurse– Upravlja svim resursima

– Odlučuje između konfliktnih zahteva uzimajući u obzir efikasnost i fer korišćenje resursa

• OS jekontrolni program– Kontroliše izvršenje programa i preventivno deluje zbog

grešaka i neodgovarajućeg korišćenja računara

Page 7: 01 Operativni Sistemi - Nedelja I

Operativni sistemi

Definicija operativnog sistema (nastavak)

• Nema univerzalno prihvaćene definicije

• “Sve što prodavac isporuči kada korisnik naruči operativni sistem” je samo “dobra” aproksimacija

• “Program koji radi sve vreme na računaru” je jezgro (kernel) operativnog sistema. Sve ostalo je ili sistemski program (isporučen sa operativnim sistemom) ili aplikacioni program

Page 8: 01 Operativni Sistemi - Nedelja I

Operativni sistemi

Istorijski pregled

• Prva generacija 1945 - 1955– Elektronske cevi, table sa prekidačima – korisnik sam radi sa prekidačima,

nema operativnih sistema• Druga generacija 1955 - 1965

– Tranzistori, sistemi sa grupnom-paketnom obradom sa automatskim procesiranjem poslova, gde je lista poslova smeštena na magnetskim trakama

• Treća generacija 1965 - 1980– Integrisana kola– Rad sa više programa – interakcija korisnika (vremenska raspodela)– Spooling (Simultaneous Peripheral Operation On Line)– OS/360 (IBM), Multics (MIT, Bell Labs, General Electric)

• Četvrta generacija 1980 - danas– Personalni računari i radne stanice – GUI– (CP/M, MS-DOS, Windows, Mac OS, Unix)– Mrežni OS (Unix) – Fajl servisi i računarski servisi– Web bazirani sistemi – džepni računari, celularni telefoni, cloud computing, ...

Page 9: 01 Operativni Sistemi - Nedelja I

Operativni sistemi

Migracija OS koncepata i karakteristika

Page 10: 01 Operativni Sistemi - Nedelja I

Operativni sistemi

Startovanje računara

• bootstrap program se učitava kod podizanja sistema ili kod ponovnog startovanja (reboot)– Tipično je uskladišten u ROM-u ili EEPROM-u, generalno poznatom

kao firmware (upravljački softver smešten u čipu)

– Inicijalizuje sve aspekte sistema

– Učitava (loads) kernel operativnog sistema i startuje izvršenje

Page 11: 01 Operativni Sistemi - Nedelja I

Operativni sistemi

Arhitektura računarskog sistema

• Rad računarskog sistema– Jedan ili više CPU-a, kontrolera uređaja povezanih zajedničkom

magistralom (bus-om) obezbeđuju pristup deljenoj memoriji

– Konkurentan rad CPU-a i uređaja koji se takmiče za memorijske cikluse

Page 12: 01 Operativni Sistemi - Nedelja I

Operativni sistemi

Rad računarskog sistema

• I/O uređaji i CPU mogu da rade konkurentno – treba voditi računa da se termini konkurentno i paralelno razlikuju

• Svaki kontroler uređaja ima lokalni bafer.

• CPU pomera podatke iz/ka glavnoj memoriji ka/iz lokalnih bafera

• Kontroler uređaja informiše CPU da je završio svoj rad prouzrokujući prekid (interrupt).

Page 13: 01 Operativni Sistemi - Nedelja I

Operativni sistemi

Zajedničke funkcije prekida

• Prekid u opštem slučaju transferuje kontrolu interrupt servisnoj rutini, kroz interrupt vektor, koji sadrži adrese svih servisnih rutina.

• Interrupt arhitektura mora da sačuva adresu prekinute instrukcije.• Dolazeći interapti su onemogućeni dok se drugi interapt

procesira.• Operativni sistem je interrupt-om pobuđen (kontrolisan).• Operativni sistem čuva stanje CPU-a skladišteći sadržaj registara

i programskog brojača.• Trap je softverski generisan interrupt prouzrokovan ili greškom

ili korisničkim zahtevom.

Page 14: 01 Operativni Sistemi - Nedelja I

Operativni sistemi

I/O struktura

• Sinhroni rad: Nakon startovanja I/O, kontrola se vraća korisničkom programu samo nakon kompletiranja I/O.

• Asinhroni rad: Nakon starta I/O, kontrola se vraća korisničkom programu bez čekanja na kompletiranje I/O.

Page 15: 01 Operativni Sistemi - Nedelja I

Operativni sistemi

DMA – Direct Memory Access struktura(Direktan pristup memoriji)

• Koristi se za I/O uređaje velikih brzina koji su sposobni za prenos informacija brzinom koja je blizu brzine memorije

• Kontroler uređaja prenosi blokove podataka iz bafera direktno u glavnu memoriju bez intervencije CPU-a.

Page 16: 01 Operativni Sistemi - Nedelja I

Operativni sistemi

Struktura skladištenja

• Glavna memorija – jedini veliki medijum skladištenja kome CPU može da pristupi direktno.

• Sekundarno skladištenje – proširenje glavne memorije koje obezbeđuje veće kapacitete postojanog-nepromenljivog skladištenja.

• Magnetski diskovi – nesavitljiva metalna ili staklena ploča diska pokrivena magnetskim materijalom za snimanje– Površina diska je logički podeljena na staze, koje su podeljene na sektore.

– Kontroler diska određuje logičku interakciju između uređaja i računara.

Page 17: 01 Operativni Sistemi - Nedelja I

Operativni sistemi

Hijerarhija uređaja za skladištenje

• Sistemi skladištenja organizovani su hijerarhijski po – brzini

– ceni

– nepromenljivosti

Page 18: 01 Operativni Sistemi - Nedelja I

Operativni sistemi

Keširanje

• Cache - reč se izgovara "keš" i izvedena je iz francuske reči cacher što znači sakriti

• Važan princip, iskorišćen na mnogim nivoima u računaru (hardver, operativni sistem, softver)

• Informacije koje se koriste privremeno se kopiraju iz sporije u bržu memoriju. Prvo se proverava prvo da li su informacije u kešu– Ako jesu, informacije se koriste direktno iz keša– Ako nisu, podaci se kopiraju u keš i koriste odatle

• Princip lokaliteta (prostorni i vremenski)

Page 19: 01 Operativni Sistemi - Nedelja I

Operativni sistemi

Radna memorija i stek

Page 20: 01 Operativni Sistemi - Nedelja I

Operativni sistemi

Kako rade savremeni računari

Page 21: 01 Operativni Sistemi - Nedelja I

Operativni sistemi

Računarski sistemi

• Jednoprocesorski sistemi• Multiprocesorski sistemi

– Sistemi sa više procesora (paralelni sistemi) koji direktno komuniciraju, dele magistralu, a ponekad i takt, memoriju i periferijske uređaje

– Simetrični i asimetrični

• Blejd serveri– svaki procesor se podiže nezavisno i ima sopstveni operativni sistem– sastoje se od nekoliko nezavisnih multiprocesorskih sistema

• Klaster sistemi– dele prostor za čuvanje podataka i blisko su povezani putem lokalne mreže.

Page 22: 01 Operativni Sistemi - Nedelja I

Operativni sistemi

Arhitektura simetričnih multiprocesora

Page 23: 01 Operativni Sistemi - Nedelja I

Operativni sistemi

Dizajn procesora sa dva jezgra

Intel® Core™ i7-3920XM Processor Extreme Edition (8M Cache, up to 3.80 GHz)

Page 24: 01 Operativni Sistemi - Nedelja I

Operativni sistemi

Struktura operativnog sistema

• Multiprogramming (rad sa više programa) je potreban zbog povećanja efikasnosti

– Jedan korisnik ne može da drži CPU i I/O uređaje zauzete sve vreme– Multiprogramming organizuje poslove-zadatke (kod i podatke) tako da CPU uvek ima

jedan posao za izvršenje– Jedan posao se selektuje iz podskupa svih poslova u memoriji i stratuje preko job

scheduling-a– Kada treba da čeka (na primer, na I/O), OS se prebacuje na drugi posao

• Timesharing (multitasking) je logičko proširenje gde CPU prebacuje zadatke tako često da korisnik može da interaguje sa svakim zadatkom dok se on izvršava, kreirajući interaktivno računarsko izračunavanje

– Vreme odziva (response time)treba da bude što manje– Svaki korisnik ima najmanje jedan program koji se izvršava u memoriji�proces– Ako je više poslova (jobs) spremno za startovanje u isto vreme � CPU scheduling

(raspoređivanje)– Ako procesi ne mogu da stanu u memoriju, swapping (prebacivanje-zamena)ih

pomera van memorije i kasnije ih vraća u memoriju ponovo za izvršenje– Virtual memory dozvoljava izvršavanje procesa čiji se delovi ne nalaze potpuno u

memoriji

Page 25: 01 Operativni Sistemi - Nedelja I

Operativni sistemi

Izgled memorije za 'multiprogrammed' sisteme

Page 26: 01 Operativni Sistemi - Nedelja I

Operativni sistemi

Vrste operativnih sistema• Paralelni sistemi

– Jako spregnuti sistemi – dele zajedničku memoriju i sistemski sat

• Distribuirani sistemi– Slabo spregnuti sistemi - skup fizički razdvojenih, umreženih računarskih sistema koji

omogućuju pristup različitim resursima

• Mrežni operativni sistemi– obezbeđuju okruženja u kojima korisnici sa svojih lokalnih mašina mogu pristupati resursima

drugih računara

• Sistemi za rad u realnom vremenu– Operativni sistemi sa vremenski definisanim radom procesora ili toka podataka

• Multimedijski sistemi– Rade sa određenim multimedijalnim podacima

• Sistemi za džepne uređaje– Lični digitalni pomoćnik (PDA – Personal Digital Assistant)– “Pametni” mobilni telefon– Ograničeni resursi

• Cloud sistemi– pojednostavljeni operativni sistemi koji rade kao čitači Weba i obezbeđuju pristup različitim

Web aplikacijama

Page 27: 01 Operativni Sistemi - Nedelja I

Operativni sistemi

Operacije operativnog sistema

• Interapt pobuđen hardverom• Softverska greška ili zahtev stvarajuexceptionili trap

– Deljenje sa nulom, zahteva servis operativnog sistema

• Kod drugih problema sa procesima koji uključuju beskonačnu petlju, procesi modifikuju jedni druge ili operativni sistem

• Rad udual-mode-u dopušta OS-u da zaštiti sebe i druge komponente sistema– User modei Sistemski(kernel) mode– Mode bit obezbeđuje hardver

• Pravi razliku kada sistem izvršava korisnički kod ili kernel kod.• Neke instrukcije su označene kao privilegovane, izvršavaju se samo u

sistemskom modu• Sistemski poziv postavlja mod na sistemski mod, a završetak poziva resetuje mod

na korisnički mod.

Page 28: 01 Operativni Sistemi - Nedelja I

Operativni sistemi

Tranzicija od korisničkog ka sistemskom modu

• Tajmer sprečava pojavu beskonačne petlje kada proces drži resurse– Setuje interapt nakon određenog perioda

– OS uvećava brojač

– Kada je brojač nula generiše se interapt

– Postavlja se pre raspoređivanja procesa da bi se povratila kontrola ili završio program koji prelazi dodeljeno vreme

Page 29: 01 Operativni Sistemi - Nedelja I

Operativni sistemi

Upravljanje procesom

• Proces je program u izvršenju. To je jedinica rada u sistemu. Program jepasivan entitet, proces je aktivan entitet.

• Proces treba resurse da bi izvršio svoj zadatak– CPU, memorija, I/O, fajlovi– Inicijalizacija podataka

• Završetak procesa zahteva vraćanje svakog resursa kako bi se ponovo mogao koristiti

• Proces sa jednom niti ima jedan programski brojač koji određuje lokaciju sledeće instrukcije koja se izvršava– Proces izvršava instrukcije sekvencijalno, u jednom trenutku jendu, do

kompletiranja• Proces sa više niti ima jedan programski brojač za svaku nit• Tipično sistem ima više procesa, više korisnika, više operativnih sistema

koji rade konkurentno na jednom ili paralelno na više CPU-a– Konkurentnost multipleksira CPU između procesa/niti

Page 30: 01 Operativni Sistemi - Nedelja I

Operativni sistemi

Aktivnosti upravljanja procesom

Operativni sitem je odgovoran za sledeće aktivnosti kod upravljanja procesima:

• Kreiranje i brisanje i korisničkih i sitemskih procesa

• Suspenzija i nastavak procese

• Obezbeđivanje mehanizama za sinhronizaciju procesa

• Obezbeđivanje mehanizama za komunikaciju procesa

• Obezbeđivanje mehanizama za rukovanje deadlock-om (potpunim zastojem)

Page 31: 01 Operativni Sistemi - Nedelja I

Operativni sistemi

Upravljanje memorijom

• Svi podaci su u memoriji pre i nakon procesiranja

• Sve instrukcije su u memoriji u cilju izvršenja

• Upravljanje memorijom određuje šta i kada je u memoriji– Optimizuje CPU iskorišćenje i odziv računara prema

korisnicima

• Aktivnosti upravljanja memorijom– OS vodi računa o tome koji delovi memorije se trenutno koriste

i ko ih koristi

– Odlučuje koji se procesi (ili delovi procesa) i podaci pomeraju u i van memorije

– Alociranje (dodela) i dealociranje memorije

Page 32: 01 Operativni Sistemi - Nedelja I

Operativni sistemi

Upravljanje skladištenjem

• OS obezbeđuje uniformni, logički pogled na skladište informacija– Apstrahuje fizičke karakteristike na jedinicu logičkog skladištenja -fajl– Svaki medijum je kontrolisan od strane uređaja (tj. disk drajv, tejp drajv)

• brzina pristupa, kapacitet, brzina transfera podataka, metod pristupa (sekvencijalni ili slučajni)

• Upravljanje fajl sistemom– Fajlovi su obično organizovani kroz direktorijume– Kontrola pristupa određuje ko i gde može imati pristup – OS aktivnosti uključuju

• Kreiranje i brisanje fajlova i direktorijuma• Primitive za manipulaciju fajlovima i direktorijumima• Mapiranje fajlova na sekundarno skladište• Backup fajlova na stabilan (nepromenljiv) medijum skladištenja

Page 33: 01 Operativni Sistemi - Nedelja I

Operativni sistemi

Upravljanje masivnim skladištenjem

• Obično diskovi služe za skladištenje podataka koji ne mogu da stanu u glavnu memoriju ili podataka koji mora da se čuvaju “duži” period vremena.

• Kompletna brzina rada računara zavisi od diska i njegovih algoritama

• OS aktivnosti– Upravljanje slobodnim prostorom

– Alokacija-dodeljivanje skladišta

– Raspoređivanje diska

• Neka skladišta ne mora da budu brza– Tercijarna skladišta uključuju optička skladišta, magnetske trake

Page 34: 01 Operativni Sistemi - Nedelja I

Operativni sistemi

I/O podsistemi

• Jedna od svrha OS-a je da sakrije osobenosti hardverskih uređaja od korisnika

• I/O podsistem je odgovoran za– Upravljanje memorijom I/O uključujući bafering (skladištenje podataka

privremeno dok se ne transferuju), keširanje (skladištenje dela podataka u brže memorije), spooling (preklapanje izlaza jednog posla sa ulazom drugih poslova)

– Opšti interfejs drajvera uređaja

– Drajvere određenih hardverskih uređaja

Page 35: 01 Operativni Sistemi - Nedelja I

Operativni sistemi

Zaštita i bezbednost

• Zaštita – bilo koji mehanizam za kontrolisanje pristupa procesa ili korisnika resursima definisan je od strane OS-a

• Bezbednost– odbrana sistema od unutrašnjih i spljašnjih napada– Ogroman opseg napada: denial-of-service, crvi, virusi ...

• Sistemi generalno prave razliku između korisnika da bi odredili ko može šta da radi– Identiteti korisnika (user IDs, security IDs) uključuju ime i

pridruženi broj, jedan po korisniku

– Korisnikov ID se onda pridružuje svim fajlovima, procesima tog korisnika da bi se odredila kontrola pristupa

– Grupni identifikator (group ID) je definisan za grupu korisnika, takođe je pridružen svakom procesu, fajlu

Page 36: 01 Operativni Sistemi - Nedelja I

Operativni sistemi

Računarska okruženja

• Tradicionalni računari– Kancelarijsko okruženje

• PC-ji povezani u mrežu, terminali povezani sa mainframe iliminicomputers obezbeđujući rad sa paketnom obradom (batch) i vremenskom raspodelom (timesharing)

• Portali dozvoljavaju umreženim i udaljenim sistemima pristup istim resursima

– Mreže u stanu• Korišćene da bi bile usamljen sistem pa tek onda modemski povezane

• Firewall

Page 37: 01 Operativni Sistemi - Nedelja I

Operativni sistemi

Računarska okruženja (nastavak)

� Klijent – server sistemi� Obični terminali zamenjeni pametnim PC-jima

� Mnogi sistemi sada serveri, odgovaraju zahtevima koje generišu klijenti

� Compute-serverobezbeđuje interfejs klijentu koji zahteva servise (tj. bazu podataka)

� File-serverobezbeđuje interfejs za klijente za skladištenje i ponovo pronalaženje fajlova

Page 38: 01 Operativni Sistemi - Nedelja I

Operativni sistemi

Peer-to-Peer computing

• Drugi model distribuiranog sistema

• P2P ne razlikuje klijente i servere– Svi čvorovi imaju istu težinu

– Svaki čvor može da radi kao klijent, server ili oba

– Čvor mora da se pridruži P2P mreži• registruje svoj servis na centralnom serveru za pretraživanje na mreži, ili

• broadcast-uje zahtev za servisom i odgovori na zahteve za servisom preko discovery protocol-a

• Primeri: Napster, Gnutella ...

Page 39: 01 Operativni Sistemi - Nedelja I

Operativni sistemi

Web-bazirani computing

• Web postaje svuda prisutan

• PC-ji su “najrasprostranjeniji” uređaji (?)

• Sve više uređaja se umrežava da bi im se omogućio pristup web-u

• Nova kategorija uređaja za kontrolu web saobraćaja između sličnih servera: load balancers

• Korišćenje operativnih sistema kao što je Windows 95, sa klijent strane, evaluirao je u Linux i Windows XP, koji mogu biti klijenti i serveri

Page 40: 01 Operativni Sistemi - Nedelja I

Operativni sistemi

Open-Source operativni sistemi

• Izvorni kod operativnog sistema je na raspolaganju

• Uklonjeni su zaštita od kopiranja i Digital Rights Management (DRM)

• FondacijaFree Software Foundation (FSF), sa licencom GNU Public License (GPL)

• Primeri:GNU/Linux , BSD UNIX (uključujući jezgro odMac OS X), i Sun Solaris

Page 41: 01 Operativni Sistemi - Nedelja I

Operativni sistemi

Dodatak A

Page 42: 01 Operativni Sistemi - Nedelja I

Operativni sistemi

Kako je Bill Gates postao bogat …

1974: Intel je razvio 8080 procesor, za koji je bio potreban OS

Gary Kildall

Molim vas!

Razvijte jedan

OS

CP/M OS

42Operating Systems, 2012, Danny Hendler & Roie Zivan

Page 43: 01 Operativni Sistemi - Nedelja I

Operativni sistemi

1974: Intel releases the 8080 processor, needs an OS

Gary Kildall

CP/M OS

Da li možete da mi dodelite prava na korišćenje CP/M?

Naravno!

Operating Systems, 2012, Danny Hendler & Roie Zivan43

Kako je Bill Gates postao bogat …

Page 44: 01 Operativni Sistemi - Nedelja I

Operativni sistemi

1980: IBM je dizajnirao IMB PC, za koji je tražio OS

Gary Kildall

Da li možete da

nađete OS za naš PC?

Molim vas da se sastanete sa predstavnicima

IBM-a, potreban im je OS

44

Kako je Bill Gates postao bogat …

Operating Systems, 2012, Danny Hendler & Roie Zivan

Page 45: 01 Operativni Sistemi - Nedelja I

Operativni sistemi

1980: IBM designs IMB PC, needs an OS

Kildall je zauzet. Molimo vas da razvijete OS!

Želeo bih da kupim DOS OS

Naravno, cena je $75,000

45

Kako je Bill Gates postao bogat …

Operating Systems, 2012, Danny Hendler & Roie Zivan

Page 46: 01 Operativni Sistemi - Nedelja I

Operativni sistemi

1980: IBM designs IMB PC, needs an OS

Da li mogu da zadržim prava na

MS-DOS?

Naravno, zašto

ne!!

46

Kako je Bill Gates postao bogat …

Operating Systems, 2012, Danny Hendler & Roie Zivan

Page 47: 01 Operativni Sistemi - Nedelja I

Operativni sistemi

Well, this is 20:20 hind vision…

47

Kako je Bill Gates postao bogat …

Operating Systems, 2012, Danny Hendler & Roie Zivan

Page 48: 01 Operativni Sistemi - Nedelja I

Operativni sistemi

Dodatak B

August 28, 2012, Ion Stoica

http://inst.eecs.berkeley.edu/~cs162

Page 49: 01 Operativni Sistemi - Nedelja I

Operativni sistemi

Primer: pretraživanje

• Složena interakcija

Datacenter

Loadbalancer

Ad Server

DNS Servers

SearchIndex

DNSrequest

createresultpage

Page 50: 01 Operativni Sistemi - Nedelja I

Operativni sistemi

Ugrađeni računarski sistemi

Page 51: 01 Operativni Sistemi - Nedelja I

Operativni sistemi

Moore-ov zakon

2X transistors/Chip Every 1.5 years

Called “Moore’s Law”

Moore’’’’s Law

Microprocessors have become smaller, denser, and more powerful.

Gordon Moore (co-founder of Intel) predicted in 1965 that the transistor density of semiconductor chips would double roughly every 18 months.

Page 52: 01 Operativni Sistemi - Nedelja I

Operativni sistemi

Čipovi sa više jezgara

• “ManyCore” refers to many processors/chip– 64? 128? Hard to say exact boundary

• How to program these?– Use 2 CPUs for video/audio– Use 1 for word processor, 1 for browser– 76 for virus checking???

• Parallelism must be exploited at all levels

• Intel 80-core multicore chip (Feb 2007)– 80 simple cores– Two FP-engines / core– Mesh-like network– 100 million transistors

• Intel Single-Chip Cloud Computer (August 2010)– 24 “tiles” with two cores/tile – 24-router mesh network – 4 DDR3 memory controllers– Hardware support for message-passing

Page 53: 01 Operativni Sistemi - Nedelja I

Operativni sistemi

Svet je paralelan!

• Intel Xeon E5-2660 Sandy Bridge EP

• 8 cores (16 hardware threads)

• 416mm die

• 2.263 billion transistors

• Caching– L1: 32K Inst, 32K Data

(3 clock access)

– L2: 256K (8 clock access)

– L3: 20MB

core core core core

core core core core

L3 cache

Page 54: 01 Operativni Sistemi - Nedelja I

Operativni sistemi

Internet: .89 Billion Hosts888,239,420 (as of January, 2012)

888,239,420

Page 55: 01 Operativni Sistemi - Nedelja I

Operativni sistemi

Internet: preko dve milijarde korisnika!

(izvor: http://www.internetworldstats.com/stats.htm)

Page 56: 01 Operativni Sistemi - Nedelja I

Operativni sistemi

Veza ka Internetu

• Smartphone shipments now exceed PC shipments!

• 2011 shipments:– 487M smartphones

– 414M PC clients• 210M notebooks

• 112M desktops

• 63M tablets

– 25M smart TVs

• 4 billion phones in the world � smartphone over next decade

Page 57: 01 Operativni Sistemi - Nedelja I

Operativni sistemi

Povećanje složenosti softvera

From MIT’’’’s 6.033 course

Page 58: 01 Operativni Sistemi - Nedelja I

Operativni sistemi

Primer: robot na marsu(“Pathfinder”)(avgust 2012 Curiosity)

• Pathfinder hardware limitations/complexity:– 20Mhz processor, 128MB of DRAM, VxWorks OS – Cameras, scientific instruments, batteries,

solar panels, and locomotion equipment– Many independent processes work together

• Can’t hit reset button very easily!– Must reboot itself if necessary– Must always be able to receive commands from Earth

• Individual Programs must not interfere– Suppose the MUT (Martian Universal Translator) module is buggy– Better not crash antenna positioning software!

• Further, all software may crash occasionally– Automatic restart with diagnostics sent to Earth– Periodic checkpoint of results saved?

• Certain functions time critical:– Need to stop before hitting something– Must track orbit of Earth for communication

Page 59: 01 Operativni Sistemi - Nedelja I

Operativni sistemi

Virtuelne mašine

• Software emulation of an abstract machine

– Give programs illusion they own the machine

– Make it look like hardware has features you want

• Two types of VMs

– System VM: supports the execution of an entire OS and its applications (e.g., VMWare Fusion, Parallels Desktop, Xen)

– Process VM: supports the execution of a single program; this functionality typically provided by OS

Page 60: 01 Operativni Sistemi - Nedelja I

Operativni sistemi

Važno !

Ova prezentacija je nekomercijalna. Slajdovi mogu da sadrže materijale preuzete sa Interneta, stručne i naučne građe, koji su zaštićeni Zakonom o autorskim i srodnim pravima. Ova prezentacija se može koristiti samo privremeno tokom usmenog izlaganja nastavnika u cilju informisanja i upućivanja studenata na dalji stručni, istraživački i naučni rad i u druge svrhe se ne sme koristiti –Član 44 - Dozvoljeno je bez dozvole autora i bez plaćanja autorske naknade za nekomercijalne svrhe nastave:(1) javno izvođenje ili predstavljanje objavljenih dela u obliku neposrednog poučavanja na nastavi;- ZAKON O AUTORSKOM I SRODNIM PRAVIMA ("Sl. glasnik RS", br. 104/2009 i 99/2011).................................................................................................................................................................................Ranko Popović[email protected]