La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

Il Software.

Presentazioni simili


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

1 Il Software

2 Macrocomponenti dell’elaboratore
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

3 Il Software Il Sistema Operativo

4 Il Sistema Operativo Il Sistema Operativo (SO) è un insieme di programmi finalizzati a rendere utilizzabile l’elaboratore. Le funzioni principali del SO sono: nascondere all’utente i dettagli dell’hardware della macchina presentando una interfaccia amichevole. controllare l’utilizzo di tutte le risorse dell’elaboratore (Gestore di risorse).

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 l’uso 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 l’uso 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 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 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 Il SO come gestore di risorse
Il SO è composto da diverse parti interagenti fra loro che consentono di gestire l’uso 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 dell’interfaccia utente e dei relativi comandi (Shell on Interprete dei comandi) Gestore della rete

9 Elementi di un Sistema Operativo

10 Compiti del sistema operativo
Controllare l’esecuzione delle applicazioni Coordinare la comunicazione tra le componenti del computer Memorizzare dati e programmi Gestire l’uso delle risorse dell’elaboratore Gestire i malfunzionamenti

11 Il BIOS All’accensione dell’elaboratore (bootstrap), parte l’esecuzione 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 l’assenza 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 l’interprete dei comandi. Essendo installato permanentemente nel sistema, il BIOS è considerato una via di mezzo tra HW e SW, ossia è FIRMWARE

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

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 Elaborazione automatica dell’informazione
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 dall’algoritmo Programma (SW) codifica della procedura di elaborazione in un linguaggio comprensibile alla macchina

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

17 Linguaggi di programmazione
Problema: Distanza notevole fra il linguaggio adottato dall’uomo 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 dell’uomo e più comprensibile del linguaggio macchina

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

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 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 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 Traduzione del linguaggio assemblativo
Un programma scritto in linguaggio assemblativo (codice sorgente) viene tradotto nell’equivalente programma in linguaggio macchina (codice oggetto) da un programma, detto assemblatore L’assemblatore trasforma ogni istruzione del linguaggio assembly nella corrispondente istruzione in linguaggio macchina Traduzione 1 a 1

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 Traduzione di un linguaggio di alto livello
Un programma scritto in linguaggio di alto livello (codice sorgente) viene tradotto nell’equivalente 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 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 L’esecuzione è più lenta rispetto ad un programma compilato

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 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."

Presentazioni simili


Annunci Google