18.01.2015 Views

Appunti di Calcolo Numerico - Esercizi e Dispense - Università degli ...

Appunti di Calcolo Numerico - Esercizi e Dispense - Università degli ...

Appunti di Calcolo Numerico - Esercizi e Dispense - Università degli ...

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

1. STRUTTURA DELL’ELABORATORE<br />

Sul software<br />

Memoria<br />

cache<br />

questi processi veniva eseguito, tuttavia, quando il processo in esecuzione richiedeva un’istruzione <strong>di</strong> ingresso<br />

o <strong>di</strong> uscita, esso veniva sospeso attivando le unità periferiche necessarie per l’esecuzione dell’istruzione<br />

data. Questa tecnica richiedeva una elevata capacità della memoria centrale e solo pochi sistemi potevano<br />

funzionare in modo adeguato.<br />

Uno dei primi sistemi che iniziò ad utilizzare la multiprogrammazione fu il sistema OS/360 realizzato per<br />

i computer IBM 360. Questo sistema operativo fu importante per due motivi:<br />

G si cercò <strong>di</strong> realizzare un sistema operativo uniforme e compatibile per macchine IBM molto <strong>di</strong>verse tra<br />

loro per quando riguarda l’hardware sottostante: fino a quel momento ogni macchina aveva il proprio<br />

sistema operativo, che cambiava da macchina a macchina!<br />

G lo sviluppo <strong>di</strong> questo sistema operativo fu molto delicato e complesso e aprì lo stu<strong>di</strong>o delle<br />

problematiche relative all’ingegneria del software.<br />

Nonostante questi progressi, la multiprogrammazione non permetteva molta interattività tra utente e<br />

computer: <strong>di</strong> fatto l’utente consegnava i dati e il programma da eseguire (un pacco <strong>di</strong> schede perforate) all’operatore<br />

del computer e accedeva ai risultati dopo qualche ora se non ad<strong>di</strong>rittura dopo giorni e giorni, risultati<br />

che riceveva in forma cartacea ad esecuzione avvenuta (non c’era ancora il monitor per la visualizzazione<br />

su video dei risultati).<br />

Per risolvere questo tipo <strong>di</strong> problemi, l’uso delle schede fu sostituito da appositi terminali sempre collegati<br />

al computer e furono cambiate le modalità <strong>di</strong> gestione dell’unità centrale mo<strong>di</strong>ficando i sistemi operativi<br />

esistenti. Si arrivò all’interazione con il computer non più me<strong>di</strong>ante schede perforate bensì tramite tastierastampante<br />

o tramite tastiera-monitor.<br />

Alla fine del 1950 si introdusse il concetto <strong>di</strong> time-sharing che permetteva l’esecuzione <strong>di</strong> più processi<br />

in modo da poter sod<strong>di</strong>sfare le esigenze <strong>di</strong> più utenti contemporaneamente. Con il time-sharing si assegna,<br />

infatti, un piccolo intervallo <strong>di</strong> tempo a ciascun processo dando l’impressione che ciascun processo vada<br />

avanti parallelamente agli altri.<br />

Gli sviluppi del sistema operativo ottenuti da allora fino ad oggi si possono così riassumere: il sistema<br />

operativo fornisce funzioni <strong>di</strong> base per la gestione delle risorse, quali:<br />

G uso del processore (multitasking: l’uso della CPU è permesso ad un programma alla volta per brevi<br />

intervalli <strong>di</strong> tempo, quin<strong>di</strong> l’utente può eseguire più programmi contemporaneamente)<br />

G uso della memoria centrale (memoria virtuale)<br />

G riconoscimento e gestione <strong>degli</strong> utenti (multiutenza)<br />

G gestione delle periferiche (drivers)<br />

G file system<br />

G interfaccia grafico.<br />

Il software <strong>di</strong> base (o general purpose) può avere funzioni varie: e<strong>di</strong>tor <strong>di</strong> testo, elaborazione <strong>di</strong> testi, fogli<br />

elettronici, posta elettronica, internet.<br />

Il software applicativo è costituito da programmi che hanno obiettivi specifici come intrattenimento,<br />

controllo <strong>di</strong> sistemi, progettazione (CAD), risoluzione <strong>di</strong> problemi matematici.<br />

Per migliorare le prestazioni <strong>di</strong> un computer si inserisce una memoria interme<strong>di</strong>a tra CPU e RAM, detta<br />

cache. Si trova all’interno del processore. È più veloce della RAM ma anche più costosa.<br />

1.5.1 Per capire meglio il sistema operativo<br />

Immaginiamo un ristorante con un capo-cuoco, il suo aiutante, una cucina, i camerieri e i clienti. I clienti<br />

scelgono un piatto dal menu, un cameriere prende l’or<strong>di</strong>ne e lo porta al capo-cuoco. Il capo-cuoco riceve<br />

l’or<strong>di</strong>ne e assegna al suo aiutante il compito <strong>di</strong> preparare il piatto. L’aiutante si de<strong>di</strong>cherà alla preparazione<br />

del piatto, compito che potrà richiedere più attività. Il capo-cuoco, intanto, supervisiona la preparazione dei<br />

piatti e gestisce le risorse (limitate) dei posti nel ristorante.<br />

G il capo-cuoco rappresenta il sistema operativo,<br />

G i clienti sono gli utenti,<br />

G le ricette associate ai piatti corrispondono ai programmi,<br />

G gli ingre<strong>di</strong>enti sono l’input del programma,<br />

G il piatto è l’output del programma,<br />

G il menu e il cameriere sono l’interfaccia verso il sistema operativo,<br />

8

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!