La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

Il Software. 2 Software di base Programmi di gestione del sistema (Sistema Operativo) Software Applicativo Programmi che permettono di svolgere compiti.

Presentazioni simili


Presentazione sul tema: "Il Software. 2 Software di base Programmi di gestione del sistema (Sistema Operativo) Software Applicativo Programmi che permettono di svolgere compiti."— Transcript della presentazione:

1 Il Software

2 2 Software di base Programmi di gestione del sistema (Sistema Operativo) Software Applicativo Programmi che permettono di svolgere compiti specifici (elaborazioni testi, fogli elettronici, browser, gestione di database, elaborazione di immagini, ecc…) Software Hardware Macrocomponenti dellelaboratore

3 Il Software Il Sistema Operativo

4 4 Il Sistema Operativo (SO) è un insieme di programmi finalizzati a rendere utilizzabile lelaboratore. Le funzioni principali del SO sono: nascondere allutente i dettagli dellhardware della macchina presentando una interfaccia amichevole. controllare lutilizzo di tutte le risorse dellelaboratore (Gestore di risorse).

5 5 Il SO come interfaccia utente Interfaccia: mezzo di interazione, tramite dispositivi di input e di output, tra utente ed elaboratore. Tipi di interfaccia Interfaccia a caratteri Offre la possibilità di eseguire un comando esclusivamente mediate luso della tastiera. Usata nei primi sistemi operativi (es. DOS). Interfaccia grafica Caratterizzata da finestre, ognuna delle quali può contenere un programma applicativo o un documento (es. WINDOWS). Offre la possibilità di eseguire un comando puntando e cliccando l icona che lo rappresenta mediante luso del mouse. Impiega la tecnologia WYSIWYG (What You See Is What You Get) che consente di visualizzare sullo schermo i documenti nel modo in cui saranno stampati.

6 6 Il SO come interfaccia utente Interfaccia a stilo Usa uno schermo sensibile al tatto su cui si può scrivere o puntare un comando usando uno stilo (usata nei sistemi operativi per palmari). Interfaccia a touchscreen Consente di operare puntando con un dito le immagini o le icone presenti sullo schermo. Interfaccia conversazionale Consente di eseguire comandi vocali o immettere dati mediante programmi di riconoscimento vocale.

7 7 Il SO come gestore di risorse Gestore dei processi Gestore dei file Nucleo Gestore della memoria HW Gestore delle periferiche Interprete dei comandi SW applicativo Programmi di utilità

8 8 Il SO come gestore di risorse Il SO è composto da diverse parti interagenti fra loro che consentono di gestire luso di tutte le risorse da parte degli utenti e del software applicativo: Gestore del processore (Nucleo) Gestore della memoria centrale Gestore delle periferiche Gestore dei file (File system) Gestore dellinterfaccia utente e dei relativi comandi (Shell on Interprete dei comandi) Gestore della rete

9 9 Elementi di un Sistema Operativo

10 10 Compiti del sistema operativo Controllare lesecuzione delle applicazioni Coordinare la comunicazione tra le componenti del computer Memorizzare dati e programmi Gestire luso delle risorse dellelaboratore Gestire i malfunzionamenti

11 11 Il BIOS Allaccensione dellelaboratore (bootstrap), parte lesecuzione del BIOS (Basic Input Output System), un programma residente su una ROM, che: esegue i programmi di diagnostica, che verificano la presenza di tutti i dispositivi hardware e lassenza di guasti; carica dalla memoria di massa una parte del Sistema Operativo che a sua volta ne carica una maggiore, e così via fino a quando tutti i programmi sono caricati; attiva linterprete dei comandi. Essendo installato permanentemente nel sistema, il BIOS è considerato una via di mezzo tra HW e SW, ossia è FIRMWARE

12 12 Sistemi Operativi Multitasking I SO multitasking permettono allutente di eseguire più programmi contemporaneamente. Come operano: poiché lelaboratore è dotato di un solo processore, il SO assegna luso della CPU alternativamente tra i vari programmi, passando rapidamente da un programma allaltro, a seconda delle necessità e di eventuali priorità In realtà in ogni istante è in esecuzione un solo programma per volta.

13 13 Altri tipi di Sistemi Operativi Sistemi Operativi Multithreading Consentono ai programmi applicativi di svolgere più operazioni contemporaneamente Il multitheading è una sorta di multitasking applicato ad un singolo programma. SO Multiutente Permettono il collegamento simultaneo di più utenti ad una stessa macchina SO Multiprocessore Gestiscono sistemi dotati di più processori

14 Il SW La programmazione

15 15 Elaborazione automatica dellinformazione Procedura di elaborazione (algoritmo) sequenza finita di azioni che consente di risolvere un problema in un tempo finito. Elaboratore macchina capace di eseguire le azioni specificate dallalgoritmo Programma (SW) codifica della procedura di elaborazione in un linguaggio comprensibile alla macchina

16 16 Programma Un programma è un insieme di frasi (ISTRUZIONI ) che specificano la procedura di elaborazione in un particolare linguaggio comprensibile dallelaboratore, detto linguaggio di programmazione. Un elaboratore offre un supporto per realizzare (implementare) programmi

17 17 Linguaggi di programmazione Problema: Distanza notevole fra il linguaggio adottato dalluomo per esprimere la procedura di elaborazione e il linguaggio adottato dalla macchina (linguaggio binario) Soluzione: introduzione di un livello intermedio di linguaggio (linguaggio di programmazione) più vicino alla logica delluomo e più comprensibile del linguaggio macchina

18 18 Linguaggi di programmazione Hardware Software Procedura di elaborazione in linguaggio naturale Se a è maggiore di 100 incrementa b di 3 Linguaggio macchina Linguaggio di programmazione if (a>100) then b:=b+3;

19 19 Linguaggi di programmazione Ogni linguaggio di programmazione ha un numero fisso di parole (le istruzioni) e una sintassi che determina come queste parole possono essere combinate tra loro per formare delle frasi.

20 20 Traduzione di programmi Per poter essere eseguito sulla macchina reale, un programma scritto in linguaggio di programmazione deve essere tradotto in un programma equivalente scritto in un linguaggio macchina Ogni istruzione in linguaggio di alto livello è sostituita (tradotta) da una sequenza di istruzioni in linguaggio macchina Solo programmi in linguaggio macchina possono essere eseguiti direttamente dai circuiti elettronici senza bisogno di traduzione

21 21 I linguaggi di basso livello I primi linguaggi introdotti per semplificare la programmazione sonop stati i linguaggi di basso livello o assemblativi linguaggi simbolici dipendenti dalla macchina specifica ogni istruzione macchina è rappresentata da un nome mnemonico più facile da ricordare rispetto ad una stringa di bit

22 22 Traduzione del linguaggio assemblativo Un programma scritto in linguaggio assemblativo (codice sorgente) viene tradotto nellequivalente programma in linguaggio macchina (codice oggetto) da un programma, detto assemblatore Lassemblatore trasforma ogni istruzione del linguaggio assembly nella corrispondente istruzione in linguaggio macchina Traduzione 1 a 1

23 23 I linguaggi di alto livello Il vocabolario di un linguaggio assemblativo si riduce al ristretto insieme di istruzioni che un processore può eseguire È complicato realizzare programmi complessi I linguaggi di alto livello (es. Java, C, Fortran, Cobol, Pascal,…) sono stati introdotti per agevolare lo sviluppo di grossi programmi: linguaggi simbolici indipendenti dalla macchina, con un insieme di istruzioni molto ampio

24 24 Traduzione di un linguaggio di alto livello Un programma scritto in linguaggio di alto livello (codice sorgente) viene tradotto nellequivalente programma in linguaggio macchina (codice oggetto) da un programma, detto compilatore Il compilatore converte ogni istruzione in linguaggio ad alto livello in una sequenza di istruzioni in macchina Traduzione 1 a molti

25 25 Traduzione di un linguaggio di alto livello I compilatori traducono tutto il codice sorgente in un codice oggetto che viene successivamente eseguito Per alcuni linguaggi di programmazione (es. BASIC, Matlab, Java), la traduzione di programmi è effettuata da un interprete che legge, traduce ed esegue ogni singola istruzione del codice sorgente, senza produrre un codice oggetto Lesecuzione è più lenta rispetto ad un programma compilato

26 26 La programmazione Il processo di creazione di un programma prende il nome di programmazione e comprende: La scrittura del programma: significa convertire le specifiche (descrizioni accurate) di un problema in una sequenza di istruzioni dettagliate che permettono di risolvere tale problema per mezzo di un computer. Tali istruzioni descrivono come devono essere strutturati i dati e specificano passo passo la procedura di elaborazione (algoritmo). La verifica del programma.

27 27 Sviluppo di programmi Il processo di sviluppo di un programma (programmazione) comprende diverse fasi Definizione del problema Progettazione del programma Uso dei diagrammi di flusso Codifica del programma Verifica del programma (debugging) Documentazione del prodotto finito


Scaricare ppt "Il Software. 2 Software di base Programmi di gestione del sistema (Sistema Operativo) Software Applicativo Programmi che permettono di svolgere compiti."

Presentazioni simili


Annunci Google