Colloquio di informatica (5 crediti)

Documenti analoghi
Il Sistema Operativo (1)

Con il termine Sistema operativo si fa riferimento all insieme dei moduli software di un sistema di elaborazione dati dedicati alla sua gestione.

Il Sistema Operativo. Introduzione di programmi di utilità. Elementi di Informatica Docente: Giorgio Fumera

Software di sistema e software applicativo. I programmi che fanno funzionare il computer e quelli che gli permettono di svolgere attività specifiche

L informatica INTRODUZIONE. L informatica. Tassonomia: criteri. È la disciplina scientifica che studia

Sistema Operativo. Fondamenti di Informatica 1. Il Sistema Operativo

Il Sistema Operativo

SISTEMI OPERATIVI. Prof. Enrico Terrone A. S: 2008/09

Il Sistema Operativo. C. Marrocco. Università degli Studi di Cassino

Corso di Informatica

Software relazione. Software di base Software applicativo. Hardware. Bios. Sistema operativo. Programmi applicativi

Il software impiegato su un computer si distingue in: Sistema Operativo Compilatori per produrre programmi

Gestione della memoria centrale

Corso di Sistemi di Elaborazione delle informazioni

Software. Algoritmo. Algoritmo INFORMATICA PER LE DISCIPLINE UMANISTICHE 2 (13042)

Il Software. Il software del PC. Il BIOS

Dispensa di Informatica I.1

Sistemi operativi. Esempi di sistemi operativi

Introduzione alle tecnologie informatiche. Strumenti mentali per il futuro

Il Software e Il Sistema Operativo. Prof. Francesco Accarino IIS Altiero Spinelli A.S. 09/10

ISTVAS Ancona Introduzione ai sistemi operativi Tecnologie Informatiche

Il sistema operativo

Informatica e Bioinformatica: Sistemi Operativi

Informatica per la Storia dell Arte. Anno Accademico 2014/2015

Introduzione ai Sistemi Operativi

La gestione di un calcolatore. Sistemi Operativi primo modulo Introduzione. Sistema operativo (2) Sistema operativo (1)

L Open Source un mondo che forse dovresti conoscere? Viaggio alla scoperta dell open source e le sue caratteristiche.

Gestore di Memoria. Gestire le richieste di risorse di memoria Liberare le risorse non più utilizzate. Gestire la memoria virtuale (swap su disco)

Il SOFTWARE DI BASE (o SOFTWARE DI SISTEMA)

Il Sistema Operativo. Di cosa parleremo? Come si esegue un programma. La nozione di processo. Il sistema operativo

Il sistema operativo. Sistema operativo. Multiprogrammazione. Il sistema operativo. Gestione della CPU

Il sistema di elaborazione Hardware e software

Indice degli argomenti del s.o. Software. Software. Buona lezione a tutti!! SISTEMI OPERATIVI

Fondamenti di Informatica: Sistemi Operativi 1. Introduzione

PARTE 4 La Macchina Software

I programmi applicativi

Software di base. Corso di Fondamenti di Informatica

IL SOFTWARE TIPI DI SOFTWARE. MACCHINE VIRTUALI Vengono definite così perché sono SIMULATE DAL SOFTWARE, UNIFORMANO L ACCESSO SISTEMA OPERATIVO

Sistemi Operativi Kernel

Il software. E' una serie di istruzioni eseguite dal PC.

Funzioni del Sistema Operativo

Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A Pietro Frasca.

Le Infrastrutture Software ed il Sistema Operativo

Fondamenti di Informatica Ingegneria Clinica Lezione 16/10/2009. Prof. Raffaele Nicolussi

Definizione Parte del software che gestisce I programmi applicativi L interfaccia tra il calcolatore e i programmi applicativi Le funzionalità di base

Il software. la parte contro cui si può solo imprecare. Il software

Varie tipologie di memoria

Sistema operativo: Gestione della memoria

In un modello a strati il SO si pone come un guscio (shell) tra la macchina reale (HW) e le applicazioni 1 :

MODULO 02. Iniziamo a usare il computer

COMPETENZE INFORMATICHE DI BASE PER ADULTI

Corso di Alfabetizzazione Informatica

NOZIONI ELEMENTARI DI HARDWARE E SOFTWARE

Informatica: il sistema operativo

Laboratorio di Informatica

INFORMATICA. Il Sistema Operativo. di Roberta Molinari

GLI ARCHIVI DI DATI. File Un File è una sequenza di informazioni che costituisce una unità logica. Un file è un un contenitore di di informazioni

INFORMATICA. Corso di Laurea in Scienze dell'educazione

Il calcolatore - Applicazioni

Nozioni di Informatica di base. dott. Andrea Mazzini

Sistemi Operativi (modulo di Informatica II) I processi

Dispensa di Fondamenti di Informatica. Architettura di un calcolatore

Corso di Informatica

Internet: Software Open Source e Sistemi operativi. conoscerlo al meglio per usarlo meglio Gabriele Riva - Arci Barzanò

CdL in Medicina Veterinaria - STPA AA

Corso di Informatica

Approccio stratificato

C. P. U. MEMORIA CENTRALE

Infrastrutture Software

LINUX. Che cos'e` un sistema operativo?

Classificazione del software

Architetture Applicative

Sistemi operativi e reti A.A Lezione 2

Laboratorio di Informatica

Scopo della lezione. Informatica. Informatica - def. 1. Informatica

1 Processo, risorsa, richiesta, assegnazione 2 Concorrenza 3 Grafo di Holt 4 Thread 5 Sincronizzazione tra processi

Il software: Istruzioni per il computer. I tre tipi di software di sistema. Compiti del sistema operativo

Informatica - A.A. 2010/11

Hardware delle reti LAN

Il sistema di elaborazione

Concetti base del computer

Software e Sistemi Operativi Prof. Maurizio Naldi A.A. 2015/16

ASPETTI GENERALI DI LINUX. Parte 2 Struttura interna del sistema LINUX

Parte V. Sistemi Operativi & Reti. Sistemi Operativi. Sistemi Operativi

Pronto Esecuzione Attesa Terminazione

CORSO PER L USO DEL COMPUTER

Informatica. Il software (S.O.) e ancora sulle basi numeriche

All interno del computer si possono individuare 5 componenti principali: SCHEDA MADRE. MICROPROCESSORE che contiene la CPU MEMORIA RAM MEMORIA ROM

Scheduling della CPU. Sistemi multiprocessori e real time Metodi di valutazione Esempi: Solaris 2 Windows 2000 Linux

HARDWARE. Relazione di Informatica

Sistemi Operativi IMPLEMENTAZIONE DEL FILE SYSTEM. Implementazione del File System. Struttura del File System. Implementazione

La Gestione delle risorse Renato Agati

Parte VI SISTEMI OPERATIVI

IL SISTEMA OPERATIVO IL SISTEMA OPERATIVO INTERFACCE TESTUALI INTERFACCE TESTUALI FUNZIONI DEL SISTEMA OPERATIVO INTERFACCE GRAFICHE

Architettura di un sistema di calcolo

CPU. Maurizio Palesi

Sviluppata da: Lo Russo - Porcelli Pag. 1 di 6 6FRSR utilizzare il DBMS Postgresql per imparare il linguaggio SQL.

Contenuti. Visione macroscopica Hardware Software. 1 Introduzione. 2 Rappresentazione dell informazione. 3 Architettura del calcolatore

DEFINIZIONE DI SOFTWARE

INTRODUZIONE ALL' INFORMATICA

Transcript:

Università degli studi della Tuscia Dipartimento di Scienze Ecologiche e Biologiche Corso di laurea in Scienze Ambientali A.A. 2013-2014 - II semestre Colloquio di informatica (5 crediti) Prof. Pier Giorgio Galli (pggalli@unitus.it)

Fil rouge

Trattamento dei dati e sistemi informatici Hardware + Software = Sistema Informatico + Trattamento dati = Sistema informativo

Il software Il termine software è un neologismo della lingua inglese costituito dall unione di due parole, soft(morbido) e ware (manufatto, componente, oggetto). Indica un programma o un insieme di programmi in grado di essere eseguiti su un elaboratore. Il software comprende tutti i programmi, indipendentemente dal tipo di compito o di compiti che un programma è in grado di svolgere.

Il software di base Comprende tutti quei programmi necessari al funzionamento di base del computer. Consiste del sistema operativo e degli strumenti di sviluppo software (ovvero orientati alla programmazione). Si pone perciò come un intermediario tra l hardware e l utente e tra l hardware ed il software applicativo.

Il software applicativo E l insieme dei programmi finalizzati a risolvere problemi specifici dell utente. Ad esempio, in un contesto di produttività individuale, possiamo considerare la suite Microsoft Office Word: videoscrittura Excel: foglio di elettronico Power Point: presentazioni O l'analoga suite (gratuita) Open Office : Write: videoscrittura Calc: foglio di elettronico Draw: presentazioni

Il software di base L'utente interagisce [direttamente] con il sistema operativo ad esempio per copiare un file da una cartella ad un'altra; per connettere una nuova stampante; per installare/disinstallare un'applicazione; per localizzare la lingua, ecc. Software di base (sistema operativo, ambienti di sviluppo, tools di sistema ) Hardware

Il software applicativo Software applicativo (calcolatrice, videoscrittura, foglio elettronico, giochi, ) Software di base (sistema operativo, ambienti di sviluppo, tools di sistema ) Hardware

Il software applicativo L'utente interagisce con il software applicativo (es. Power Point, salva con nome) Il software applicativo interagisce con il sistema operativo (es. esecuzione del comando salva con nome) Hardware Il sistema operativo gestisce l'i/o per l'esecuzione del comando

Il sistema operativo un Sistema Operativo è un insieme di programmi responsabile del controllo e della gestione dei componenti hardware che costituiscono un computer e dei programmi applicativi che su di esso vengono eseguiti. Un sistema operativo mette a disposizione dell utente un interfaccia per accedere, ovvero per esprimere i comandi dell utente nei confronti delle risorse hardware (dischi, memoria, I/O in generale) del sistema.

Due grandi famiglie Mainframe Midrange PC Mobilità UNIX Windows Linux (Open source) Mac OS (Apple) ios (Apple) Android (Google) Windows server Windows

Sistema operativo Interfaccia (shell) Nucleo del sistema operativo (kernel) Gestore dei processi Gestore della memoria centrale File system Gestore I/O Hardware

I processi Per processo si intende un'istanza di un programma in esecuzione. Più precisamente è un'attività controllata da un programma che si svolge su un processore sotto la supervisione del sistema operativo. Un programma è costituito dalle istruzioni (implementazione dell'algoritmo). È un'entità statica, che rimane immutata durante l'esecuzione. Il processo è l'entità utilizzata dal sistema operativo per rappresentare una specifica esecuzione di un programma. Esso è quindi un'entità dinamica, che dipende dai dati che vengono elaborati, e dalle operazioni eseguite su di essi. Il processo è quindi caratterizzato, oltre che dal codice eseguibile, dall'insieme di tutte le informazioni che ne definiscono lo stato, come il contenuto della memoria indirizzata, i thread, i descrittori dei file e delle periferiche in uso. Da Wikipedia, l'enciclopedia libera.

Time sharing In informatica il time-sharing (termine di origine inglese che tradotto letteralmente significa "condivisione di tempo") è un approccio concorrente del sistema operativo all'uso delle risorse di processamento attraverso il quale l'esecuzione o attività della CPU viene suddivisa intervalli temporali (quanti di tempo) da assegnare sequenzialmente a vari processi. 1) Ambienti monoutente (es. PC, tablet, ). L'assegnazione della CPU ai processi avviene in tempi tanto rapidi da dare all'utente l'impressione che i processi vengano eseguiti contemporaneamente. 2) Ambienti multiutente (es. server, computer centralizzati). In un contesto di computer condiviso attraverso più utenti possono, con i loro programmi in esecuzione, interagire con il sistema centralizzato In questo caso la CPU del computer centrale viene utilizzata per rispondere alle richieste dei singoli utenti, passando rapidamente da uno all'altro dando così l'impressione ad ognuno di avere a disposizione il computer centrale interamente per sé.

Transizioni di stato dei processi Nuovo Pronto Attesa Esecuzione Terminato

Gestore dei processi Quando un programma utente è stato avviato la CPU esegue le istruzioni in linguaggio macchina che lo compongono Il gestore dei processi controlla la terminazione, interruzione e riattivazione, sincronizzazione dei processi in esecuzione Dallo stato di pronto allo stato di esecuzione: il SO stabilisce quale dei processi pronti debba essere mandato in esecuzione; la scelta è fatta in base ad un algoritmo di scheduling: per esempio, si esegue il primo della coda dei processi pronti, oppure quello con priorità massima,... Dallo stato di esecuzione allo stato di attesa: il processo chiede delle risorse di I/O o attende un evento il SO salva tutte le informazioni necessarie a riprendere l esecuzione del processo al verificarsi dell'evento o all'ottenimento della risorsa

Gestore dei processi Dallo stato di attesa allo stato di pronto: si verifica l evento atteso dal processo e il SO sposta quel processo nella coda dei processi pronti Dallo stato di esecuzione allo stato di pronto: il processo in esecuzione viene interrotto dal SO (es. perché termina il quanto di tempo a disposizione, oppure perché la CPU riceve un interrupt); il SO salva tutte le informazioni necessarie a riprendere l esecuzione del processo.

Gestione della memoria Centrale 1. Il sistema di elaborazione può eseguire più applicazioni "contemporaneamente" (es. itunes mentre navigo nel web e leggo le slide di informatica); 2. le applicazioni per essere eseguite devono risiedere nella memoria primaria (centrale); 3. la memoria centrale (RAM) può non essere abbastanza capiente per contenere tutte le applicazioni che l'utente vuole eseguire contemporaneamente Come risolvere il problema?

Memoria virtuale La memoria virtuale è una architettura di sistema capace di simulare uno spazio di memoria centrale (memoria primaria) maggiore di quello fisicamente presente o disponibile; questo risultato si raggiunge utilizzando spazio di memoria secondaria (di massa) su altri dispositivi o supporti di memorizzazione, di solito le unità a disco. La memoria centrale fisicamente presente diventa quindi la parte effettivamente utilizzata di quella virtuale, più grande: questo stratagemma è utile in virtù del principio di località e riuso dell'esecuzione dei programmi. La memoria di massa utilizzata a questo scopo è comunemente chiamata spazio di swap o file di paging. Le operazioni di spostamento delle pagine dallo spazio di swap alla memoria fisica sono chiamate swapping. Da Wikipedia, l'enciclopedia libera. Considerando che la velocità di accesso alle memorie di massa è minore rispetto alle RAM, maggiore è la quantità di RAM installata in un computer installata in un computer maggiore sarà la velocità nell'esecuzione dei programmi!

Memoria virtuale - schema Memoria di massa (lenta) allocata per ogni processo Memoria centrale (veloce) allocata per ogni processo in esecuzione CPU

File system Il file system è il componente del sistema operativo responsabile della gestione dei dati nelle memorie secondarie gestisce la corrispondenza tra l organizzazione logica e l organizzazione fisica dei dati; i dati nelle memorie secondarie sono organizzati logicamente in volumi, cartelle e file; i dati nelle memorie secondarie sono organizzati fisicamente in dischi, superfici, cilindri e settori; garantisce in modo ottimale lo spazio disponibile garantisce all'utente l'accesso ai dati anche in contesti concorrenti; fornisce meccanismi di protezione; rende disponibili in modo semplice le operazioni di uso comune sui file;

File system Il gestore dei file (file system) è, informalmente, un meccanismo con il quale i file sono immagazzinati e organizzati su un dispositivo di archiviazione, come un hard disk o un CD-ROM. Più formalmente, un file system è l insieme delle strutture di dati e delle tecniche necessarie per la memorizzazione, l organizzazione gerarchica, la manipolazione, l accesso e la lettura dei dati.

File system Il file system è il componente del sistema operativo responsabile della gestione dei dati nelle memorie secondarie gestisce la corrispondenza tra l organizzazione logica e l organizzazione fisica dei dati; i dati nelle memorie secondarie sono organizzati logicamente in volumi, cartelle e file; i dati nelle memorie secondarie sono organizzati fisicamente in dischi, superfici, cilindri e settori; garantisce in modo ottimale lo spazio disponibile garantisce all'utente l'accesso ai dati anche in contesti concorrenti; fornisce meccanismi di protezione; rende disponibili in modo semplice le operazioni di uso comune sui file; Organizzazione logica Organizzazione Fisica

File system Il file system è il componente del sistema operativo responsabile della gestione dei dati nelle memorie secondarie gestisce la corrispondenza tra l organizzazione logica e l organizzazione fisica dei dati; i dati nelle memorie secondarie sono organizzati logicamente in volumi, cartelle e file; i dati nelle memorie secondarie sono organizzati fisicamente in dischi, superfici, cilindri e settori; garantisce in modo ottimale lo spazio disponibile garantisce all'utente l'accesso ai dati anche in contesti concorrenti; fornisce meccanismi di protezione; rende disponibili in modo semplice le operazioni di uso comune sui file; Organizzazione logica Organizzazione Fisica

Cancellazione logica e fisica dei file Il file system nell'eseguire il comando di eliminazione di un file dalla memoria di massa (eliminazione dal cestino), non cancella fisicamente i bit che compongono il file, ma memorizza in un indice di allocazione l'area fisica della memoria assegnata al file come riusabile per la memorizzazione di un altro file. (Questo rende possibile recuperare un file anche dopo averlo eliminato dal cestino) Durante la fase di memorizzazione di un nuovo file, quando non è presente abbastanza spazio fisico contiguo per memorizzazione dei dati, il file system collega gli spazi fisici a disposizione con catene logiche e assegnando le varie parti ad un unico file logico. Questo comportamento, a lungo andare, provoca il fenomeno della frammentazione.

La deframmentazione La deframmentazione è un'operazione di ottimizzazione dell'archiviazione dei dati nella memoria di massa di un computer che consiste nel ridurre la frammentazione esterna dei file presenti sulla memoria stessa (es: un disco fisso) ristrutturandone l'allocazione facendo in modo che ciascun file risulti memorizzato in una zona contigua dal punto di vista fisico; questo diminuisce drasticamente i tempi di accesso e lettura ai file. La deframmentazione è un'operazione che può essere svolta in modo automatico dal file system durante il suo regolare funzionamento oppure eseguita tramite esplicita richiesta dell'utente tramite l'esecuzione di un programma. Da Wikipedia, l'enciclopedia libera.

Eliminazione sicura file Distruzione fisica della memoria Smagnetizzazione (es. degausser) Software specifici (es. Ccleaner) Degausser CCleaner

Gestore dispositivi I/O. I driver. Il sistema operativo oltre, alla gestione delle memorie di massa (attraverso il file system), gestisce il trasferimento dei dati con tutti gli altri dispositivi di I/O (periferiche). In questo contesto il produttore del sistema operativo deve conoscere nei dettagli il funzionamento di ogni dispositivo hardware di I/O. Due sono gli approcci: sistemi operativi nei quali possono essere connesse solo determinati dispositivi per i quali il produttore del sistema operativo provvede a scrivere l interfaccia; Sistemi operativi (più diffusi) per i quali il produttore della periferica provvede alla scrittura dell interfaccia (driver)

La leggerezza del software Poi, l'informatica. E' vero che il software non potrebbe esercitare i poteri della sua leggerezza se non mediante la pesantezza del hardware; ma è il software che comanda, che agisce sul mondo esterno e sulle macchine, le quali esistono solo in funzione del software, si evolvono in modo d'elaborare programmi sempre più complessi. La seconda rivoluzione industriale non si presenta come la prima con immagini schiaccianti quali presse di laminatoi o colate d'acciaio, ma come i bits d'un flusso d'informazione che corre sui circuiti sotto forma d'impulsi elettronici. Le macchine di ferro ci sono sempre, ma obbediscono ai bits senza peso. ITALO CALVINO, Lezioni americane. Sei proposte per il prossimo millennio.

Killer application La locuzione inglese killer application, significa letteralmente applicazione assassina, ma viene intesa nel senso metaforico di applicazione decisiva, vincente. Applicazione assassina si riferisce a un prodotto di successo costruito su una determinata tecnologia (quindi una applicazione di quella tecnologia), grazie al quale la tecnologia stessa penetra nel mercato, imponendosi rispetto alle tecnologie concorrenti e aprendo la strada alla commercializzazione di altre applicazioni secondarie. Da wikipedia, l enciclopedia libera. Esempi da manuale: Visicalc Wordstar

Licenza d uso La licenza o contratto d'uso, in informatica è il contratto con il quale il titolare dei diritti di sfruttamento economico sul software (programma informatico) definisce il regime giuridico di circolazione e le limitazioni nell'utilizzo e nella cessione dell'opera. Licenze per il software software proprietario / closed source EULA [End User License Agreement] (prodotti commerciali) shareware (uso di prova propedeutico all acquisto) freeware (uso gratuito) Licenze per il software libero e open source Alcune licenze per il software libero sono la GNU General Public License (GPL), la GNU Lesser General Public License (LGPL) e la WTFPL. Alcuni software sono disponibili sotto licenza artistica, licenza Apache, Licenza Mozilla Public License 2.0 (MPL) o sotto altre licenze libere o open source come le licenze BSD. Da Wikipedia, l enciclopedia libera.

La GNU General Public License (GPL) La GNU General Public License, comunemente indicata con l'acronimo GNU GPL o semplicemente GPL, è una licenza per software libero, originariamente stesa nel 1989 da Richard Stallman per distribuire i programmi creati nell'ambito del Progetto GNU della Free Software Foundation (FSF) per il progetto GNU. Essa garantisce agli utenti finali come organizzazioni, imprese o semplici individui, di utilizzare, condividere e persino modificare il software. Il GPL è una licenza copyleft, il che significa che le opere derivate possono essere distribuite solo sotto gli stessi termini di licenza. GPL è stata la prima licenza copyleft per uso generale. Da Wikipedia, l enciclopedia libera