Sistema operativo Without its software, a computer is basically a useless lump of metal.... Computer software can be roughly divided into two kinds: the system programs, which manage the operation of the computer itself, and the application programs, which solve problems for the user. The most fundamental of all the system programs is the operating system, which controls all the computer's resources and provides the base upon which the application prog.s can be written [ ed inoltre offre al'utente una macchina virtuale... ] Andrew S. Tanenbaum - Modern Operating Systems - Prentice Hall Costa --DISI 29 Sist. op. come Resource Manager Modern computers [ computer systems ] consist of processors, memories, timers, disks,..., network interfaces, laser printers,...... the job of an operating system is to provide for an orderly allocation of the processors, memories and I/O devices among the various programs competing for them. Anche su un PC piu' progammi "in competizione" es: lancio la stampa di un lungo documento controllo da web l'orario dei treni il programma di posta sorveglia arrivo messaggi... Costa --DISI 30
Sist. op. come Macchina Virtuale Usare un computer a "livello macchina" e` terrificante. Es: I/O da floppy interagendo con il controller NEC PD765 (PC IBM) 16 comandi per leggere, scrivere, muovere la testina di lettura,... i comandi READ e WRITE richiedono 13 parametri... finita l'operazione il controller risponde con 23 "messaggi" il tutto impacchettato in 7-9 bytes non basta: bisogna gestire il motore: se e` off per leggere-scrivere, va messo on (e bisogna tener conto dell'attesa...) non puo' restare on troppo tempo; si consuma il floppy... Allora: uno degli scopi del sist. op. è presentare al programmatore o all'utente una macchina piu' comoda Costa --DISI 31 Sist. op. come Macchina Virtuale 2 Presentare al programmatore di applicazioni / all'utente una macchina (virtuale) piu' comoda e sicura meccanismi (e relative istruzioni) semplici per gestire i files: creazione, copia, cancellazione,... meccanismi semplici per lanciare applicazioni (programmi) meccanismi di autenticazione degli utienti modalità d'uso e privilegi differenziati per gli utenti protezione dello "spazio privato" di un utente, di una applicazione... Costa --DISI 32
Sistemi operativi -- interfaccia utente Interazione utente - sist op : A comandi ( interazione testuale ) es MS DOS Unix-Linux "nudi" A finestre e icone ( interazione grafica, con interfacce grafiche ) es Mac OS Windows Unix-Linux "vestiti" Vediamo in pratica... Costa --DISI 33 Strati Software applicativo : esempi Ambienti di programazione Editori di testo e elaboratori di testo Fogli elettronici Agende elettroniche Gestori di Basi di Dati (solo un cenno) Applicazioni legate alla rete ( posta, WWW,...) Appl. per grafica elaborazione immagini elaborazione suoni... (non vediamo)... Costa --DISI 34
Software applicativo Dedicato a esigenze specifiche... ma non troppo Scrivere lettere articoli tesi... possibile unico strumento che si adatti Applicativi : programmi (insiemi di programmi) per un compito specifico ma con campo di azione abbastanza ampio Spesso : una certa indipendenza dalla piattaforma Costa --DISI 35 In - Dipendenza dalla Piattaforma Piattaforma! sistema operativo Word per Windows! Word per Macintosh Word per Win NON gira su un Mac L'utente pero` vede quasi lo stesso ambiente Compatibilita`: documenti prodotti con Word per Win si possono leggere e modificare con Word per Mac e... quasi...viceversa. Costa --DISI 36
Elaborazione di testi : text editor testo = file di testo = successione di caratteri inclusi "spazio", "a capo",... text-editor: scopi di base: creare, modificare, archiviare file di testo concetti di base: carattere, parola, linea e posizione corrente funzionalita` di base:! inserire / cancellare caratteri, parole,...! ricerca di carattere, parola,... poi e` stato aggiunto altro... >> es. Smultron Costa --DISI 37 Text editor e Sistema op. Apro text-editor : creo file Sist Op provvede spazio in RAM inserisco testo tutto in RAM volatile (*) salvo Sist Op provvede a copiare su HD modifico modifica solo su copia RAM (*) salvo anche copia su HD modificata eccetera... (*) se manca corrente perdo tutto cio` che non e` su HD Vale anche per word-processor, fogli elettronici... Costa --DISI 38
Elaborazione di documenti documento = testo + formattazione + immagini +... <--> 1 file / tanti file elaboratori di documenti : word processor es: Word text formatter es: TEX strumenti professionali per Desk Top Publishing Costa --DISI 39 Elaborazione di docs : funzionalita` funzionalita` di base di un text- editor + definire caratteristiche generali del documento margini, allineamento quante colonne... font stile dimensione dei caratteri spaziatura tra righe... font questo è Times (normale) questo è Helvetica (normale)!ues" # Apple Chancery $normale% stile questo è Times bold sottolineato questo è Times italic e bold dim Times a 24 punti Times a 18 punti Costa --DISI 40
Elaborazione di docs : ancora funzionalita` modificare localmente impostazioni generali supportare / gestire "automaticamente" :! capitolo, sezione, paragrafo,...! indici, sommari! note a pie` pagina! elenchi numerati... definire tabelle inserire figure, grafici, formule,... anche generate da altri strumenti controlli ortografici, sintattici,... >> Esempio Word >> Costa --DISI 41 Word processor (esempio: Word) Produco il documento scrivendo il testo "normalmente" dando comandi di formattazione tramite tasti, menu, mouse vedendo sullo schermo il risultato di stampa What You See Is What You Get senza mai vedere il formato " interno" del file (ad es. in Word e` inaccessibile!!) Costa --DISI 42
Text Formatter Es: TEX testi scientifici di matematica, fisica, informatica,... AMSTEX : standard per American Math Soc. LATEX : standard per Assoc. Computing Machinery anche formato HTML per WWW Produco il documento usando un semplice text-editor mescolando testo e direttive di formattazione NON vedendo sullo schermo il risultato di stampa avendo "pieno controllo" del file Il file viene poi passato a programma formattatore... >> es. TEX >> Costa --DISI 43