Silberschatz and Galvin 1999 1.1 Operating System Concepts CAP. 1 - INTRODUZIONE.

Slides:



Advertisements
Presentazioni simili
Scheduling (Schedulazione) Susanna Pelagatti – Università di Pisa
Advertisements

STRUTTURA DEL SISTEMA OPERATIVO
Meccanismi di IPC Problemi classici di IPC
CONCLUSIONE - Nucleo (o Kernel) Interagisce direttamente con lhardware Interagisce direttamente con lhardware Si occupa dellesecuzione.
1 Introduzione ai calcolatori Parte II Software di base.
Introduzione Cosa è un Sistema Operativo? Una breve storia
Il Sistema Operativo Il Sistema Operativo fa parte del software di base; e` costituito da un insieme di programmi che interagiscono e cooperano per: gestire.
Requisiti precedenti Contenuti Verifiche Bibliografia Maura Zini.
STRUTTURA DEL PERSONAL COMPUTER
IL COMPUTER: l'HARDWARE
Sistemi Operativi Menù: 1) Introduzione al sistema operativo
Prof. Emanuele Marino Concetti teorici di base della tecnologia dellinformazione.
Il Sistema Operativo.
1 Processi e Thread Processi Thread Meccanismi di comunicazione fra processi (IPC) Problemi classici di IPC Scheduling Processi e thread in Unix Processi.
Gestione del processore
Dr. Francesco Fabozzi Corso di Informatica
Introduzione allo studio dell’informatica
Informatica giuridica Hardware e software: glossario Lucio Maggio Anno Accademico 2000/2001.
Operating System Concepts
5.1 Sistemi operativi Scheduling della CPU Concetti di base Criteri di scheduling Algoritmi di scheduling Scheduling in sistemi con più processori Valutazione.
Silberschatz, Galvin and Gagne Operating System ConceptsIntroduzione Che cosè un Sistema Operativo? Sistemi batch semplici Sistemi batch multiprogrammati.
Scheduling della CPU Concetti fondamentali Criteri di scheduling
Scheduling della CPU Concetti di base Criteri di scheduling
Il Software: Obiettivi Programmare direttamente la macchina hardware è molto difficile: lutente dovrebbe conoscere lorganizzazione fisica del computer.
Introduzione allinformatica. Cosè linformatica ? Scienza della rappresentazione e dellelaborazione dellinformazione ovvero Studio degli algoritmi che.
Architettura Three Tier
1 Corso di Informatica (Programmazione) Lezione 4 (24 ottobre 2008) Architettura del calcolatore: la macchina di Von Neumann.
Le prestazioni (velocità) di un singolo disco sono limitate dalla tecnologia usata, -per aumentare le prestazioni si può pensare di far operare in parallelo.
Introduzione: Sistemi Operativi I
Struttura dei sistemi operativi (panoramica)
Linguaggi di programmazione
2) Trattamento dell'informazione. Lab.Calc. I AA 2002/03 - cap.22 Esempio Supponiamo di volere calcolare X, per uno o più possibili valori di Y, in base.
Sistemi Operativi SCHEDULING DELLA CPU.
Introduzione Cosa è un Sistema Operativo ?
Concetti introduttivi
SOFTWARE I componenti fisici del calcolatore (unità centrale e periferiche) costituiscono il cosiddetto Hardware (alla lettera, ferramenta). La struttura.
Informatica giuridica Hardware e software: glossario Lucio Maggio Anno Accademico 2001/2002.
Labortaorio informatica 2003 Prof. Giovanni Raho 1 INFORMATICA Termini e concetti principali.
Informatica per medici
Requisiti precedenti Contenuti Verifiche Bibliografia Maura Zini.
INTRODUZIONE l sistema operativo è il primo software che lutente utilizza quando accende il computer; 1)Viene caricato nella memoria RAM con loperazione.
L'ambiente informatico: Hardware e Software
Scheda Ente Ente Privato Ente Pubblico. 2ROL - Richieste On Line.
Modulo 1 - Concetti di base della Tecnologia dell'Informazione
ELETTRONICA DIGITALE (II Parte)
Il Sistema Operativo (1)
Threads.
Capitolo 0 : Introduzione al corso CdL in Ingegneria Elettronica e delle Telecomunicazioni: Fondamenti dei S.O. (6CFU) Capitolo 0 : Introduzione al corso.
1 Gestione del Processore (Scheduling). 2 Scheduling dei processi È l’attività mediante la quale il sistema operativo effettua delle scelte tra i processi,
Gestione del Processore (Scheduling)
INTERFACCE Schede elettroniche che permettono al calcolatore di comunicare con le periferiche, che possono essere progettate e costruite in modo molto.
Gestione del processore (Scheduler)
Tecnologie Informatiche ed Elettroniche per le Produzioni Animali (corso TIE) CORSO LAUREA MAGISTRALE IN SCIENZE E TECNOLOGIE DELLE PRODUZIONI ANIMALI.
Introduzione Cos’è un sistema operativo ?. Hardware Sistema Operativo Applicazioni È il livello di SW con cui interagisce l’utente e comprende programmi.
1.1 Corso di Laboratorio di Informatica: Sistemi Operativi Corso di Laurea in Informatica, Università di Firenze Anno accademico 2008/2009 Prof. Luca Ferrari.
1 Input/Output. 2 Livelli del sottosistema di I/O Hardware Gestori delle interruzioni Driver dei dispositivi Software di sistema indipendente dal dispositivo.
Corso di Architetetture degli Elaboratori, A.A. 2004/ Architettura degli Elaboratori Elisa B.P. Tiezzi Orario ricevimento: Giovedì, ( Il materiale.
Il Sistema Operativo.
Sistemi operativi di rete Ing. A. Stile – Ing. L. Marchesano – 1/18.
Elementi di Informatica SciGeo a.a. 2002/2003. Docente Giorgio Delzanno Ufficio 104 – I piano Dipartimento di Informatica e Sc. Inf. Tel
Informatica Lezione 6 Psicologia dello sviluppo e dell'educazione (laurea magistrale) Anno accademico:
Corso di Laurea in Biotecnologie corso di Informatica Paolo Mereghetti DISCo – Dipartimento di Informatica, Sistemistica e Comunicazione.
Tecnologie dell'informazione e della comunicazione - Stacey S. Sawyer, Brian K. Williams Copyright © The McGraw-Hill Companies srl Introduzione.
Concetti di base Computer, HW e SW
I primi elaboratori Anni ‘50 Rigidamente sequenziali
INTRODUZIONE AI SISTEMI OPERATIVI. Introduzione Il software può essere diviso un due grandi classi: Il software può essere diviso un due grandi classi:
I Sistemi Operativi. Definizione Per Sistemi Operativi (di seguito SO) si intendono quei pacchetti software, a loro volta costituiti da più sottoprogrammi.
Gestione delle periferiche. Le periferiche sono dispositivi che permettono le operazioni di input/output.
Concetti informatici di base. Concetti informatici di base Il computer o elaboratore è una apparecchiatura costituita da un insieme di dispositivi di.
Definizione e obiettivi del Sistema Operativo. DIFFERENZA TRA SISTEMA OPERATIVO – SOFTWARE APPLICATIVO Sistema operativo è un insieme organico di programmi.
Transcript della presentazione:

Silberschatz and Galvin Operating System Concepts CAP. 1 - INTRODUZIONE

Silberschatz and Galvin Operating System Concepts Cosè un Sistema Operativo (S.O.) Un sistema che agisce da intermediario tra lutente e il computer Scopi del S.O.: –Rendere il computer più conveniente alluso (user-friendly) –Utilizzare lhardware in maniera efficiente

Silberschatz and Galvin Operating System Concepts Un semplice schema…

Silberschatz and Galvin Operating System Concepts … e un dettaglio delle sue componenti 1. Hardware – fornisce le risorse di base (CPU, memorie, dispositivi di I/O). 2. S.O. – controlla e coordina luso dellhardware fra i vari programmi applicativi 3. Programmi di sistema – definiscono il modo in cui le risorse di sistema sono utilizzate per risolvere i problemi dellutente (p.es., compilatori, database, fogli elettronici, ecc…) 4. Programmi applicativi – Applicazioni costruite per risolvere specifici problemi (p.es. sistema di prenotazione voli) 5. Utenti (persone, macchine o altri computer) – possono utilizzare il sistema comè e/o costruire programmi applicativi

Silberschatz and Galvin Operating System Concepts I compiti del S.O.… Fa da interfaccia per lutente (convenienza!!!) Gestisce ed alloca le risorse (efficienza!!!) Kernel – quel programma che è sempre in esecuzione sul computer … e i suoi confini

Silberschatz and Galvin Operating System Concepts convenienza efficienza kernel Es.: driver di uno scanner

Silberschatz and Galvin Operating System Concepts attenzione: sottile è il confine tra programmi di sistema e S.O. intero ! … e ancora sui confini

Silberschatz and Galvin Operating System Concepts Breve evoluzione dei sistemi di calcolo e dei relativi S.O. Prima generazione –Condensatori, programmazione wired Seconda generazione –transistors, sistemi batch Terza generazione 1965 – 1980 –Circuiti integrati, multiprogrammazione Quarta generazione 1980 – 1995 –Personal computers Quinta generazione 1995 – oggi –Computer tascabili (wireless)

Silberschatz and Galvin Operating System Concepts 1. Sistemi Batch Utente Operatore Schede perforate per I/O Primo rudimentale S.O. (sempre residente): il solo compito è quello di trasferire il controllo da un job a quello successivo

Silberschatz and Galvin Operating System Concepts Organizzazione di memoria di un sistema batch

Silberschatz and Galvin Operating System Concepts Schede perforate Schede speciali dicono al S.O. quale programma eseguire $JOB $FTN $RUN $DATA $END Caratteri speciali distinguono schede di dati da schede di programmi $ in column 1 // in column 1 and in column 1 Gli errori erano molto costosi!

Silberschatz and Galvin Operating System Concepts Problemi dei sistemi batch Dispositivi I/O meccanici molto più lenti della CPU, quindi molti tempi morti per la CPU (lungo turnaround time) 2. Spooling e multiprogrammazione Assenza di interazione tra lutente e la macchina 3. Sistemi interattivi e time-sharing

Silberschatz and Galvin Operating System Concepts 2. Spooling… Idea : sovrapporre operazioni di calcolo (CPU) con operazioni di I/O Prerequisito : possibilità di utilizzare un dispositivo di memoria ad accesso diretto (disco) come appoggio

Silberschatz and Galvin Operating System Concepts Caricamento dei jobs in memoria dai nastri e dalle schede, stampa dei risultati : off-line Mentre esegue un job il S.O.: può leggere il prossimo job e caricarlo in unarea predefinita del disco può stampare risultati di job precedenti conservati sul disco … in pratica dispositivi input dispositivi output CPU disco

Silberschatz and Galvin Operating System Concepts Multiprogrammazione: organizzazione di memoria Job pool – struttura dati che permette al S.O. di selezionare quale job eseguire per accrescere lutilizzazione della CPU Più job sono tenuti in memoria allo stesso tempo, e la CPU può essere condivisa tra essi S.O. delegato a decidere !!!

Silberschatz and Galvin Operating System Concepts Compiti di un S.O. per multiprogrammazione Scheduling della CPU (al termine di ogni job) Gestione della memoria Routines di I/O Allocazione di dispositivi Si condividono risorse, ma non cè ancora interleaving di esecuzione tra i job

Silberschatz and Galvin Operating System Concepts 3. Sistemi interattivi e time-sharing… Idea : rimpiazzare il job che utilizza la CPU con un altro, per esempio quando il primo ha bisogno di I/O (context-switching) Prerequisito : strutture dati ed algoritmi più complessi per gestire il time-sharing

Silberschatz and Galvin Operating System Concepts La CPU è condivisa tra un insieme di job tenuto in memoria Strategie per : scegliere il job che deve utilizzare la CPU, far entrare e uscire job da questo insieme I concetti… INTERATTIVITA Comunicazione tra lutente e il sistema: quando il sistema finisce lesecuzione di un comando passa il controllo allutente Possibilità per lutente di accedere a codice e dati TIME_SHARING

Silberschatz and Galvin Operating System Concepts job1 job4 job2 job3 job6 Memoria job5 CPU SISTEMA DI CALCOLO UTENTI … e una rappresentazione grafica

Silberschatz and Galvin Operating System Concepts Caratteristiche di un S.O. per Interattività e Time-Sharing Scheduling della CPU (anche a intervalli di tempo, non solo quando ci sono operazioni di I/O!!!) Gestione della memoria (mantenere un insieme di job in memoria, non tutti quelli possibili) Allocazione di dispositivi in maniera consistente con il time-sharing File System accessibile dallutente Virtualizzazione della macchina

Silberschatz and Galvin Operating System Concepts 4. Personal Computers Nuovi dispositivi di I/O – tastiera, mouse, schermi piccoli, piccole stampanti Maggiore necessità di conoscere S.O. da parte dellutente (tradeoff!) Convenienza (facilità duso) per lutente Diversa concezione delle protezioni e condivisioni rispetto a sistemi ad utenza multipla Computers dedicati ad un singolo utente

Silberschatz and Galvin Operating System Concepts 5. Sistemi paralleli… Le CPU condividono memoria e temporizzazione Vantaggi: –Maggiore throughput –Minore costo ( più economico condividere un disco tra n programmi che acquistare n PC !!! ) –Maggiore affidabilità : degradazione lenta fault tolerance Sistemi con più di una CPU in stretta collaborazione job7 CPU2 job5 CPU1 job1 CPU3

Silberschatz and Galvin Operating System Concepts … e una semplice classificazione Symmetric multiprocessing –Ogni CPU ospita una copia identica del S.O. –Molti processi possono essere eseguiti allo stesso tempo senza degradazione delle prestazioni Asymmetric multiprocessing –Ad ogni processore è assegnato uno specifico compito –Viene allocato un master che schedula e alloca lavoro per i processori slave

Silberschatz and Galvin Operating System Concepts 6. Sistemi distribuiti IDEA - Distribuire il lavoro su macchine: –fisicamente differenti –possibilmente non omogenee –che non condividono memoria e temporizzazione –che comunicano tra esse mediante buses e linee telefoniche (in debole collaborazione) PERCHE si decide di mettere queste macchine in comunicazione? - Condivisione di risorse (clustering) - Distribuzione del carico di lavoro - Affidabilità - Comunicazioni tra utenti (es., )

Silberschatz and Galvin Operating System Concepts Caratteristiche di un S.O. per sistemi distribuiti Condivisione di file Schemi di comunicazione Virtualizzazione della rete Indipendenza dagli altri S.O. nella rete

Silberschatz and Galvin Operating System Concepts 7. Sistemi tascabili (handheld) Personal Digital Assistants (palmari) Telefonini cellulari con connessione a Internet Memoria limitata CPU lenta (potenza limitata) Schermo di piccole dimensioni Piccola taglia

Silberschatz and Galvin Operating System Concepts Evoluzione dei concetti e delle caratteristiche dei S.O.

Silberschatz and Galvin Operating System Concepts A. Sistemi real-time Spesso usati sui dispositivi di controllo di applicazioni critiche, quali esperimenti scientifici, sistemi di controllo di aerei, etc. Prefissati vincoli di tempo Hard real-time system –Dati conservati in memorie veloci a breve termine –Conflitto con time-sharing, quindi non supportati da comuni S.O. Soft real-time system –Non tutti i vincoli devono necessariamente essere soddisfatti –Utili in applicazioni multimediali o di realtà virtuale

Silberschatz and Galvin Operating System Concepts B. Ambienti di elaborazione Elaborazione tradizionale (PC in configurazione da ufficio) : S.O. deve oggi fornire più modi per accedere a questi sistemi, ma sono necessarie protezioni Elaborazione basata su WEB (vari dispositivi per accedere) : necessari strumenti di S.O. che permettano il bilanciamento del carico tra vari server Elaborazione embedded (chip integrati in strumenti di uso comune, es. Computer di bordo dellauto) : prevalentemente monitoraggio di congegni e segnalazione, quindi S.O. molto semplice