La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

Informatica Generale1 PARTE II Architettura di un sistema informatico Software di base.

Presentazioni simili


Presentazione sul tema: "Informatica Generale1 PARTE II Architettura di un sistema informatico Software di base."— Transcript della presentazione:

1 Informatica Generale1 PARTE II Architettura di un sistema informatico Software di base

2 Informatica Generale2 Software di base (o di sistema) Software (sw) = programmi Software di base = programmi che rendono utilizzabile il computer e ne arricchiscono le funzionalità Il sw di base include – Sistema operativo (SO) – Compilatori, linker, loader – Interpreti

3 Informatica Generale3 Sistema Operativo: funzionalità Gestire le risorse della macchina (CPU, memoria, dispositivi di I/O, file) Dialogare con lutente (o gli utenti) Rendere disponibili agli utenti i traduttori e consentire luso dei programmi applicativi Controllare luso del sistema (da parte degli utenti) a fini amministrativi

4 Informatica Generale4 Gestione delle risorse SO mono e multiutente – Protezione delle informazioni Multiprogrammazione o multitasking – Più attività possono (o debbono) essere svolte contemporaneamente – Programmi e processi – Competizione per le risorse – Parallelismo e concorrenza

5 Informatica Generale5 Dialogo con lutente Interazione basata su comandi testuali

6 Informatica Generale6 Dialogo con lutente (2)

7 Informatica Generale7 Dialogo con lutente (3) Interazione mediante interfaccia grafica

8 Informatica Generale8 Dialogo con lutente (4)

9 Informatica Generale9 Sistema operativo: architettura Modello cosiddetto a buccia di cipolla (o semplicemente a strati) Ogni strato realizza una macchina virtuale – Usa le funzionalità della macchina sottostante – Fornisce servizi alla macchina che segue nella gerarchia – Gestisce delle risorse mediante politiche invisibili ai livelli superiori

10 Informatica Generale10 Il modello a strati Hardware Gestione CPU (nucleo) Gestione Memoria Gestione I/O Gestione file (file system) Interprete dei comandi

11 Informatica Generale11 Nucleo e gestione dei processi Richiesta da soddisfare Programma in esecuzione Processo – Uso di un foglio elettronico – Stampa di un documento – Ricezione di dati da modem – … Stati di un processo – Running – Ready – Waiting

12 Informatica Generale12 Scheduling (schedulazione) dei processi RunningReady Waiting Coda dei processi Politica di assegnazione della CPU Sincronizzazione ed interruzioni Fine quanto Risorsa allocata CPU allocata Richiesta Risorsa

13 Informatica Generale13 Tipi di multiprogrammazione Preemptive Cooperativa Coda singola (First In First Out) Code con priorità associata Priorità in un tipico SO per PC – Processo in foreground priorità massima – Processi in background

14 Informatica Generale14 Gestione dei processi: esempio ciclo: leggi op1 (leggi primo addendo) se op1=0 vai a fine (se nullo, termina) leggi op2 (leggi secondo addendo) ris:=op1+op2 (calcola la somma) scrivi ris (scrivi il risultato) vai a ciclo (ripeti) fine: scrivi bye bye (saluta) Un semplice programma per eseguire somme ripetute ReadyRunning Waiting Inizio

15 Informatica Generale15 Process Control Block (PCB) Struttura dati del S.O. necessaria per la gestione dei processi PC Base address R1 Rn PCB (è il contesto del processo) - PC serve per sapere da dove ricominciare lesecuzione - R1 Rn contenuto dei registri generali ris:=op1+op2 load R1,op1 load R2,op2 add R1,R2 store R1,ris

16 Informatica Generale16 Gestione della memoria Processi in esecuzione concorrente – Sistema operativo (WinNT: > 30MB) – Word processor (Winword: 4 8 MB) – Browser di rete (Netscape: 6 12 MB) – Posta elettronica (Eudora: MB) – …. Problemi specifici (tutti correlati) – trovare spazio per i programmi – rilocare il codice – evitare/ridurre la frammentazione

17 Informatica Generale17 Frammentazione: esempio S.O. A B A B C 1) 2) C Nuovo processo Il processo B termina 3) C A D Nuovo processo: non trova spazio La memoria libera complessiva sarebbe sufficiente per D

18 Informatica Generale18 Frammentazione: una soluzione S.O. C A C A Si compatta la memoria (copiando C più in alto) Nuovo problema: aggiustare, nel programma copiato, i riferimenti (eventuali) ad istruzioni e dati in memoria rilocare il codice

19 Informatica Generale19 Rilocazione del codice (un vecchio esempio)... if x[1]

20 Informatica Generale20 Rilocazione del codice (2) Nella traduzione (compilazione) si ipotizza sempre il caricamento allindirizzo 0 Durante il caricamento (una volta noto lindirizzo iniziale, o base, ad esempio 20000) si aggiustano i riferimenti alla memoria In alternativa, si usa un registro base per correggere ogni accesso alla memoria Rilocazione statica Rilocazione dinamica

21 Informatica Generale21 Rilocazione statica …………………………………….…… …………………………………….…… …………………………………….…… …………………………………….……. Base address=20000Base address=32768 Compilazione rilocazione e caricamento (ind ) esecuzione rilocazione e caricamento (ind ) esecuzione ………..

22 Informatica Generale22 Rilocazione dinamica …………………………………….…… …………………………………….……. Compilazione caricamento (indirizzi relativi + base 20000) esecuzione caricamento (indirizzi relativi + base 32768) esecuzione ……… Registro base Indirizzi assoluti

23 Informatica Generale23 Altre tecniche di gestione della memoria Swapping memorizzazione di processi pronti o in attesa in unarea della memoria di massa Paginazione suddivisione di un programma in pagine logiche (e della memoria centrale in pagine fisiche) Memoria virtuale swapping + paginazione (in prima approssimazione)

24 Informatica Generale24 Swapping S.O. A B C 1) A D Nuovo processo B 2) D C viene copiato su disco D viene caricato in memoria D Area di Swap Tempo

25 Informatica Generale25 Paginazione S.O. A B A B C 1) 2) C Nuovo processo Il processo B termina 3) C A D Nuovo processo S.O. 4) C A Pagine fisiche non adiacenti

26 Informatica Generale26 Paginazione (2) Proc A Proc B Proc C 9 Memoria fisica (RAM)

27 Informatica Generale27 Paginazione (3) Proc A (Ipotesi semplificativa per questo esempio: indirizzi base 10 e pagine di lunghezza 10000) RAM di celle 0xxxx 1xxxx 2xxxx 3xxxx 5xxxx 4xxxx 6xxxx Tabella di conversione ind. Logici/ind. fisici Supporto hardware Memory Management Unit (MMU)

28 Informatica Generale28 Memoria virtuale Principi di località linsieme di pagine logiche utilizzate varia lentamente Non tutte le pagine logiche debbono risiedere nella RAM più processi eseguibili simult. Ulteriore funzionalità della MMU – Page fault caricamento della pagina mancante – Pagina non utilizzata da molto tempo scaricamento della pagina Illusione di (al più) 50% di RAM addizionale

29 Informatica Generale29 Gestione delle periferiche (I/O) Componente fisica – Dispositivo di I/O (inclusi dischi e nastri) – Scheda di I/O (collegata al bus) Componente logica (software) – Programma driver Installazione – Manuale – Plug&Play (PnP)

30 Informatica Generale30 Driver logici Sono programmi del S.O. – driver standard – driver forniti da costruttori di periferiche Nascondono la struttura fisica – comandi di I/O Standardizzano linterazione – stampante laser e stampante inkjet – floppy, hard disk e CD ROM

31 Informatica Generale31 Esempi di comandi di I/O di alto livello In forma testuale ( in S.O. con interazione testuale oppure da programma) – lpr -Plw1 pippo.txt – read(input,x,y,z) – read(nomefile,nomevar) In forma grafica (vedi slide successiva)

32 Informatica Generale32 Comandi di I/O

33 Informatica Generale33 Tecnica di spool Problema: cosa succede se più processi (o più utenti) mandano contemporaneamente in stampa documenti sulla stessa stampante? Processo1 Processo2 Processo3 Computer 1 Computer 2 Come evitare che I dati escano nello stesso ordine in cui vengono eseguiti i comandi di uscita?

34 Informatica Generale34 Spool di stampa Processo1 Processo2 Processo3 Processo di spool Driver

35 Informatica Generale35 File (management) system Creazione e cancellazione dei file Modifica e aggiornamento Protezione dei file e modalità di accesso Copia, spostamento, creazione di collegamenti, ecc. Gestione della memoria di massa

36 Informatica Generale36 Organizzazione dei dati sulle memorie di massa Ogni entità referenziabile su disco è un file – un programma – un insieme di dati utilizzati da un programma – una base di dati (o un archivio) – un grafico I file sono identificati da un nome (filename) – nome – estensione Esempi: tesi.doc, sort.pas, sort.exe

37 Informatica Generale37 Ancora sui file Regole per i nomi – lunghezza massima – case sensitive o insensitive – caratteri speciali Informazioni ausiliarie – lunghezza file – data creazione e modifica – diritti di accesso

38 Informatica Generale38 Organizzazione logica di un file system Struttura ad albero (file system gerarchici) Ai nodi e alle foglie possono essere associate informazioni Radice dellalbero Nodo interno Foglia

39 Informatica Generale39 Organizzazione logica di un file system (2) Struttura ad albero – La radice è ununità disco (o una partizione di unità) – I nodi interni sono cartelle (directory) – Le foglie sono file Una cartella può contenere file e/o altre cartelle percorso di identificazione di un file c:\Mauro\Didattica\InfGen\algoritmi.ppt

40 Informatica Generale40 Organizzazione logica di un file system (3) Didattica Ricerca Personale Esempio WinNT Programmi Mauro C: InfGen Tesi algoritmi.ppt hardware.ppt Software.ppt

41 Informatica Generale41 Strumenti grafici di esplorazione di un f.s.

42 Informatica Generale42 Ancora sui file system gerarchici Unità o volume e directory radice (root) Directory corrente (o di lavoro) Pathname (assoluto e relativo) – \Mauro\Didattica\datiealg.ppt – Didattica\datiealg.ppt Directory padre Formattazione di ununità

43 Informatica Generale43 Directory corrente per un applicativo

44 Informatica Generale44 Directory corrente per un applicativo (2)

45 Informatica Generale45 Directory corrente per un applicativo (3)

46 Informatica Generale46 Directory corrente per un applicativo (4)

47 Informatica Generale47 Directory corrente per un applicativo (5)

48 Informatica Generale48 Il Sistema Operativo MS-DOS MS-DOS = Microsoft Disk Operating System Sistema monoutente e monotasking Interazione con lutente tramite comandi testuali Linterprete dei comandi è detto SHELL File di comandi (BATCH) File System gerarchico (FAT) Root e directory corrente (o di lavoro)

49 Informatica Generale49 I comandi di MS-DOS Prompt di sistema Formato generale Caratteri jolly – ? (cap?.doc) – * (cap*.*) File speciali (per indicare certe periferiche): COM1:, COM2:, CON:, LPT1: Esempi C:\> oppure C:\Mauro\Didattica> ::=

50 Informatica Generale50 Alcuni comandi DOS FORMAT A: inizializza un dischetto (crea root e FAT) MD (ovvero MD ) crea una nuova sottodirectory nella directory corrente (ovvero della directory ) CD la directory diventa la d. corrente DIR (ovvero DIR ) elenca il contenuto della directory corrente (ovvero nella directory )

51 Informatica Generale51 Alcuni comandi DOS (2) COPY crea come copia di DEL cancella il file RD cancella la directory (che deve essere vuota, cioè non contenere file o altre directory) REN ridenomina il file cambiando il nome vero e proprio in

52 Informatica Generale52 Esempi di interazione in DOS

53 Informatica Generale53 Esempi di interazione in DOS (2)

54 Informatica Generale54 Esempi di interazione in DOS (3)

55 Informatica Generale55 Classificazione dei comandi Comandi interni (sempre in memoria) – più efficienti – tutti i comandi citati sono interni (tranne FORMAT) Comandi esterni – caricati quando serve – file con estensione EXE, COM e BAT Ad ogni comando corrisponde un programma che realizza la particolare azione

56 Informatica Generale56 Interprete dei comandi (command.com) command.com Esegue i comandi predefiniti (interni ed esterni) Esegue comandi aggiuntivi (file con estensione BAT, COM o EXE – nella directory corrente – nelle directory opportunamente specificate dallutente nel file di sistema AUTOEXEC.BAT

57 Informatica Generale57 Operazioni speciali consentite dalla shell Pipelining ( | ) invio delloutput di un comando in input ad un secondo comando DIR | FIND EURO Ridirezionamento delloutput ( ) sostituzione dello standard input (tastiera) o dello standard output (video) DIR > LPT1: DIR | FIND EURO > LISTA LISTAF LISTAORD

58 Informatica Generale58 Come il FS tiene traccia dei dati Tabella di Allocazione dei File (FAT) Directory principale (root) Entrambe risiedono su disco ad indirizzi prestabiliti Entrambe vengono caricate in memoria durante linizializzazione del sistema

59 Informatica Generale59 Root directory

60 Informatica Generale60 Tabella di allocazione dei file (FAT)

61 Informatica Generale61 Il sistema operativo Windows Multitasking Monoutente (Windows 95), multiutente (Windows NT) Capacità di eseguire applicazioni scritte per il DOS File System gerarchico (FAT per Win95, NTFS per WinNT) Interfaccia grafica evoluta Gestione integrata delle nuove tecnologie (reti locali, Internet, fax, multimedialità)

62 Informatica Generale62 Alcuni concetti base Scrivania (desktop) Il pulsante di avvio La barra delle applicazioni La gestione delle risorse e il file system – Proprietà di file e cartelle – Menù di scelta rapida – Creazione di collegamenti – Il cestino Esecuzione di un programma Guida in linea Accessori

63 Informatica Generale63 La scrivania (desktop)

64 Informatica Generale64 Il pulsante di avvio

65 Informatica Generale65 Il pannello di controllo

66 Informatica Generale66 Il pannello di controllo (2)

67 Informatica Generale67 Personalizzazione della scrivania

68 Informatica Generale68 Barra delle applicazioni (personalizzazione)

69 Informatica Generale69 Barra delle applicazioni

70 Informatica Generale70 Barra delle applicazioni (2)

71 Informatica Generale71 Esplorazione del FS (alternativa a gestione risorse)

72 Informatica Generale72 Menu di scelta rapida

73 Informatica Generale73 Proprietà di file e cartelle

74 Informatica Generale74 Creazione di collegamenti

75 Informatica Generale75 Creazione di collegamenti (2)

76 Informatica Generale76 Creazione di collegamenti (3)

77 Informatica Generale77 Il cestino

78 Informatica Generale78 Il cestino (2)

79 Informatica Generale79 Esecuzione dei programmi

80 Informatica Generale80 Esecuzione dei programmi (2)

81 Informatica Generale81 Guida in linea

82 Informatica Generale82 Guida in linea (2)

83 Informatica Generale83 Help in linea

84 Informatica Generale84 Accessori

85 Informatica Generale85 Gestione dei processi: esempio ciclo: leggi op1 (leggi primo addendo) se op1=0 vai a fine (se nullo, termina) leggi op2 (leggi secondo addendo) ris:=op1+op2 (calcola la somma) scrivi ris (scrivi il risultato) vai a ciclo (ripeti) fine: scrivi bye bye (saluta) Un semplice programma per eseguire somme ripetute ReadyRunning Waiting Inizio CPU disponibile leggi op1op1 letto CPU tolta dufficio


Scaricare ppt "Informatica Generale1 PARTE II Architettura di un sistema informatico Software di base."

Presentazioni simili


Annunci Google