Utilizarea Sistemelor de Operare -...

17
1 Universitatea POLITEHNICA Bucureşti Dispozitive de intrare iesire Utilizarea Sistemelor de Operare - Curs 8 - 23.11.2005 2 Utilizarea Sistemelor de Operare La ce ne referim? dispozitive de intrare/iesire (I/O devices): tastatura, mouse, monitor, imprimanta, placa de retea, etc. controller-e de intrare/iesire comunicatia sistemului de operare cu dispozitivele de intrare/iesire = programare I/O(intreruperi/drivere) interfetele puse la dispozitia utilizatorului

Transcript of Utilizarea Sistemelor de Operare -...

Page 1: Utilizarea Sistemelor de Operare - andrei.clubcisco.roandrei.clubcisco.ro/cursuri/1uso/05_USO_curs_08.pdf · –dimensiunea buffer-ului (caching) –“marketing capacity” vs. true

1

Universitatea POLITEHNICA Bucureşti

Dispozitive de intrare iesire

Utilizarea Sistemelor de Operare

- Curs 8 -

23.11.2005

2Utilizarea Sistemelor de Operare

La ce ne referim?

• dispozitive de intrare/iesire (I/O devices): tastatura, mouse, monitor, imprimanta, placa de retea, etc.

• controller-e de intrare/iesire

• comunicatia sistemului de operare cu dispozitivele de intrare/iesire = programare

I/O(intreruperi/drivere)

• interfetele puse la dispozitia utilizatorului

Page 2: Utilizarea Sistemelor de Operare - andrei.clubcisco.roandrei.clubcisco.ro/cursuri/1uso/05_USO_curs_08.pdf · –dimensiunea buffer-ului (caching) –“marketing capacity” vs. true

2

3Utilizarea Sistemelor de Operare

Ce este un dispozitiv I/O?

• orice dispozitiv care permite introducerea sau extragerea de informatie din calculator

• dispozitive de intrare: tastatura, mouse, joystick;

• dispozitive de iesire: monitor, imprimanta, boxe;

• dispozitive de intrare & iesire: placa de retea, modem, harddisk, floppy disk, USB stick (dispozitive de stocare)

• clasificarea se realizeaza din punct de vedere al

calculatorului

4Utilizarea Sistemelor de Operare

Controller-e I/O

• de obicei, un I/O device este alcatuit dintr-o componenta mecanica si una electrica (de

exemplu la harddisk, floppy disk, imprimanta)

• pentru un design modular, componenta electrica se considera separata si se numeste controller (adapter)

• conectarea dispozitivului fizic la controller se realizeaza prin intermediul unui conector (conectori)

Page 3: Utilizarea Sistemelor de Operare - andrei.clubcisco.roandrei.clubcisco.ro/cursuri/1uso/05_USO_curs_08.pdf · –dimensiunea buffer-ului (caching) –“marketing capacity” vs. true

3

5Utilizarea Sistemelor de Operare

Controller-e I/O (2)

6Utilizarea Sistemelor de Operare

Controller-e I/O (3)

• un controller este o interfata a dispozitivului periferic vazuta de sistemul de operare;

• programarea dispozitivului se realizeaza prin intermediul controller-ului asociat;

• rolul controller-ului este de a transforma comanda primita de la procesor in informatie specifica dispozitivului;

• tipuri de controller-e: SCSI, RAID, keyboard

controller, disk controller, graphics controller;

Page 4: Utilizarea Sistemelor de Operare - andrei.clubcisco.roandrei.clubcisco.ro/cursuri/1uso/05_USO_curs_08.pdf · –dimensiunea buffer-ului (caching) –“marketing capacity” vs. true

4

7Utilizarea Sistemelor de Operare

Controller-e I/O (4)

• un controller detine un set de registre utilizate pentru comunicatia cu procesorul

• prin scrierea in aceste registre sistemul de operare poate comanda dispozitivul sa transmita informatie, sa citeasca informatie, sau orice alta actiune

• majoritatea dispozitivelor detin un buffer intern unde se stocheaza informatia (de exemplu video RAM)

8Utilizarea Sistemelor de Operare

Direct I/O

• cum se acceseaza un registru al unui controller?

• se asociaza fiecarui registru un port (numar pe 8 sau 16 biti)

• pentru scrierea informatiei in registru

• in reg, port

• pentru citirea informatie din registru

• out port, reg

• spatiile de adresa pentru memorie si I/O sunt distincte

Page 5: Utilizarea Sistemelor de Operare - andrei.clubcisco.roandrei.clubcisco.ro/cursuri/1uso/05_USO_curs_08.pdf · –dimensiunea buffer-ului (caching) –“marketing capacity” vs. true

5

9Utilizarea Sistemelor de Operare

Memory mapped I/O

• se mapeaza registrele de control in spatiul de memorie <=> fiecarui registru de control i se asociaza o adresa de memorie care nu este

utilizata

• avantajul folosirii memory mapped I/O -> forma de adresare universala atat a variabilelor cat si a registrelor, nu este nevoie de mecanism de protectie

• pentru o viteza mai mare se foloseste o magistrala speciala (bus) pentru comunicatia intre

procesor si memorie

10Utilizarea Sistemelor de Operare

Intreruperi

• o prima varianta la comunicatia procesorului cu dispozitivele I/O este polling <=> procesorul

interogheaza periodic dispozitivul; dezavantaj -> timp pierdut

• alternativa este folosirea intreruperilor: de cate ori un dispozitiv poate transmite sau a primit informatie, lanseaza o intrerupere catre procesor

• intrerupere -> semnal transmis pe o linie rezervata catre controller-ul de intreruperi

Page 6: Utilizarea Sistemelor de Operare - andrei.clubcisco.roandrei.clubcisco.ro/cursuri/1uso/05_USO_curs_08.pdf · –dimensiunea buffer-ului (caching) –“marketing capacity” vs. true

6

11Utilizarea Sistemelor de Operare

Intreruperi (2)

12Utilizarea Sistemelor de Operare

Intreruperi (3)

• o intrerupere este detectata de controller-ul de

intreruperi

• controller-ul asociaza are un set de prioritati pentru tipurile de intreruperi

• in cazul a doua cereri de intreruperi simultane, cea mai prioritara va fi transmisa catre procesor

• procesorul isi intrerupe activitatea si executa o

actiune asociata (interrupt handler)

• tratarea unei intreruperi este precedata de salvarea contextului curent de rulare

Page 7: Utilizarea Sistemelor de Operare - andrei.clubcisco.roandrei.clubcisco.ro/cursuri/1uso/05_USO_curs_08.pdf · –dimensiunea buffer-ului (caching) –“marketing capacity” vs. true

7

13Utilizarea Sistemelor de Operare

Ierarhia sistemului I/O

14Utilizarea Sistemelor de Operare

Driver-e de dispozitiv

• de obicei numite device drivers

• fiecare dispozitiv are asociata o bucata de cod

(un program specific) pentru controlul acestuia -> device driver

• de obicei sunt scrise de producatorii dispozitivului

• de obicei sunt parte a kernel-ului (a nucleului sistemului de operare)

• un device driver controleaza un tip de dispozitiv

sau o clasa de dispozitive

Page 8: Utilizarea Sistemelor de Operare - andrei.clubcisco.roandrei.clubcisco.ro/cursuri/1uso/05_USO_curs_08.pdf · –dimensiunea buffer-ului (caching) –“marketing capacity” vs. true

8

15Utilizarea Sistemelor de Operare

Driver-e de dispozitiv (2)

16Utilizarea Sistemelor de Operare

Driver-e de dispozitiv (3)

• device driver-e de tip bloc- lucreaza cu blocuri de date

- cd-rom, hard disk, floppy disk, usb stick

• device driver-e de tip caracter- lucreaza cu datele la nivel de caracter (octet)

- tastatura, mouse

Page 9: Utilizarea Sistemelor de Operare - andrei.clubcisco.roandrei.clubcisco.ro/cursuri/1uso/05_USO_curs_08.pdf · –dimensiunea buffer-ului (caching) –“marketing capacity” vs. true

9

17Utilizarea Sistemelor de Operare

Discuri

• discuri magnetice: hard disk, floppy disk

• arrays of disks: RAID

• discuri optice: CD-ROM, DVD

18Utilizarea Sistemelor de Operare

Discuri magnetice

• cele mai incete dispozitive ale calculatorului (cea mai “slaba” evolutie)

• organizate in platane -> cilindre -> piste -> sectoare

• discurile IDE (Integrated Drive Electronics) –contin un controller care functioneaza la fel ca un controller obisnuit

• magistrale pentru accesul informatiei: ATA (Advanced Technology Attachment), SCSI (Small Computer System Interface), USB, Fibre Channel

Page 10: Utilizarea Sistemelor de Operare - andrei.clubcisco.roandrei.clubcisco.ro/cursuri/1uso/05_USO_curs_08.pdf · –dimensiunea buffer-ului (caching) –“marketing capacity” vs. true

10

19Utilizarea Sistemelor de Operare

Discuri magnetice (2)

• structura unui hard disk (figura 1)

• zonele externe au o suprafata mai mare

• hard disk-urile moderne contin numar diferit de sectoare per zona (figura 2) – cele interne contin mai putine sectoare

20Utilizarea Sistemelor de Operare

Discuri magnetice (3)

• Caracteristici

– capacitate (GigaBytes)

– dimensiune (fizica) – 3.5” pentru desktop; 2.5” pentru

laptop

– rata de transfer (40 MB/s - 120 MB/s)

– random acces time (5ms – 15 ms)

– dimensiunea buffer-ului (caching)

– “marketing capacity” vs. true capacity (GB vs. GiB) – un

hard disk precizat la 200 GB are de fapt 186.26 GB)

Page 11: Utilizarea Sistemelor de Operare - andrei.clubcisco.roandrei.clubcisco.ro/cursuri/1uso/05_USO_curs_08.pdf · –dimensiunea buffer-ului (caching) –“marketing capacity” vs. true

11

21Utilizarea Sistemelor de Operare

RAID

• Redundant Array of Inexpensive Disks

• aplicarea prelucrarii paralele in domeniul I/O

• ce se intampla? se inlocuieste controller-ul de disc pentru un calculator cu un controller RAID, se copiaza informatia pe RAID si se continua

• un sistem RAID contine un controller RAID SCSI si un set de discuri SCSI (setul apare insa

sistemului de operare ca un singur disc)

• sistemele RAID au datele distribuite in cadrul dispozitivelor – posibilitate de prelucrare paralela

22Utilizarea Sistemelor de Operare

RAID (2)

Page 12: Utilizarea Sistemelor de Operare - andrei.clubcisco.roandrei.clubcisco.ro/cursuri/1uso/05_USO_curs_08.pdf · –dimensiunea buffer-ului (caching) –“marketing capacity” vs. true

12

23Utilizarea Sistemelor de Operare

RAID (3)

• 6 scheme de distributie a datelor: RAID level 0 –RAID level 5

• RAID 0 nu are o redundanta a datelor

• RAID 1 dubleaza performanta la citire

• RAID 2 lucreaza la nivel de octet – foloseste un cod de detectie si corectie a erorilor (Hamming)

• RAID 3 – versiune simplicficata a lui RAID 2

• RAID 4,5 – lucreaza cu blocuri de informatie, plus o parte de detectie si corectie de erori

• mai exista RAID 6, RAID 10, RAID 50, RAID0+1

24Utilizarea Sistemelor de Operare

RAID (4)

Page 13: Utilizarea Sistemelor de Operare - andrei.clubcisco.roandrei.clubcisco.ro/cursuri/1uso/05_USO_curs_08.pdf · –dimensiunea buffer-ului (caching) –“marketing capacity” vs. true

13

25Utilizarea Sistemelor de Operare

Get perpendicular

• http://www.hitachigst.com/hdd/research/recording_head/pr/index.html

26Utilizarea Sistemelor de Operare

CD-ROM

• discuri optice

• densitate mai mare de inregistrare a datelor decat discurile magnetice

• un laser cu infrarosii creaza gauri intr-un disc metalic cu invelis de sticla – scrierea unui CD

• pentru citire se foloseste o dioda laser de intensitate redusa

• de obicei se foloseste tranzitia dintr-o zona adanca intr-o zona plata ca si 1 logic si cealalta tranzitie ca si 0 logic

Page 14: Utilizarea Sistemelor de Operare - andrei.clubcisco.roandrei.clubcisco.ro/cursuri/1uso/05_USO_curs_08.pdf · –dimensiunea buffer-ului (caching) –“marketing capacity” vs. true

14

27Utilizarea Sistemelor de Operare

CD-ROM (2)

• zona cu “pits” (bumps) si “lands”

• caracteristica pentru structura unui CD

28Utilizarea Sistemelor de Operare

DVD (1)

• initial Digital Video Disk

• actualmente Digital Versatile Disk

• aceleasi materiale ca la CD

• deosebiri fata de CD – gauri mai mici, spirale mai grupate, folosirea unui laser rosu

• capacitate – 4.7 GB

• viteza de lucru – 1.4 MB/s (fata de 150 KB/s la CD)

Page 15: Utilizarea Sistemelor de Operare - andrei.clubcisco.roandrei.clubcisco.ro/cursuri/1uso/05_USO_curs_08.pdf · –dimensiunea buffer-ului (caching) –“marketing capacity” vs. true

15

29Utilizarea Sistemelor de Operare

DVD (2)

• Tipuri

• single-sided, single-layer – 4.7 GB

• single-sided, dual-layer – 8.5 GB

• double-sided, single-layer – 9.4 GB

• double-sided, double-layer – 17 GB

30Utilizarea Sistemelor de Operare

DVD (3)

Page 16: Utilizarea Sistemelor de Operare - andrei.clubcisco.roandrei.clubcisco.ro/cursuri/1uso/05_USO_curs_08.pdf · –dimensiunea buffer-ului (caching) –“marketing capacity” vs. true

16

31Utilizarea Sistemelor de Operare

Formatarea unui disc (2)

• dupa formatare, discul este partitionat

• din punct de vedere logic, o partitie este un disc separat

• pe unele sisteme (cum sunt si Intel, AMD) sectorul 0 contine MBR (master boot record) care contine bucati de cod si tabela de partitii

• tabela de partitii contine sectorul de start si dimensiunea fiecarei partitii

32Utilizarea Sistemelor de Operare

Formatarea unui disc

• hard disk: stiva de platane de aluminiu sau sticla

• inainte de utilizare fiecare platan trebuie sa

primeasca o formatare low level din software

• low level format – crearea unor piste concentrice si a unor sectoare pe fiecare pista

• un sector contine un preambul, un spatiu de date si cativa octeti folositi pentru detectia si corectia erorilor

• low level format -> capacitatea se reduce

Page 17: Utilizarea Sistemelor de Operare - andrei.clubcisco.roandrei.clubcisco.ro/cursuri/1uso/05_USO_curs_08.pdf · –dimensiunea buffer-ului (caching) –“marketing capacity” vs. true

17

33Utilizarea Sistemelor de Operare

Formatarea unui disc (3)

• ultimul disc este formatarea de nivel inalt (high-level format) separat pentru fiecare partitie

• la high-level format se creeaza un bloc de boot, un director de baza si un sistem de fisiere gol

• se adauga in tabela de partitii tipul de sistem de fisiere utilizat

• secventa de rulat la pornirea sistemului: BIOS, MBR, sectorul de boot al partitiei active,

(bootloader, ) sistemul de operare