

Studia grazie alle numerose risorse presenti su Docsity
Guadagna punti aiutando altri studenti oppure acquistali con un piano Premium
Prepara i tuoi esami
Studia grazie alle numerose risorse presenti su Docsity
Prepara i tuoi esami con i documenti condivisi da studenti come te su Docsity
Trova i documenti specifici per gli esami della tua università
Preparati con lezioni e prove svolte basate sui programmi universitari!
Rispondi a reali domande d’esame e scopri la tua preparazione
Riassumi i tuoi documenti, fagli domande, convertili in quiz e mappe concettuali
Studia con prove svolte, tesine e consigli utili
Togliti ogni dubbio leggendo le risposte alle domande fatte da altri studenti come te
Esplora i documenti più scaricati per gli argomenti di studio più popolari
Ottieni i punti per scaricare
Guadagna punti aiutando altri studenti oppure acquistali con un piano Premium
Cosa significhia l'infrastruttura software e come il sistema operativo (so) svolge il ruolo di interfaccia tra hardware e software, fornendo servizi come gestione del processore, memoria, periferiche, file e utenti. Viene inoltre discusso come i programmi applicativi (pa) differiscono dal so e come quest'ultimo si è evoluto negli anni. Il testo conclude con una breve introduzione al middleware.
Tipologia: Sintesi del corso
1 / 3
Questa pagina non è visibile nell’anteprima
Non perderti parti importanti!


Gli strumenti software rendono accessibili i componenti fisici da cui i sistemi informatici sono costituiti agli utenti e ai programmi applicativi. I software di sistema o di base viene indicato in senso lato come sistema operativo. Il sistema operativo rappresenta un’infrastruttura software che si pone come interfaccia fra harware e utente o software applicativo. Attraverso il sistema operativo l’utente vede quindi il sistema informatico come un erogatore di servizi che corrispondono all’esecuzione di uno o più programmi.
GLI ELEMENTI DI UN SISTEMA OPERATIVO: un sistema di gestione del processore che controlla l’unità centrale di elaborazione- s. di gestione della memoria-s. di gestione delle periferiche, x garantire l’accesso a dispositivi input-output.- gestione dei file- gestione utenti e relativi comandi-gestione della rete.
IL SOFTWARE DEVE: -garantire correttezza nell’elaborazione e nella trasmissione dell’info-Consentire di sfruttare la rete ovunque e sempre- garantire affidabilità e sicurezza dei sistemi- assicurare privacy sui dati- soluzioni che permettano di interagire hardware e software. Controllare l’esecuzione di applicazioni- far accedere i dispositivi di ingresso/uscita.- archiviare dati e programmi.- controlla l’accesso di sistemi che prevedono la condivisione di risorse da + utenti.- gestire e correggere malfunzionamenti.
DIFFERENZE TRA PROGRAMMI APPLICATIVI E SIST. OPERATIVO:1) i P.A. hanno accesso a un insieme ridotto di risorse, per esempio possono usare solo alcune istruzioni del processore mentre il S.O. ha + istruzioni e + privilegi. 2) i P.A. non possono stabilire autonomamente quando e come accedere alle risorse del sistema, il S.O. si.
EVOLUZIONE: negli anni ’40 i programmi erano caricati nella memoria di lavoro tramite un dispositivo di ingresso in grado di leggere le schede perforate che contenevano la codifica in linguaggio macchina. Per le operazioni di debugging /correzione il programmatore era costretto ad analizzare lo stato dei registri e della memoria principale. La macchina eseguiva un programma alla volta e si sprecava molto tempo sia se il programma era in anticipo sia per preparare la macchina all’esecuzione successiva. Lo schema di elaborazione seriale dei programmi venne migliorato con sistemi operativi a lotti (batch) basati su un componente software detto monitor. I primi miglioramenti sono stati fatti per passare dall’esecuzione di un programma all’altro.
MODELLI ORGANIZZATIVI DEI SISTEMI O. modello monolitico: i processi applicativi richiedono al sistema operativo l’esecuzione di particolari servizi attraverso le chiamate di sistema. Ci sono 2 modalità di funzionamento: utente-usata per la normale esecuzione dei processi. Supervisore/kernel mode: usata per lo svolgimento dei servizi richiesti al sistema operativo da parte di un processo. MODELLO A STRATI: il s.o. è strutturato in un successione di strati,ognuno dei quali costruit a partire da quelli sottostanti. Le funzioni realizzate dal sistema operativo sono ripartite in componenti fra loro indipendenti. La parte centrale è il nucleo, l’unica parte che dipende dalle caratteristiche hardware e si occupa dell’esecuzione dei programmi attivi nello stesso momento. Contro: limitati meccanismi di protezione dei dati. nel livello ulteriormente evoluto ogni strato è una macchina virtuale che usa i servizi del
livello sottostante per fornirne altri di tipo più astratto. Ogni macchina virtuale è un
insieme di programmi che realizza funzionalità usando i servizi forniti dal livello inferiore. Ogni macchina virtuale gestisce risorse specifiche del sistema.
IL MIDDLEWARE lo sviluppo di sistemi operativi ha portato i produttori a includere alcune funzionalità in librerie di software utilizzabili dagli sviluppatori. la disponibilità di sistemi chiamati frame work che aggregano in modo coerente queste librerie determina un ulteriore strato dell’architettura dei sistemi o. attuali, detto middleware. Che media tra il s.o (ampliandone l’insieme di funzionalità con strumenti di livello elevato). e i programmi applicativi. Il M. ha assunto un ruolo strategico per le aziende che producono software, i cui sviluppatori hanno acquisito competenze di livello sempre più alto.
I PROCESSI: l’arch. Di Von Neumann è basata sul principio dell’esecuzione sequenziale di operazioni elementari. Spesso ci sono situazioni in cui l’esecuzione di vari passi viene fatta in parallelo=elaborazione parallela, si riferisce ai dati, alle istruzioni, ai programmi. Le condizioni che un sistema operativo deve quindi soddisfare sono l’efficienza, l’interattività, la sincronizzazione/cooperazione.
LA GESTIONE DEI PROCESSI: il componente in grado di eseguire i processi viene detto genericamente processore. Il proc. Ha la possibilità di lavorare in due modalità di esecuzione diverse: la modalità utente e la modalità supervisore. Nella gestione dei processi ogni processo uò trovarsi in uno dei quattro stati seguenti: modalità utente- modalità supervisore-pronto cioè in grado e in attesa di essere eseguito non appena il processore sarà disponibile-in attesa, in attesa di verificarsi un evento esterno per passare al pronto. In un istante un solo processo può essere in esecuzione ma essendo i sistemi operativi attuali multi programmati, più processi possono essere in pronto o in attesa. La modalità di esecuzione dei processi può essere: in foreground (il processo è abilitato all’interazione con l’utente, in background il processo non è in grado di interagire con l’utente.
IL MODELLO CLIENT-SERVER: in qst modello le funzionalità del s.o. sono considerati servizi associati a processi server che vengono eseguiti cn livello priorità = a qll dei processi veri e propri. I processi sn isolati non condividono dati se nn attraverso il nucleo. L’architettura client-server è modulare e gode di portabilità. DIFFERENZA modello client-server e a strati risiede nelle modalità di condivisione dei dati tra processi. Nel client i messaggi sono l’unica fonte di interazione nel m. a strati i dati possono essere allocati in aree comuni di memoria. I vantaggi di qst software sn:possibilità di aggiornare il server in modo chiaro al client, riduzione manutenzione, indipendenza fisica tra client e server.
GESTIONE MEMORIA: + il s.o. diventa sofisticato, + deve crescere la memoria centrale.soluzioni x l’incopatibilità tra memoria fisica e spazio necessario per i programmi: ridurre la necessità di spazio tenendo in memoria solo 1parte di dati e programmi, condividere parte delle istruzioni del codice eseguibile fra i diversi processi di 1stex programma. Un altro modo è dividere il programma in un certo numero di sezioni (pagine logiche) organizzando anche la memoria fisica in pagine fisiche così si tiene in memoria solo la parte di programma che si sta utilizzando. Per qst tipo di memoria ci vuole un hardware aggiuntivo: MMU (memory mgmt unit).