ANNUNCI Testo di Ciotti: messo versione PDF sul sito (e su didattica online) FAQ: come fare la tilde (~, ASCII 126) su tastiere italiane: ALT + 126 (su.

Slides:



Advertisements
Presentazioni simili
1 Introduzione ai calcolatori Parte II Software di base.
Advertisements

Linguaggi di programmazione
Gestione della memoria centrale
Il Sistema Operativo Il Sistema Operativo fa parte del software di base; e` costituito da un insieme di programmi che interagiscono e cooperano per: gestire.
STRUTTURA DEL PERSONAL COMPUTER
INFORMATICA Trattamento automatizzato dellinformazione.
Ogni PC, per iniziare a lavorare, ha bisogno di un sistema operativo. Infatti questo è il primo programma che viene eseguito e che permette all'utente.
Elaboratore e Sistemi Operativo
Informatica giuridica Hardware e software: glossario Lucio Maggio Anno Accademico 2000/2001.
Sistemi operativi. Informatica 1 SCICO - a.a. 2010/11 2 Insieme di programmi per gestire le risorse del calcolatore – Risorse: memoria di massa, tastiera.
Il Software: Obiettivi Programmare direttamente la macchina hardware è molto difficile: lutente dovrebbe conoscere lorganizzazione fisica del computer.
I file l I File sono l unità base di informazione nellinterazione tra utente e sistema operativo l Un file e costituito da un insieme di byte attinenti.
FONDAMENTI DI INFORMATICA
Introduzione allinformatica. Cosè linformatica ? Scienza della rappresentazione e dellelaborazione dellinformazione ovvero Studio degli algoritmi che.
Università degli Studi di Bergamo Facoltà di Lingue e Letterature Straniere Facoltà di Lettere e Filosofia A.A Informatica generale 1 Appunti.
1 Corso di Informatica (Programmazione) Lezione 4 (24 ottobre 2008) Architettura del calcolatore: la macchina di Von Neumann.
Le prestazioni (velocità) di un singolo disco sono limitate dalla tecnologia usata, -per aumentare le prestazioni si può pensare di far operare in parallelo.
SOFTWARE Lhardware è la parte che si può prendere a calci; il software quella contro cui si può solo imprecare. SOFTWARE E linsieme dei dati e dei programmi.
Struttura dei sistemi operativi (panoramica)
ANNUNCI Ricevimento Poesio Normalmente: lunedi 16-18, a Povo, SOLO SU APPUNTAMENTO Fino a Maggio: lunedi e venerdi dopo lezione RICORDATEVI: La prossima.
Software di base Il sistema operativo è un insieme di programmi che opera sul livello macchina e offre funzionalità di alto livello Es.organizzazione dei.
Linguaggi di programmazione
Introduzione Cosa è un Sistema Operativo ?
Windows Sistema operativo con interfaccia grafica per PC IBM compatibili (varie versioni dal 95) La gestione dei file viene fatta secondo le modalità.
SOFTWARE I componenti fisici del calcolatore (unità centrale e periferiche) costituiscono il cosiddetto Hardware (alla lettera, ferramenta). La struttura.
Informatica giuridica Hardware e software: glossario Lucio Maggio Anno Accademico 2001/2002.
I SISTEMI OPERATIVI.
INTRODUZIONE l sistema operativo è il primo software che lutente utilizza quando accende il computer; 1)Viene caricato nella memoria RAM con loperazione.
Il Software Una programmazione diretta della macchina hardware da parte degli utenti è molto difficile: lutente dovrebbe conoscere lorganizzazione fisica.
STRUTTURA GENERALE DI UN ELABORATORE
L' ARCHITETTURA DI VON NEUMANN
Il computer: struttura fisica e struttura logica
Software e sistema operativo 19-22/5/08 Informatica applicata B Cristina Bosco.
Concetti di base sul Software dei PC Unitre Anno
Architettura del calcolatore
Il Sistema Operativo (1)
Il Sistema Operativo: il File System
MS-DOS è il sistema operativo, Come praticamente tutti i sistemi operativi per i computer del periodo, l'MS- DOS era un sistema operativo mono utente.
Informatica Lezione 4 Scienze e tecniche psicologiche dello sviluppo e dell'educazione Anno accademico:
Il Software Programmare direttamente la macchina hardware è molto difficile: l’utente dovrebbe conoscere l’organizzazione fisica del computer e il suo.
1 Nomi di Unità n I sistemi sono dotati di più unità di memoria n DOS e Windows usano nomi di unità per distinguerle n In UNIX la gestione è trasparente.
1 Il Sistema Operativo: Esempio n Le operazioni effettuate sembrano abbastanza semplici ma … n Provocano una serie di eventi in cui vengono coinvolte sia.
Corso di Informatica Corso di Laurea in Conservazione e Restauro dei Beni Culturali Gianluca Torta Dipartimento di Informatica Tel: Mail:
(processore, i dispositivi di input/output, ecc.)
Il Sistema Operativo Il Sistema Operativo è costituito dall’insieme dei programmi necessari per far funzionare tutto l’hardware del calcolatore e per nascondere.
Informatica Lezione 8 Scienze e tecniche psicologiche dello sviluppo e dell'educazione (laurea triennale) Anno accademico:
INTERFACCE Schede elettroniche che permettono al calcolatore di comunicare con le periferiche, che possono essere progettate e costruite in modo molto.
Informatica Lezione 5 Scienze e tecniche psicologiche dello sviluppo e dell'educazione (laurea triennale) Anno accademico:
Corsi di Laurea in Biotecnologie
Circuiti logici.
Tecnologie Informatiche ed Elettroniche per le Produzioni Animali (corso TIE) CORSO LAUREA MAGISTRALE IN SCIENZE E TECNOLOGIE DELLE PRODUZIONI ANIMALI.
I FILE I File sono l’ unità base di informazione nell’interazione tra utente e sistema operativo I File sono l’ unità base di informazione nell’interazione.
Introduzione Cos’è un sistema operativo ?. Hardware Sistema Operativo Applicazioni È il livello di SW con cui interagisce l’utente e comprende programmi.
Informatica Lezione 8 Scienze e tecniche psicologiche dello sviluppo e dell'educazione Anno accademico:
Il software Componente del computer costituita dai: –programmi di base per la gestione del sistema –programmi applicativi per l’uso del sistema Queste.
Sistema operativo Il sistema operativo è un insieme di programmi che gestiscono tutte le componenti hardware e software di un calcolatore. Spesso si può.
Sistemi operativi di rete Ing. A. Stile – Ing. L. Marchesano – 1/18.
Fondamenti di Informatica Laurea in Ingegneria Civile e Ingegneria per l’ambiente e il territorio Il software di base Stefano Cagnoni e Monica Mordonini.
Informatica Lezione 7 Psicologia dello sviluppo e dell'educazione (laurea magistrale) Anno accademico:
Informatica Lezione 6 Psicologia dello sviluppo e dell'educazione (laurea magistrale) Anno accademico:
Corso di Laurea in Biotecnologie corso di Informatica Paolo Mereghetti DISCo – Dipartimento di Informatica, Sistemistica e Comunicazione.
Concetti di base Computer, HW e SW
Informatica Lezione 8 Scienze e tecniche psicologiche dello sviluppo e dell'educazione (laurea triennale) Anno accademico:
NANDNOR A BA NAND B falso vero falso vero vero vero falso vero falso A BA NOR B falso vero falso vero falso vero falso falso vero falso
Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.
3  L’hardware da solo non è sufficiente per il funzionamento dell’elaboratore ma è necessario introdurre il software  … ovvero un insieme di programmi.
I Sistemi Operativi. Definizione Per Sistemi Operativi (di seguito SO) si intendono quei pacchetti software, a loro volta costituiti da più sottoprogrammi.
Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.
Struttura del Computer
I L SO MS DOS … una breve guida…. C OS ’ È UN S ISTEMA OPERATIVO Un sistema operativo (SO) è un insieme di programmi che agisce come intermediario tra.
Transcript della presentazione:

ANNUNCI Testo di Ciotti: messo versione PDF sul sito (e su didattica online) FAQ: come fare la tilde (~, ASCII 126) su tastiere italiane: ALT + 126 (su tastierino numerico od usando NUM LOCK) http://www.dit.unitn.it/~poesio/Teach/IU: piano delle lezioni di Informatica Umanistica D online.

INFORMATICA UMANISTICA B 4: CIRCUITI LOGICI E SOFTWARE DI SISTEMA

UNITA’ CENTRALE: LA MEMORIA PRINCIPALE

ALU E CIRCUITI LOGICI I CIRCUITI LOGICI sono la base dell’hardware di un calcolatore L’ Unita’ aritmetico / logica (ALU), e’ prevalentemente composta di circuiti di questo tipo Questi circuiti sono costituiti da un gran numero di componenti piu’ semplici

OPERAZIONI BINARIE Useremo il termine ‘OPERAZIONE BINARIA’ in modo generico per riferirsi ad ogni funzione che specifica un valore di OUTPUT 0 od 1 sulla base di 1 o piu’ valori di INPUT Queste operazioni binarie possono essere specificate da TABELLE Esempio piu’ noto di operazione binaria: OPERAZIONI LOGICHE

OPERAZIONI LOGICHE ELEMENTARI: AND, OR, NOT A B A AND B falso falso falso falso vero vero falso vero vero vero A B A OR B falso falso falso falso vero vero vero falso vero vero A NOT A falso vero 0 1 1 1 1 1 0 0 0 R A B 1 0 1 1 1 1 0 0 0 R A B 1 R A

CIRCUITI ELEMENTARI: AND, OR, NOT 0 1 1 1 1 1 0 0 0 R A B A

DALLE TABELLE DI VERITA’ AI CIRCUITI Tanti input quante sono le dimensioni della tabella Un solo output Un or all’output Tanti and quanti sono gli 1 della tabella Input degli and: 1 se diretto, 0 se negato A B A  B 0 0 0 1 1 1 0 1 1

NAND E NOR Per realizzare tutte le operazioni binarie non servono tre operazioni (and, or, not) Basta una tra : nand (not and) e nor (not or)

NAND NOR A B A NAND B falso falso vero falso vero vero falso vero vero A NOR B falso falso vero falso vero falso vero falso vero vero 1 0 1 1 1 1 0 0 0 R A B

CIRCUITI ARITMETICI 0111002 + 1001112 = ----------- 10000112 28 + 39 = Somma: Colonna per colonna, da destra a sinistra Riporto se la somma su una colonna supera la base Tre cifre binarie (prima riga, seconda riga, riporto), somma =1 se una o tre sono 1, riporto = 1 se almeno due sono 1 Riporto: 1 1 1 1 0 0 0111002 + 1001112 = ----------- 10000112 28 + 39 = ----------- 67

Somma binaria 1010011+ 1100011= ----------- 10110110 1 11 riporti 1010011+ 1100011= ----------- 10110110 Si vuole costruire un circuito per sommare due numeri binari Iniziamo con un circuito che faccia la somma su di una colonna

Somma di numeri di 4 bits risultato 0 riporto iniziale Riporto finale 1-add 1-add 1-add 1-add risultato

Vogliamo un circuito che con input due bit corrispondenti ed il riporto precedente calcola la loro somma ed il nuovo riporto. x y R 1-ADD R' S

3 input 2 output 2 bit da sommare riporto riporto per la prossima colonna 1-ADD risultato su questa colonna 2 output

Il circuito comprende due sottocircuiti: 1-ADD riporto somma

La somma S è 1 se tutti e tre i bit in input sono 1 oppure solo uno di essi è 1. Questo si esprime con la formula logica: S = {[(X AND Y) AND R] OR [X AND (Y NOR R)]} OR {[Y AND (X NOR R)] OR [R AND (X NOR Y)]}

Il nuovo riporto R' è 1 se almeno due bit in input sono 1. Questo si esprime con la formula logica: R' = [(X AND Y) OR (X AND R)] OR (Y AND R)

TABELLE DI VERITÁ 00 01 10 11 0 1 1 0 0 1 Somma S 1 0 0 1 00 01 10 11 bit da sommare 00 01 10 11 0 1 1 0 0 1 Somma S riporto 1 0 0 1 00 01 10 11 0 0 0 1 0 1 Riporto R 0 1 1 1

SOMME COME CIRCUITI

Somma di numeri di 4 bits risultato 0 riporto iniziale Riporto finale 1-add 1-add 1-add 1-add risultato

Componendo 6 circuiti ADD si ottiene il circuito x0 ADD R y0 s0 x1 y1 s1 x2 y2 s2 x3 y3 s3 x4 y4 s4 x5 y5 s5 Che calcola la somma di due numeri di 6 bit

HARDWARE E SOFTWARE Fino a qui, abbiamo parlato soprattutto di componenti fisiche del computer, il cosiddetto hardware •Sappiamo però che il funzionamento di un computer non dipende solo dall’ hardware ma anche, e in maniera determinante, dai programmi che il computer è in grado di eseguire, il cosiddetto software

CHE COSA IL SOFTWARE FA PER VOI

TRE TIPI DI SOFTWARE Software APPLICATIVO: programmi che permettono di svolgere funzioni VIDEOGIOCHI, WORD PROCESSING, DATABASE, POSTA ELETTRONICA Programmi utente veri e propri Software DI SISTEMA: controlla l’hardware, gestisce l’interfaccia con utente, coordina le applicazioni SISTEMA OPERATIVO, INTERFACCIA RETE

IL SOFTWARE DI SISTEMA Una programmazione diretta della macchina hardware da parte degli utenti creerebbe delle serie difficoltà

IL SOFTWARE DI SISTEMA LOAD 32 R2 ADD R1 84 Una programmazione diretta della macchina hardware da parte degli utenti creerebbe delle serie difficoltà L’utente dovrebbe conoscere l’organizzazione fisica dell’elaboratore e il suo linguaggio macchina

IL SOFTWARE DI SISTEMA Una programmazione diretta della macchina hardware da parte degli utenti creerebbe delle serie difficoltà L’utente dovrebbe conoscere l’organizzazione fisica dell’elaboratore e il suo linguaggio macchina Ogni programma dovrebbe essere scritto utilizzando delle sequenze di bit ed ogni piccola differenza hardware comporterebbe una riscrittura del programma stesso

IL SOFTWARE DI SISTEMA È necessario fornire un meccanismo per astrarre dall’organizzazione fisica della macchina L’utente deve: usare nello stesso modo (o comunque in un modo molto simile) macchine diverse dal punto di vista hardware avere un semplice linguaggio di interazione con la macchina avere un insieme di programmi applicativi per svolgere compiti diversi

LA MACCHINA VIRTUALE Nei moderni sistemi di elaborazione questi obiettivi vengono raggiunti grazie alla definizione di macchine virtuali che vengono realizzate al di sopra della macchina hardware reale 011100010111010101000011110 Hardware Macchina virtuale (software) Utente

LA MACCHINA VIRTUALE Questa macchina si dice virtuale in quanto essa non esiste fisicamente Il SOFTWARE DI SISTEMA opera un’ASTRAZIONE mettendo a disposizione dell’utente (programmatore) un set di operazioni PIU’ RICCO di quello definito dall’hardware (o dai livelli di software di sistema inferiori) Quest’operazione di astrazione puo’ essere ripetuta piu’ volte

ESEMPI DI ISTRUZIONI ‘VIRTUALI’ STAMPA CARATTERE A Eseguire questa istruzione richiede mettere carattere A in un’area speciale (‘print buffer’), inviare un segnale alla stampante che c’e’ dell’input, aspettare che la stampante abbia finito e controllare che tutto abbia funzionato OK APRI DOCUMENTO B Un `documento’ é semplicemente una lista di blocchi su tracce possibilmente diverese del disco

DAI LINGUAGGI DI PROGRAMMAZIONE AL LINGUAGGIO MACCHINA Ogni computer ha un linguaggio macchina … le cui istruzioni sono direttamente eseguibili dalla macchina hardware Al di sopra di questo linguaggio è possibile definire altri linguaggi … e fornire delle regole per tradurne le istruzioni in opportune sequenze di istruzioni in linguaggio macchina

STRUTTURA A CIPOLLA Hardware + software formano un insieme di livelli, che formano la cosi detta “struttura a cipolla” Idealmente l’utente ad un livello è ignaro di tutti i dettagli delle operazioni svolte dai livelli inferiori della gerarchia e conosce solo le operazioni del livello più alto

SISTEMA OPERATIVO Il sistema operativo e’ il software che gestisce ed interagisce direttamente con il computer, presentando a tutti gli altri tipi di software un’interfaccia che astrae dalle caratteristiche dell’hardware specifico. Esempi: Windows XP, Unix (Linux, Sistem X Apple), etc.

Funzioni principali del sistema operativo Avvio del computer Gestione del processore e dei programmi in esecuzione (detti processi) Gestione della memoria principale Gestione della memoria virtuale Gestione della memoria secondaria Gestione dei dispositivi di input/output Interazione con l’utente

LA STRUTTURA A CIPOLLA DEL SISTEMA OPERATIVO 011100010111010101000011110 Hardware Utente Avvio Gestione: i processi, la memoria, i disp. di input/output Interfaccia utente

Funzioni principali del sistema operativo Avvio del computer Gestione del processore e dei programmi in esecuzione (detti processi) Gestione della memoria principale Gestione della memoria virtuale Gestione della memoria secondaria Gestione dei dispositivi di input/output Interazione con l’utente

Avvio dell’elaboratore Il sistema operativo viene mandato in esecuzione al momento dell’accensione del computer Questa fase prende il nome di bootstrap In questa fase una parte del sistema operativo viene caricata nella memoria principale

Avvio dell’elaboratore In genere questa parte del sistema operativo comprende: I programmi per la gestione del processore I programmi per la gestione della memoria I programmi per la gestione dell’input/output I programmi per la gestione delle risorse hardware I programma per la gestione del file system Un programma che crea l’interfaccia verso l’utente

Avvio dell’elaboratore Una parte del sistema operativo deve essere sempre mantenuta in memoria principale e deve essere sempre pronta per l’esecuzione 1 2 S.O. 3 4 5 spazio utente N

Avvio dell’elaboratore (i virus) Spesso durante questa fase sono eseguiti anche dei programmi che verificano l’eventuale presenza di virus sul disco dell’elaboratore I virus può danneggiare il funzionamento dell’elaboratore Possono essere trasmessi da un elaboratore ad un altro quando si copiano dei programmi oppure quando si salvano degli allegati dalla casella di posta elettronica

ESEMPIO: WINDOWS XP BIOS esegue PowerOnSelfTest (POST) Controlla che video card funzioni Controlla se reboot o ‘cold boot’. Se cold boot, controlla RAM, bus, tastiera, mouse Carica i drivers speciali Fa partire BOOSTRAP LOADER BOOTSTRAP LOADER: Carica sistema operativo in memoria Lo fa partire

Funzioni principali del sistema operativo Avvio del computer Gestione del processore e dei programmi in esecuzione (detti processi) Gestione della memoria principale Gestione della memoria virtuale Gestione della memoria secondaria Gestione dei dispositivi di input/output Interazione con l’utente

Esecuzione dei programmi Quando si scrive un comando (oppure si clicca sull’icona di un programma) …. C:> print foo1.doc C:> oppure

Esecuzione dei programmi Quando si scrive un comando (oppure si clicca sull’icona di un programma), il sistema operativo: Cerca il programma corrispondente sulla memoria secondaria Copia il programma in memoria principale … Processore Memoria principale Stampante Memoria secondaria

Esecuzione dei programmi Quando si scrive un comando (oppure si clicca sull’icona di un programma), il sistema operativo: Cerca il programma corrispondente sulla memoria secondaria Copia il programma in memoria principale Imposta il registro Program Counter con l’indirizzo in memoria principale della prima istruzione del programma

Sistemi mono-utente, mono-programmati Un solo utente può eseguire un solo programma alla volta È forzato a “sequenzializzare” i programmi Il programma viene lanciato, eseguito e quindi terminato Ma il processore viene sfruttato al meglio?

Sistemi mono-utente, mono-programmati No, il processore non viene sfruttato al meglio: si spreca molto tempo Il processore è molto più veloce dei supporti di memoria secondaria e delle altre periferiche Passa la maggior parte del suo tempo in attesa Durante l’attesa si dice che il processore è un uno stato inattivo (idle)

Esempio 1 Un processo è costituito da 1000=103 istruzioni Ogni istruzione richiede 10-6 secondi per essere eseguita dal processore Tempo totale di esecuzione: 103 * 10-6 = 10-3 = 1 millisecondo A metà esecuzione è richiesta la lettura di un dato dal disco. Il tempo di lettura è 1 millisecondo Tempo totale di esecuzione = 2 millisecondi Idle time = 1 millisecondo: 50% del tempo totale di esecuzione è tempo sprecato

Esempio 2 Un processo è costituito da 1000=103 istruzioni Ogni istruzione richiede 10-6 secondi per essere eseguita dal processore Tempo totale di esecuzione: 103 * 10-6 = 10-3 = 1 millisecondo A metà esecuzione è richiesta un dato al’utente. Il tempo di reazione è 1 secondo Tempo totale dell’esecuzione = 1001 millisecondi Idle time = 1 secondo: 99,9% del tempo totale di esecuzione è tempo sprecato

Esecuzione sequenziale Processo P1 Processo P2 inizio fine inizio fine in attesa esecuzione Processore attivo idle

Esecuzione sequenziale Supponiamo che il nostro sistema sia un bar in cui il barista serve diversi clienti Il barista è corrispondente del processore, i clienti sono l’equivalente dei processi da eseguire Esecuzione mono-programmati: Client 1 Client 2 Ordinare Preparare il caffé Consumare Ordinare Preparare il caffé Consumare Pagare Pagare

Soluzione In realtà: Client 1 Client 2 Ordinare (C1) Ordinare (C2) Pagare (C1) Preparare il caffé (C1) Preparare il caffé (C2) Pagare (C2)

Soluzione: sistemi multiprogrammati Quando il processore è nello stato di idle può eseguire (parte di) un altro processo Quando un processo si ferma (per esempio in attesa di un dato dall’utente) il processore può passare ad eseguire le istruzione di un altro processo Il sistema operativo si occupa dell’alternanza tra i processi in esecuzione

Funzioni principali del sistema operativo Avvio del computer Gestione del processore e dei processi Gestione della memoria principale Gestione della memoria virtuale Gestione della memoria secondaria Gestione dei dispositivi di input/output Interazione con l’utente

IL FILE SYSTEM

Gestione della memoria secondaria La memoria secondaria serve per memorizzare programmi e dati in modo permanente Il file system: quella parte del sistema operativo che si occupa di gestire e strutturare le informazioni memorizzate sulla memoria secondaria Processore Memoria principale Stampante Memoria secondaria

Consigli: è meglio usare nomi significativi Il file system I file vengono utilizzati come supporto per la memorizzazione dei programmi e dei dati Un file può corrispondere ad un programma, o ad un insieme di dati omogenee Diversi tipi di file contengono diversi tipi di informazione Un file deve avere un nome logico Consigli: è meglio usare nomi significativi mio.doc, a.txt tesi.doc, inf9.ppt

Il file system I file vengono utilizzati come supporto per la memorizzazione dei programmi e dei dati Un file può corrispondere ad un programma, o ad un insieme di dati omogenee Diversi tipi di file contengono diversi tipi di informazione Un file deve avere un nome logico Consigli: è meglio non usare caratteri speciali e lo spazio bianco prima pagina.html, mia foto.jpg index.html, montagne.gif

Esempi: .doc .txt .html .jpg .gif .pdf Il file system Un file ha anche una estensione Esempi: .doc .txt .html .jpg .gif .pdf Le estensioni sono importanti perché di solito indicano il tipo del file (quindi danno informazioni sul programma applicativo in grado di manipolarlo)

Il file system Mediante il file system il sistema operativo fornisce una visione astratta dei file su disco Utente 011100010111010101000011110 Hardware Avvio Gestione: i processi, la memoria, i disp. di input/output Interfaccia utente

Il file system Il file system permette all’utente di: Identificare ogni file mediante il suo nome Operare sui file mediante opportune operazioni Effettuare l’accesso alle informazioni grazie ad operazione di alto livello, che non tengono conto del tipo di memorizzazione Per esempio, si deve accedere allo stesso modo ad un file memorizzato sul disco rigido oppure su un CD-ROM …

Il file system Il file system permette all’utente di: … Strutturare i file, organizzandoli in sottoinsiemi secondo le loro caratteristiche, per avere una visione “ordinata” e strutturata delle informazioni sul disco Proteggere i propri file in un sistema multi-utente, ossia per impedire ad altri utenti di leggerli, scriverli o cancellarli

Il file system Un insieme di operazioni minimale: Creazione di un file Cancellazione di un file Copia o spostamento di un file Visualizzazione del contenuto di un file Stampa di un file Modifica del contenuto di un file Rinomina di un file Visualizzazione delle caratteristiche di un file

Organizzazione gerarchica dei file Il numero di file che devono essere memorizzati su un disco può essere molto elevato Si ha quindi la necessità di mantenere i file in una forma ordinata Un unico spazio (“contenitore”) di file è scomodo La scelta dei nomi diventa difficile perché non è possibile avere due file con lo stesso nome nella stessa contenitore Le operazioni di ricerca dei file diventano onerose

Organizzazione gerarchica dei file L’idea è quella di raggruppare i file in sottoinsiemi Questi sottoinsiemi di file vengono memorizzati all’interno di contenitori dette cartelle (directory) I nomi dei file sono locali alle directory Si possono avere due file con lo stesso nome perché siano in due directory diverse

Organizzazione gerarchica dei file Per organizzare gerarchicamente i file, il sistema operativo deve fornire all'utente un insieme di operazioni per: creare una nuova directory rimuovere una directory rinominare una directory elencare il contenuto di una directory copiare o spostare i file da una directory ad un'altra

Organizzazione gerarchica dei file I computer sono dotati di più unità di memoria secondaria, per esempio: Unità per floppy disk: A Unità per disco fisso: C Unità per CD-ROM: D DOS e Windows usano dei nomi per distinguere le unità

Organizzazione gerarchica dei file radice dell’albero Photoshop.exe Applicazioni Elab_imm Premiere.exe Elab_testi Winword.exe libro1.pdf foglie Narrativa-Fra libro2.pdf A: Biblioteca Narrativa-Ing libro1.pdf libro1.pdf Narrativa-Ita libro2.pdf Bianchi … Utenti Rossi … Questa struttura viene chiamata albero Pautasso … Indice

FUNZIONI DEL SISTEMA OPERATIVO, III: INTERFACCIA UTENTE

INTERFACCE TESTUALI MS-DOS, Unix shell, Linux shell Lavorando con una interfaccia testuale i comandi vengono impartiti mediante la tastiera Ogni comando ha un suo nome e una sintassi ben precisa C:> print foo1.doc Can’t find file foo1.doc C:> prompt

ESEMPI DI COMANDI MS-DOS Date Dir Copy Del Help … UNIX-Linux Date Ls Cp Rm Man …

Linguaggio di comandi (interfaccia testuale) C:> print foo1.doc Can’t find file foo1.doc C:> Dai il messaggio di prompt all’utente Quando arriva il comando, riconoscilo Se è corretto, esegui l’azione corrispondente Se è errato, dai un messaggio di errore Al termine dell’operazione, torna all’inizio

INTERFACCIE GRAFICHE Nei calcolatori con interfaccia grafica molti comandi sono impartiti mediante l’interazione attraverso il mouse Cioè il clic (il doppia clic, …) del mouse su un’icona viene tradotto in una opportuna sequenza di istruzioni che il computer esegue per soddisfare la richiesta dell’utente

COMPILATORI ED INTERPRETI Linguaggi: Di basso livello Di alto livello I linguaggi ad alto livello devono essere trasformati in un linguaggio comprensibile alla macchina: Interpretati: ogni istruzione viene eseguita da un programma interprete a richiesta dell’utente (basic) Compilati: le istruzioni vengono tradotte tutte insieme da un programma compilatore che genera un codice eseguibile che il computer processa direttamente (c, cobol, ecc.)

STORIA DEI SISTEMI OPERATIVI Prima generazione: 1945 - 1955 valvole Seconda generazione: 1955 - 1965 transistors, sistemi ‘batch’ Terza generazione: 1965 – 1980 Circuiti integrati, multiprogramming Quarta generazione: 1980 – oggi personal computers, interfacce grafiche

SISTEMI BATCH Early batch system bring cards to 1401 read cards to tape put tape on 7094 which does computing put tape on 1401 which prints output

SISTEMI BATCH Struttura di un tipico Fortran Monitor System job

PRIMI SISTEMI OPERATIVI MULTI-TASKING CTSS (Compatible Time Sharing System - 1962) MULTICS (MULTIplexed Information and Computing Service - 1965) UNIX (1969)

SISTEMI OPERATIVI PER PC MS-DOS (MicroSoft Disk Operating System -1980) Apple Mac: primo sistema operativo ad utilizzare il nuovo tipo di interfaccia a finestre sviluppato da Xerox Windows (1985) Windows 95, Windows 98, Windows Me Windows NT, Windows 2000 (5th version of NT), Windows XP UNIX per PC: Minix (1987) Linux (1994)

INTERFACCE SU RETE E WEB A partire dal 1980 una componente essenziale del sistema operativo Lezione 6

WINDOWS

LETTURE Ciotti & Roncaglia cap. 3