Ogni computer ha un sistema operativo necessario per eseguire gli altri programmi Il sistema operativo, fra l altro, è responsabile di

Documenti analoghi
Parte VI SISTEMI OPERATIVI

Parte VI SISTEMI OPERATIVI

Parte VI SISTEMI OPERATIVI

Il Sistema Operativo

Il software di sistema

Sistema operativo (SO)

Sistema Operativo (Software di base)

Sistema operativo. Interazione con il SO

Sistemi Di Elaborazione Dell informazione

L hardware da solo non è sufficiente per il funzionamento dell elaboratore È necessario introdurre il software:

Corso di Informatica

Sistemi operativi. Motivazione. Tipi di software. Sistemi operativi. Un sistema operativo (SO) e un insieme di programmi che gestiscono le funzioni

Sistema Operativo. (hardware e software) della della macchina

Sistemi Operativi. A.M. Fanelli Architettura dei Sistemi a. a Livello di Sistema Operativo. Livello di Linguaggi Applicativi

INFORMATICA. L informatica comprende:

Come funzionano i computer

I sistemi operativi. Prof. Daniele Contarino

Sistemi Operativi: Concetti Introduttivi

I SISTEMI OPERATIVI. Insieme di programmi che implementano funzioni essenziali per l uso di un sistema elaboratore.

La memoria secondaria

Sistema operativo. Utente. Il S.O. mostra offre all utente un ambiente di lavoro che nascondendo la complessità della macchina fisica (hardware). S.O.

Capitolo 6 Le infrastrutture SoftWare

Struttura Logica del S.O:

Introduzione ai Sistemi Operativi. A cura di Massimo Scolaro Mob :

Corso di Informatica. Architettura del Calcolatore. Architettura del Calcolatore. Corso di Laurea in Conservazione e Restauro dei Beni Culturali

interoperabilità fra dispositivi forniti da diversi produttori; superare i problemi legati alla limitazione del numero di risorse.

Fondamenti di Informatica T. Il Software

Sistema operativo & file system 1

Il supporto al sistema operativo

Fondamenti di Informatica Laurea in Ingegneria Civile e Ingegneria per l ambiente e il territorio

Prof. Rossella Cancelliere

Personal Computer: introduzione

Informatica Generale 06 - Introduzione ai Sistemi Operativi

Il computer P R O F. L O R E N Z O P A R I S I

IL SOFTWARE DI SISTEMA

MODULO 1: INTRODUZIONE

Il software: Istruzioni per il computer

Modulo 3. Software. Corso di Sistemi di elaborazione delle informazioni -Autore: Ing. Maurizio Patanè

Il Sistema Operativo. Informatica Sistema Operativo 1

Il file È un insieme di informazioni: programmi. Il File System. Il file system

Il file system. Le caratteristiche di file, direttorio e partizione sono del tutto indipendenti dalla natura e dal tipo di dispositivo utilizzato.

Architettura di un calcolatore

I file utente sistema operativo nome

Architetture hardware e software dei calcolatori

Parte II. Introduzione ai sistemi operativi e WindowsX. Parte II 1

Il sistema operativo

Capitolo 6 Le infrastrutture SoftWare

Capitolo 2: Strutture dei sistemi di calcolo

Sistemi Operativi (prima parte) Appunti di TPI Elaborati dal prof. Ing. Mario Catalano Per la classe 3 Einf.

Elementi di Informatica

Il sistema operativo. Sistema Operativo

Sistemi Operativi. Il file system Casi di studio. Sistemi Operativi. Corso di laurea in Informatica. AA 2002/03 Bruschi, Rosti

Lezione 5: Software. Firmware Sistema Operativo. Laboratorio di Informatica

Informatica Generale 07 - Sistemi Operativi:Gestione dei processi

Windows. La prima realizzazione di un ambiente grafico si deve alla Apple (1984) per il suo Macintosh. La gestione dei file conserva la logica del DOS

Introduzione al Sistema Operativo MS-Windows ed all Uso dell IDE DEV-C++

Informatica Generale Andrea Corradini Gestione della memoria, File System e periferiche

Architettura dei calcolatori e Software di sistema

Sistema Operativo. 06 novembre Sistema Operativo (SO): punto di vista funzionale

Architettura hardware

I THREAD O PROCESSI LEGGERI

Il sistema operativo

Il Sistema Operativo fa parte del software di base; e` costituito da un insieme di programmi che interagiscono e cooperano per:

Informatica a.a. 2010/2011

Sistemi Operativi ed interazione con HW e CAD

DIREZIONE DIDATTICA DI SAN GIUSEPPE JATO Programma Operativo Nazionale Fondo Sociale Europeo - Competenze per lo sviluppo

La memoria-gerarchia. Laboratorio di Informatica - Lezione 3 - parte I La memoria - La rappresentazione delle informazioni

Organizzazione di un SO monolitico

Introduzione ai sistemi operativi

Il Software programmabili programma algoritmo

Laboratorio di Calcolatori 1 Corso di Laurea in Fisica A.A. 2006/2007

Sistema Operativo. Alma Mater Studiorum Università di Bologna - Fondamenti di Informatica T (a-k)

Il software: cenni sul sistema operativo

Ogni PC, per iniziare a lavorare, ha bisogno di un sistema operativo. Infatti questo è il primo programma che viene eseguito e che permette

I sistemi operativi (prima parte) Agostino Lorenzi I sistemi operativi - Atlas

Memoria Secondaria o di Massa

Il computer P R O F. L O R E N Z O P A R I S I

Informatica WINDOWS. Francesco Tura F. Tura

Il computer P R O F. L O R E N Z O P A R I S I

Sistemi Operativi. Gianluca Della Vedova. Sistemi Operativi. Gianluca Della Vedova. Sistemi Operativi. Gianluca Della Vedova.

Elementi di Informatica e Programmazione

IL SISTEMA OPERATIVO IL SISTEMA OPERATIVO

Sistemi operativi. Fondamenti di Informatica

Bootstrap. Bootstrap. Shutdown. Struttura di un SO. Elementi principali di un SO:

Architettura di Von Neumann

ISA Input / Output (I/O) Data register Controller

INFORMATICA E PC IL PERSONAL COMPUTER

Interfaccia del file system

Note sui sistemi operativi

IL SISTEMA OPERATIVO

Elementi di Informatica Corso di Laurea in Scienze Geologiche a.a. 2003/2004. Docente. Orario. Da Ottobre-Dicembre:

Livelli del sottosistema di I/O

Informatica e Informatica di Base

2) Sistemi operativi. Lab. Calc. AA 2006/07

Abilità Informatiche e Telematiche

Il Software. Il software del PC. Il BIOS

Dal sistema operativo all' hardware

Il file system. Il File System. Attributi del file. File

Il Sistema Operativo

Il software: cenni sul sistema operativo. Il software. IL sistema operativo (I) IL sistema operativo (II)

Transcript:

Sistemi operativi

Sistema Operativo Ogni computer ha un sistema operativo necessario per eseguire gli altri programmi Il sistema operativo, fra l altro, è responsabile di riconoscere i comandi di input (da tastiera) e di inviarne una copia sullo schermo gestire l uscita dei dati (modem, rete, stampante ecc.) gestisce l archivio dei file (dischi) gestire le unità di memoria aggiuntiva (dischi, dvd, cd, ecc.) gestire la sicurezza (autorizzazione all utilizzo del sistema). Nei sistemi di grandi dimensioni il sistema operativo è anche responsabile della gestione e del coordinamento fra i diversi utenti che utilizzano il sistema

Sistema Operativo Non facile da definire esattamente definizione informale Quello che nel sistema non è applicazione o hardware Software che permette alle applicazioni di utilizzare in modo conveniente l hardware Utenti Applicazioni Word processing, compilatori, basi dati... Sistema Operativo Hardware dispositivi I/O,dischi, CPU, memoria...

Obiettivi del sistema operativo semplificare e ottimizzare l accesso alle risorse dell sistema garantire la correttezza dell esecuzione concorrente assicurare la portabilità delle applicazioni indipendenza dalla piattaforma: stesso hardware sono possibili diversi SO stesso SO può girare su piattaforme HW diverse

Sistema operativo e CPU Struttura a livelli Il livello 2 è il più basso al quale un utente può programmare la macchina Normalmente la programma a livello 5

Sistema Operativo Il sistema operativo fornisce una piattaforma che permette l esecuzione di programmi applicativi e programmi utenti Nel caso dei PC il sistema più noto è windows (prima DOS) altri sistemi noti sono UNIX, LINUX (open source)... L utente interagisce con il sistema operativo con una serie di comandi Esempio: in DOS i comandi copy e rename permettono di copiare e ridenominare i file; comandi analoghi in altri sistemi interfaccie grafiche permettono di dare comandi con interazione diversa (ad esempio click con il mouse) I comandi oggi sono dati utilizzando l interfaccia grafica del sistema

Virtualizzazione delle risorse le applicazioni e i programmi (che poggiano sul SO) vedono risorse virtuali ignorano i dettagli eventuali altri programmi in concorrenza risorse virtualizzate CPU: Multiprogrammazione (più programmi sono eseguiti concorrentemente) memoria: ciascun programma vede uno spazio di memoria autonomo I/O: la memoria di massa (dischi) e periferiche di I/O sono viste dai programmi tramite il SO

Sistema operativo e CPU Funzioni Sistema operativo Memoria virtuale I/O dei file gestione dei processi

gestione dei processi processi concorrenti elaborati in parallelo su architetture multiprocessore elaborati a rotazione (time sharing) su architetture uniprocessore problemi: sincronizzare l utilizzo delle risorse comuni (memoria centrale e di massa, I/O) garantire accesso in mutua esclusione correttezza elaborazione

gestione dei processi stati di un processo running: in esecuzione sulla CPU blocked: bloccato in attesa di un evento (fine I/O,...) ready: pronto a riprendere la sua elaborazione scheduler: processo del SO che decide quale fra i processi ready mandare in esecuzione

gestione dei processi i Sistemi operativi possono essere classificati nel seguente modo: multi-user : multiutente (due o più utenti utilizzano il programma (anche migliaia nei casi più grandi) multiprocessing : permette la possibilità che un programma sia eseguito da più processori (CPU) multitasking : permette che uno o più programmi siano eseguiti concorrentemente (anche dello stesso utente) multithreading : permette che diversi parti di un unico programma siano eseguite concorrentemente real time: (tempo reale): risponde instantaneamente ( Windows e UNIX, non sono real time) time sharing: condivisione del tempo fra più utenti o più programmi

memoria virtuale: memoria virtuale lo stesso spazio di memoria è diviso fra più programmi ogni programma vede uno spazio di indirizzamento più ampio di quello effettivamente disponibile spazio indirizzi: virtuali: dipende dalle modalità di indirizzamento fisico: dipende dalle dimensioni della memoria

memoria virtuale programmi usano lo spazio virtuale lo spazio virtuale è allocato in memoria secondaria (dischi) si mantiene in memoria solo un sottoinsieme dello spazio virtuale (spazio logico) si trasferiscono quando servono le parti dello spazio virtuale alle quali il programma fa riferimento la gestione è fatta dal SO (trasparente all utente/programmatore) PROBLEMA: traduzione indirizzi; efficienza

memoria virtuale: paginazione modo semplice di organizzare la corrispondenza fra indirizzi virtuali e fisici lo spazio di memoria (fisico e virtuale) è organizzato in pagine (0.25-4 KB) quando serve un dato in memoria si trasferisce tutta la pagina che lo contiene

memoria virtuale: paginazione la struttura dello spazio virtuale si riflette nella struttura degli indirizzi offset: indirizzo nella pagina k bit più significativi: numero della pagina indirizzi fisici hanno la stessa struttura

memoria virtuale: paginazione i programmi specificano indirizzi virtuali l indirizzo fisico è diverso prima di accedere in memoria bisogna tradurre l indirizzo virtuale in indirizzo fisico Nota Bene: l indirizzo virtuale è fisso, quello fisico può cambiare nel corso dell esecuzione

memoria virtuale: paginazione con la memoria a pagine posso avere uno spazio fisico piccolo ma uno spazio virtuale grande posso utilizzare la memoria (piccola) per più programmi contemporaneamente due pagine vicine (nello spazio logico) possono essere in posti diversi dello spazio fisico una su disco e l altra in memoria centrale tutte e due su disco (o memoria centrale) ma con indirizzi fisici diversi

memoria virtuale: traduzione indirizzi La traduzione degli indirizzi avviene a cura della CPU (prima di accedere in memoria fisica) La corrispondenza tra pagine virtuali e pagine fisiche (page frames) viene mantenuta nella Tavola delle Pagine (nella CPU)

memoria virtuale: traduzione indirizzi tavola delle pagine contiene la corrispondenza fra indirizzo virtuale (o logico) e indirizzo fisico

memoria virtuale: come funziona se la pagina richiesta è in memoria: ok altrimenti page fault. il SO interrompe l esecuzione del programma la pagina richiesta viene trasferita da disco a memoria centrale (attesa) una volta trasferita la pagina richiesta l esecuzione del programma può riprendere a seguito di un page fault posso dover togliere una pagina dalla memoria per fare spazio a quella nuova, questo implica che le pagine virtuali non hanno necessariamente lo stesso indirizzo fisico

località dei programmi gli accessi in memoria rispettano un principio di località quando mi serve un dato che non è in memoria trasferisco tutta la pagina che contiene quel dato quando devo togliere una pagina dalla memoria per fare spazio alla nuova pagina trasferisco pagine richieste indietro nel tempo (meno probabili che siano richieste nel futuro)

Gestione dei file: importanza I/O Applicazioni hanno due componenti fondamentali: Elaborazione informazione Input/Output (I/O) (esistono applicazioni senza I/O?) Dati sono nei dispositivi di memoria diversi fra loro (velocità, modi di accesso,...) Utente vede dati come una libreria standard operazioni utente sono astratte: inserisci, cancella, duplica,... non dipende dal tipo di dato o da dove è il dato Funzioni SO: fornire operazioni standard per accedere e modificare i dati fornire protezioni ai dati (limitare le operazioni permesse) semplificare accesso a utente fornire interfaccia omogenea

Astrazione: File Punto di vista utente Insieme di dati con un nome tipo di dato (si usa spesso estenzione: txt - testo, exe - eseguibile, gif - immagine,...) utilizzabile sempre in modo conveniente (utente non vuole sapere dove si trova fisicamente il file) Punto di vista del sistema operativo crea corrispondenza fra i byte che costituiscono il file su blocchi di memoria non volatile Dischi, nastri, CD,... Dati persistenti (assenza di corrente, riavvi del sistema,...)

Astrazione: Direttorio Organizzare i file: una tabella contiene le informazioni su dove ciascun file si trovi sul disco Approccio semplice: ogni file ha un solo nome In pratica: un direttorio per ogni utente, per specificare un file: <nome utente, nome file> per ogni utente organizzazione ad albero del direttorio (es. cartelle di windows) Esempio: Mario/a/b.gif utente m ario ha un direttorio a che contiene un fileim m agine b (Mario può avere tantidirettori;apuò contenere tantifile o direttori)

Meta-Dati di un file Meta-dati: Informazioni addizionali associate ad ogni file Nome del file Tipo del file Puntatori (indirizzi) ai blocchi del disco che contengono i dati Dimensione del file Informazioni temporali: creazione, aggiornamento Proprietario (utente, gruppo) Bit di protezione (autorizzazione in lettura, scrittura) I Meta-dati sono memorizzati nel disco parte del disco contiene le informazioni necessarie <nome file, indice sui metadati> (l indice indica dove sono presenti i metadati nella memoria del disco)

Gestione del direttorio Direttorio contiene per ogni file una coppia <nome, indice>, (in cui il nome può essere un altro direttorio) Direttorio è memorizzato e organizzato come un file Indice indica dove sono le informazioni sui metadati associati al nome) Per indicare un file si specifica il nome del file indicando tutti i direttori a partire dalla radice Esempio: mkdirmario/a/b/c crea direttorio c contenuto in b che a sua volta è contenuto in a Leggi i metadati associati a utente mario e cerchi a ; ad esempio trovi < a, 5> leggi le informazioni indicate da 5, e cerca b ; ad esempio trovi < b, 9> leggi le informazioni indicate da 9, verifichi che non esiste c ; allochi c e aggiungi c dove necessario

Sistemi operativi: UNIX,LINUX Mini Computer Cluster Controller UNIX multi-user, multitasking operating system sviiluppato ai laboratori Bell nel 1970. Sistema flessibile fatto da poche persone. Scritto in linguaggio ad alto livello (C). Pertanto è flessibile: può essere installato su ogni macchina che ha un compilatore C.developed at Bell Labs in the early 1970s. Linux, versione open source di Unix

Sistemi operativi: Windows Mini Computer Cluster Controller Personal Computer Windows multitasking. Fornisce interfaccia grafica, memoria virtuale, multitasking e si può interfacciare con molte periferiche (incluse wireless) Le prime versioni di Windows utilizzavano DOS (come sistema operativo sottostante) Molte versioni nel tempo. Ultima Windows XP Windows XP in versione home e professional normalmente a 32 bit, ora anche a 64 bit Compatibile con le applicazioni a 32 bit; offre il Security Center e possibilità blocco dei pop-up in Internet Explorer.

Sistemi operativi: DOS Personal Computer DOS (disk operating system) MS-DOS (Microsoft disk operating system). sviluppato da Microsoft per IBM e per computer IBM compatibili (inizio anni 80). Molte versioni (in corrispondenza alla evoluzione dei personal computer) The initial DOS è un sistema operativo a 16-bit che non permette multi users o multitasking.