La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

Software storia.

Presentazioni simili


Presentazione sul tema: "Software storia."— Transcript della presentazione:

1 Software storia

2 Software di base Software applicativo software

3 storia Il software è un programma o un insieme di programmi in grado di funzionare su un computer o qualsiasi altro apparato con capacità di elaborazione (smartphone, console, navigatori satellitari e così via). Il termine è un vocabolo della lingua inglese costituito dall’unione di due parole, soft (morbido) e ware (manufatto, componente, oggetto, cosa). Il termine si contrappone tradizionalmente a hardware (la componente fisica di un sistema di calcolo). Nel tempo sono entrati nell'uso altri termini che descrivono elementi di un computer, come il firmware. Il suffisso -ware viene usato anche in altri termini che indicano particolari tipi di programmi: in funzione del ruolo che hanno in un sistema di calcolo (per esempio middleware); del tipo di licenza con cui sono distribuiti (freeware, shareware); e altro Il termine software ha origine durante la seconda guerra mondiale. I tecnici dell'esercito inglese erano impegnati nella decrittazione dei codici tedeschi di Enigma, di cui già conoscevano la meccanica interna (detta hardware, componente dura, nel senso di ferraglia) grazie ai servizi segreti polacchi. La prima versione di Enigma sfruttava tre rotori per mescolare le lettere. Dopo il 1941, ad Enigma venne aggiunto un rotore, e il team di criptanalisti inglesi, capitanati da Alan Turing, si dovette interessare non più alla sua struttura fisica, ma alle posizioni in cui venivano utilizzati i rotori della nuova Enigma. Dato che queste istruzioni erano scritte su pagine solubili nell'acqua (per poter essere più facilmente distrutte, evitando in tal modo che cadessero nelle mani del nemico) furono chiamate software (componente tenera), in contrapposizione all'hardware. Il senso moderno del termine deriva dalle istruzioni date ai computer, ed è stato utilizzato per la prima volta nel 1957 da John Wilder Tukey, noto statistico statunitense. Dal 1950 l'analogia tra l'hardware ed il corpo umano e quella tra il software e la mente umana si è fatta molto forte, dal momento che Turing ha sostenuto che il progresso tecnologico sarebbe riuscito a creare, entro il 2000, delle macchine intelligenti (in grado cioè di "pensare" autonomamente) atte alla risoluzione dei problemi. software

4 Sistema Operativo In informatica il sistema operativo, abbreviato in SO (in inglese OS, "operating system") è un particolare software, installato su un sistema di elaborazione, senza il quale non è possibile l'utilizzo di altri software più specifici, come applicazioni o librerie software, e quindi in ultimo del computer stesso. Esso quindi funge da "base" al quale si appoggiano gli altri software, che dunque dovranno essere progettati in modo da essere riconosciuti e supportati da quel particolare sistema operativo. Per sistema operativo intendiamo quindi l'insieme dei componenti software che hanno il duplice scopo di gestire le risorse hardware e software del computer, ed interfacciare l'utente con l'hardware. Sistema operativo

5 Sistema Operativo Parti del S.O. Software di base definizione
Gestione input e output Gestione file system Gestione dei processi Gestione della memoria centrale Software di base definizione

6 Software applicativo Software applicativo
È l’insieme dei programmi che svolgono i compiti più disparati . Non può essere utilizzato senza l’esistenza di un software di base Viene detto Software applicativo (o semplicemente "applicativi") l'insieme dei programmi che non sono compresi nel sistema operativo, ma che vengono invece installati dall'utente per svolgere compiti specifici. Per esempio sotto Windows il programma di videoscrittura Microsoft Word è forse l'applicativo più diffuso. Word non fa parte di Windows ma deve essere acquistato a parte e installato sulla macchina dopo che questa contiene già il sistema operativo. Sono ugualmente degli applicativi i programmi antivirus (Norton, Mc Affee, Panda, ...), i programmi per la compressione dei file (Winzip, Zip Central, ...), la posta elettronica (Eudora, Outlook Express, ...), il ritocco fotografico (Photoshop, Paint Shop Pro, ...), la composizione multimediale (Dreamweaver, FrontPage, Flash, Director, ...), i lettori audio/video (Quick Time Player, Real Player, ...), ecc. Software applicativo

7 Gestione input e output
La gestione dell'Input/Output ovvero delle periferiche di sistema è attuata attraverso il meccanismo dell'interrupt da parte delle periferiche stesse che chiamano in causa il sistema operativo il quale opererà un cambiamento di contesto (contex switch) all'interno del ciclo del processore assegnando al processore il compito di Input/Output richiesto. Sistema operativo

8 Gestione della memoria
Il gestore di memoria è la componente del sistema operativo che si occupa di gestire ed assegnare la memoria primaria ai processi che ne fanno richiesta immediatamente pima dell'elaborazione. La gestione della memoria è necessaria anche per tenere traccia di quanta memoria è impegnata e di quanta invece è disponibile per soddisfare nuove richieste: in mancanza di un sistema di gestione, si avrebbe prima o poi il caso nefasto di processi che ne sovrascrivono altri, con gli ovvi inconvenienti. Un altro buon motivo per registrare la memoria usata dai vari processi è il fatto che in caso di errori gravi i processi possono andare in crash e non essere più in grado di comunicare al sistema che la memoria che occupano può essere liberata: in questo caso è compito del gestore di memoria, dopo la terminazione anomala del processo, marcare come libere le zone di memoria possedute dal processo "defunto", rendendole disponibili per nuove allocazioni. Sistema operativo

9 Gestione del file system
Il file system è il modo in cui i file sono immagazzinati e organizzati su un dispositivo di archiviazione, come un hard disk o un CD-ROM. Esistono molti tipi di file system, creati per diversi sistemi operativi, per diverse unità di memorizzazione e per diversi usi. Si possono identificare due grandi classi di file system: quelli per unità locali, destinate ad organizzare fisicamente i dati su un disco, e i file system distribuiti, nati per condividere i dati fra più computer collegati attraverso una rete, superando le differenze fra sistemi operativi e file system locali delle varie macchine. Sistema operativo

10 Gestione dei processi Sistema operativo
Processo: è un programma in esecuzione. programma => statico dinamico <= processo Un processo incorpora le istruzioni, i dati da elaborare, lo stato dell’elaborazione (context) Abbiamo due famiglie di sistemi: -        MULTITASKING: processo tramite il quale il sistema operativo può realizzare più operazioni che sembrano contemporanee ma che in realtà avvengono in tempi diversi. Questo lasso di tempo, grazie alla velocità del processore è minimo, per tanto si ha la sensazione che le operazioni si effettuino nello stesso istante. -         SCHEDULER: dispositivo che si prefigge di sostituire un processo,      finito o meno, sostituendolo con un altro poiché il sistema operativo permette di lavorare con un solo processo alla volta. -         INTERRUPTS: è un segnale di avvertimento che viene mandato al processore per indicare che qualcosa è avvenuto Sistema operativo

11 Kernel Il kernel è il motore di un sistema operativo. Si tratta di un software che ha il compito di fornire ai moduli che compongono il sistema operativo e ai programmi in esecuzione sul computer le funzioni fondamentali ed un accesso controllato all'hardware, sollevandoli dai dettagli della sua gestione. Quali funzioni sia opportuno che il kernel debba fornire e quali possano essere demandate a moduli esterni è oggetto di opinioni divergenti: se il kernel di un sistema operativo implementa soltanto un numero molto ristretto di funzioni, delegando il resto ad altre parti, si parla di microkernel. Il vantaggio di un sistema operativo microkernel è la semplicità del suo kernel e la possibilità di cambiare facilmente i moduli e che se un modulo crolla non crolla tutto il sistema; lo svantaggio è l'interazione più complessa e costosa fra il kernel e le altre componenti del S.O. stesso, che spesso rallenta il sistema. Di solito il kernel di un sistema operativo microkernel è molto piccolo e fornisce solo poche funzioni di base per l'astrazione dall'hardware e la comunicazione fra i vari moduli, che sono esterni ad esso. Un kernel tradizionale, monolitico e altri, integra invece dentro di sé la gestione della memoria virtuale, lo scheduler e i gestori di file system, nonché i driver necessari per il controllo di tutte le periferiche collegate. Questo tipo di kernel è più complesso da progettare, mantenere ed aggiornare, ma è anche più veloce ed efficiente. Una sua evoluzione è costituita dai kernel "modulari", che mantengono al loro interno lo scheduler e i gestori di file system e memoria virtuale ma separano alcune funzioni non essenziali in moduli a sé stanti, da caricare in memoria solo in caso di effettivo uso della funzione o periferica di loro competenza Sistema operativo


Scaricare ppt "Software storia."

Presentazioni simili


Annunci Google