Utente:Mmo/SysOp
Il Sistema Operativo
[modifica | modifica wikitesto]Introduzione
[modifica | modifica wikitesto]A cosa serve un Ssitema Operativo?
[modifica | modifica wikitesto]Oggi siamo tutti abituati alle interfacce comode e carine di Windows, con il menu avvio nell'angolo, o con il menu Gnome in alto. Oppure siamo abituati alla possibilità di cliccare con un mouse, vedere il contenuto di CD, salvare file su un disco rigido. Sono cose che sembrano molto normali, ma sono tutt'altro che semplici. A tutto questo (più o meno) serve il sistema operativo.
Breve storia [[1]] [[2]]
[modifica | modifica wikitesto]In origine era ENIAC
[modifica | modifica wikitesto]ENIAC fu il primo computer. Sviluppato alla Università della Pennsylvania come progetto militare, era una lunga serie di armadi contenente un numero immenso (circa 18000) di elettrovalvole, che rappresentavano i dati.
Gli unici utenti, e l'unico hardware, era quello progettato dagli scienziati stessi per il loro progetto. Perciò non avevano alcuna necessità di crare un sistema per rendere "automatico" il comportamento di ENIAC. Non ci sarebbe mai stato alcun prolema causato da incompatibilità. Infatti non erano previste altre interfacce, almeno in origine, se non delle simpatiche lampadine.
La programmazione avveniva tramite dei cavi di collegamento sui pannelli, che dovevano essere ogni volta scollegati e ricollegati, ed ogni configurazione consentiva al computer di risolvere un diverso problema.
L'ENIAC venne utilizzato anche per applicazioni scientifiche. Per esempio venne utilizzato da John von Neumann per realizzare la prima previsione del tempo al computer del pianeta. In quel particolare esperimento processo 250.000 operazioni in virgola mobile in circa 24 ore e realizzo una previsione di 24 ore dai dati di ingresso.
Sia l'Utente (e sia anche un pò IBM)
[modifica | modifica wikitesto]Ben presto le grandi aziende (e fortunatamente anche varie piccole) iniziarono a vedere nell'informatica un valido investimento. Iniziarono a svilupparsi progetti per rimpicciolire le dimensioni dei computer,e per renderli più accessibili. Come per ENIAC si trattava spesso di progetti militari o comunque legati alla difesa.
Macchine come EDVAC (1949) (sempre un progetto univeristario), che occupavano solo mezza stanza, e che avevano una (a quel tempo notevole) capacità di ben 4 kByte, avevano giàiniziato a risolvere certi problemi di interazione con l'Utente. Aveva infatti un primo lettore di nastro magnetico.
IBM di lì a poco avrebbe messo in commercio il primo lettore Floppy, per i grandi dischetti da 5,25",
e pochi anni dopo, la prima stampante a matrice. La vera rivoluzione fu la nascita del primo minicomputer, un computer che invece di occupare una intera stanza, occupava solo le dimensioni di un comodino.
Questo computer, per l'argomento di cui stiamo parlando, fu veramente fondamentale. In concomitanza con il DEC PDP-8, messo in commercio nel 1964, iniziò lo sviluppo(ai Bell Laboratories) di un nuovo concetto di interazione non più mediata da lucine intermittenti e da comandi diretti al computer attraverso il linguaggio macchina, ma attraverso una vera interfaccia (diciamo che il progetto aveva altri scopi, ma fra le tante cose, portò anche a questo).
Sia la Command Line
[modifica | modifica wikitesto]Questo progetto portò nel 1974 allo sviluppo del sistema Unix e alla nascita del tuttora più diffuso linguaggio di programamzione, il C. Unix era sicuramente infinitamente più evoluto del non-sistema operativo di ENIAC (anche se non si deve mai sottovalutare la possibilità di incolpare una persona fisica). L'immensa attrattività di una vera interfaccia, anche se composta, a quel tempo, da un solo trattino lampeggiante, fu uno dei tanti motori per la diffusione di Unix e dei suoi derivati nell'informatica moderna.
Problemi di licenze fecero presto sì che si sviluppassero branche indipendenti e versioni completamente libere, diverse (e incompatibili) di Unix, ovvero BSD e Linux, oltre a versioni proprietarie a pagamento.
Sia la luce (e quindi anche le tenebre)
[modifica | modifica wikitesto]Nel 1975 e 1976 vengono fondate le due aziende che oggi rappresentano nell'immaginario collettivo l'informatica.
Apple, nel 1976, con il rilascio del molto folkloristico Apple I
. Fu il primo computer commerciale ad avere la necessità di un monitor (a quel tempo bastava un TV). Non era un computer per "pionieri". Quelli in genere erano venduti in scatole da assemblaggio. Era venduto con la scheda madre già completa e necessitava solo di tastiera e case.
L'anno prima era stata fondata la Microsoft, che in realtà era già semi-operativa da qualche anno, attraverso il lavoro "di garage" di Bill Gates e Paul Allen. Non si occupavano di Sistemi operativi (ancora), ma solo di un interessante compilatore per BASIC.
I principali sviluppi, nell'ambito informatico, sono da questo momento in poi, i modi con cui l'utente può interfacciarsi con la macchina e comunicare. Ogni release di un sistema operativo spinge in una direzione sempre più "a nascondere" quello che realmente accade nel computer. Questo nonostante l'interfaccia ancora bloccata alla console nera lampeggiante.
Microsoft nel 1980 rilascia il suo primo sistema operativo, XeniX, una versione di Unix commerciale che sei anni dopo diventerà molto più nota con il nome di SCO Unix. Il vero successo arriva, infatti, solo con DOS, nelle sue varie versioni e nomenclature che seguirono.
Nel frattempo Apple non era rimasta a guardare l'ascesa di Gates. Dopo tre versioni di Apple, c'era bisogno del grande passo.
Tasti e Topi
[modifica | modifica wikitesto]L'interazione fra uomo e macchina è da sempre stata una delle questioni fondamentali di cui l'informatica e la psicologia si sono occupati nel corso di ogni rivoluzione industriale. Molto della rivoluzioni informatica è avvenuto a Palo Alto, nel New Mexico. Lì la Xerox fondò il PARC (Palo Alto Resarch Campus) e fece varie ricerche (che portarono a buona parte delle cose finora citate). Fra le tante cose, nel lotanto 1972, un gruppo di informatici e psicologi, ebbe una brillante idea: utilizzare un sibolo comune a tutti coloro che usano un computer in un ufficio: lascrivania. [[3]] E il desktop fu la nuova killer application
E GUI fu[[4]]
[modifica | modifica wikitesto]Prendendo palesemente spunto da Alto, il desktop Xerox, nel 1984 Apple mise in commercio Apple Liza , mentre Micorsoft, stavolta copiando da Apple, nel 1985 mise in commercio Windows 1.0.
Il 1984 vede la nascita anche del progetto GNU, guidato da Richard Stallman. Dovrebbe portare allo sviluppo di un intero sistema operativo, ma una scelta di modularità fa sì che buona parte del sistema (i cosiddetti userland tools) siano pronti molto prima del sistema operativo stesso (che è tuttora in sviluppo). lo sviluppo della suite gnu non è comunque velocissimo, e si arriva addirittura al 1992 per la creazione del primo sistema operativo completamente libero. Usa i tool di GNU e un kernel sviluppato da uno studente finlandese di informatica, Linus Torvalds. Il sistema si chiama GNU/Linux.
Nel frattempo la caccia ai sistemi operativi si era esaltata con il susseguirsi rapidissimo dei rilasci di Windows 2.0, windows 3.x, Windows NT, Microsoft Bob.
Apple era entrata in crisi dopo l'usicta di scena di Steve Jobs, uno dei due fondatori. Questo aveva fondato Next, xhe proponeva il sistema operativo NextStep. Sarebbe diventato, di lì a poco il nuovo sistema operativo dei Macintosh, dopo l'acquisizione di Next da parte di Apple (e la restituzione della presidenza Applea Jobs)
E infine...
[modifica | modifica wikitesto]Poche sono le grandi variazioni che hanno subito i sistemi negli ultimi anni. Graficamente sempre simili, quelli commerciali, con scelte innovative molto originali (e per certi versi opinabili) Linux e BSD.
Certe (ormai poche)speranze nel nuovo Windows Vista, ma sarà difficile raggiungere Mac OS X.
Servizi di un sistema operativo
[modifica | modifica wikitesto]Come abbiamo visto i sistemi opertivi si sono evoluti in funzione di due dati: la potenza di calcolo delle macchine, ela qantità di interazione necessaria con l'utente. Ma cosa è veramete, internamente un sistema operativo?
Kernel
[modifica | modifica wikitesto]Il kernel è la parte fondamentale delssitema operativo. E' quello che viene caricato alla partenza dopo il BIOS(la schermata nera con tutti tutti i dati del computer)
System API
[modifica | modifica wikitesto]La System API è l'insieme di funzioni offerte dal sistema operativo per l'esecuzione di programmi al suo interno. Possono essere funzioni veramente di base, come quella che permette l'inzio vero e proprio dell'esecuzione di ogni programma, o funzioni più di livello alto, come quella che in Windows permette di creare la finestra.
File System
[modifica | modifica wikitesto]il sistema operativo deve rendere possibili due operazioni fondamentali: lettura e scrittura di file. Per questo deve usare degli algoritmi che non cambiano di file in file. Per questo si fa uso dei File System, ovvero di protocolli di scrittura e accesso ai file.
Nei sistemi Windows moderni i più diffusi sono FAT32 e NTFS. Se non parliamo di sistemi windows, si possono trovare ext2, ext3 o ReiserFS (o anche, se vogliamo farci del male, UFS)
Che differenza c'è, e perchè è importante il filesystem?
[modifica | modifica wikitesto]NTFS è un sistema di gestione file proprietario di Microsoft. Viene gestito senza problemi solo da Windows XP e successivi (SP1, SP2, 2000, ...). si basa sul montaggi di una partizione che può contenere dati compressi (poco) e crittografati (male). Lo scopo della sua creazione fu quello di contrastare la crescente richiesta di una vera gestione degli utenti (alla maniera dei sistemi Unix)
FAT deriva il suo nome da "File Allocation Table", che è una tabella nella quale vengono salvati i punti di inizio dei vari file nel disco rigido. Ha serissimi problemi di frammentazione.
Gestione
[modifica | modifica wikitesto]Ricerca dei File
[modifica | modifica wikitesto]Nei sistemi Windows si può trovare (con XP) l'ultimo residuo di MS Bob ad aiutarci nella ricerca dei file.
In Linux ci sono tante possibilità. La più recente, ma non ancora molto diffusa, è Beagle, mentre se si vuole fare una ricerca anche in riga di comando basta il semplice "find". La funzione di ricerca è comunque integrata nel file browser predefinito Nautilus o nella nuova HUD della distribuzione più popolare di linux, Ubuntu, che non si limita a cercare solo nel proprio computer ma soprattutto a cercare contenuti multimediali nel web.