Sistemi operativi

« Older   Newer »
 
  Share  
.
  1. Massimiliano Varrese fc
        +1   -1
     
    .

    User deleted





    Sistemi operativi




    Sistemi Operativi I sistemi operativi costituiscono l’interfaccia tra la macchina e l’utente, hanno lo scopo di gestire le risorse del sistema di elaborazione e coordinare gli eventi che discendono dal suo uso.
    L’evoluzione dei sistemi operativi inizia negli anni ’40 con l’avvento dei primi elaboratori elettronici, erano composti da poche istruzioni per poter permettere l’utilizzo del computer da parte dell’operatore-programmatore e il trasferimento da un lavoro all’altro senza il suo intervento tramite sequenzializzatori automatici.
    Negli anni ’50 grazie all’avvento di linguaggi più evoluti (come ad esempio il Fortran) si comincia a parlare di elaborazione BATCH, al sistema operativo viene cioè fornito un unico lotto di istruzioni per l’esecuzione di più lavori che vengono eseguiti singolarmente in sequenza. Grazie a questa innovazione aumentò la velocità produttiva dei computer. Negli anni successivi si svilupparono sistemi operativi di nuova concezione i quali permisero l’utilizzo del computer durante l’elaborazione (INTERATTIVITA’) e la divisione del tempo d’uso delle risorse da parte di più utenti (TIME SHARING). Si inizia a parlare anche di sistemi REAL TIME in cui cioè i tempi di risposta sono tali da riuscire ad influenzare un processo durante la sua stessa esecuzione.
    Dagli anni ’70 la diffusione di massa degli elaboratori elettronici richiese la standardizzazione dei sistemi operativi e la loro compatibilità con i prodotti software specifici per ogni attività.
    Negli ultimi anni i sistemi operativi sono stati progettati per essere in grado di gestire una immensa quantità di dati soprattutto a causa delle innovazioni multimediali riguardanti suoni, immagini, testi….
    Il sistema operativo si occupa oggi di tutte le risorse presenti nel computer intervenendo sia a livello del software che dell’hardware, partendo quindi dai programmi passando alla CPU, alla memoria, ai supporti magnetici e per finire alla gestione di tutte le iterazioni tra queste componenti attraverso procedimenti ben definiti che ne permettono l’utilizzo, il controllo, la protezione, l’espansione….
    I sistemi operativi di ultima generazione più diffusi sono:

    • DOS/WINDOWS
    • OS/2
    • UNIX
    • LYNUX
    Il sistema operativo Ms-Dos progettato inizialmente dalla Microsoft venne adottato quasi subito come standard per i personal computer.
    E' un sistema monoutente che si compone di due insiemi di istruzioni: i comandi interni sempre residenti in memoria dopo il caricamento automatico che segue l'accensione ed i comandi esterni che vengono caricati a richiesta dell'utente tramite un comando.
    E' possibile lavorare anche in modo batch tramite un file in cui vengono inserite una serie di comandi che verranno eseguiti solo con il caricamento del file.
    Il sistema operativo si compone di tre moduli principali:

    • modulo DOS (Disk Operating System): si occupa della gestione dei dischi e fornisce all'utente  una interfaccia logica per la gestione logica dei file disco;
    • modulo BIOS (Basic Input Output System): provvede alla gestione dell' input/output;
    • modulo Command: serve per l'interpretazione e l'esecuzione dei comandi, rappresenta quindi l'interfaccia tra l'utente ed il sistema operativo.

    Nelle ultime versioni (dalla 5.0 in poi) DOS ha risposto alla richiesta dei produttori software di poter gestire più memoria senza troppi artifici e senza sacrificare memoria convenzionale, ha permesso di eseguire un nuovo programma dopo avere "congelato" gli altri in corso di escuzione permettendo (funzione multitasking) di recuperare i file cancellati.
    Il sistema operativo DOS non è però in grado di  fornire una reale funzione di multitask cioè  l'esecuzione contemporanea di più programmi e una interfaccia grafica di più immediato accesso, funzioni raggiunte solo dalle versioni più recenti di Windows che si può considerare l'evoluzione del DOS.

    MS-DOS

     




    Microsoft Windows Diffusissima famiglia di sistemi operativi grafici sviluppati nel corso degli anni dalla Microsoft, basati su un "piano di lavoro" (desktop) organizzato in finestre (windows) all'interno delle quali aprire programmi e conservare oggetti e documenti. Al momento, circa l'80% dei personal computer adotta un sistema operativo Microsoft Windows.
    Fra le principali versioni di Windows, ricordiamo l'ormai superato Windows 3.1 (con la variante Windows for Workgroups, capace di gestire la multiutenza), e i più recenti Windows 95 e 98. Windows è fortemente integrato con Internet, anche attraverso la trasformazione dei programmi di navigazione in componenti del sistema operativo.
    La versione professionale di Windows, inizialmente battezzata Windows NT, è giunta alla quinta versione, denominata Windows 2000, che permette di creare reti di computer che sfruttano i protocolli e gli strumenti di comunicazione di Internet. Questo gli permette di gestire la multiutenza in maniera assai sofisticata, dividendo gli utenti in categorie a seconda delle quali possono o meno accedere alle risorse del sistema.
    Di Windows esiste anche una versione ridotta, adatta a computer palmari o dispositivi portatili (autoradio, cellulari), denominata Windows CE
    .
    II sistema operativo adottato dai computer Macintosh è stato il primo esempio di sistema operativo grafico a conoscere una larga diffusione a livello di personal computer, ben prima che la Microsoft distribuisse le prime versioni di Windows. Le soluzioni tecniche adottate dal MAC OS sono state sempre all'avanguardia, soprattutto nel campo della facilità d'uso della interfaccia utente, e sono state premiate da una larga diffusione dei Macintosh nei settori "di punta" come quello della grafica professionale. Tuttavia il gap di diffusione fra il numero di computer Macintosh e quello, ben maggiore, dei computer IBM compatibili basati su versioni del sistema operativo Windows è andato crescendo negli ultimi anni.
    MAC OS

     




    OS/2 Sistema operativo grafico sviluppato a partire dalla fine degli anni '80 dall'IBM, all'inizio in collaborazione, ma ben presto in concorrenza con i sistemi Microsoft Windows. Nonostante le sue avanzate caratteristiche tecnologiche, il predominio di fatto della Microsoft nel settore del software ha fatto sì che la maggior parte degli utenti OS/2 finisse comunque per utilizzarlo come una sorta di "emulatore" di Windows, usando gli stessi programmi normalmente utilizzati con il sistema operativo della Microsoft. Come è facile capire, questa situazione ha finito per relegare in secondo piano i punti di forza specifici di OS/2 e, in ultima analisi, per indurre la maggior parte dei suoi utenti a tornare direttamente ai sistemi operativi della famiglia Windows.


    Edited by Massimiliano Varrese fc - 12/9/2005, 01:33
     
    Top
    .
  2. Massimiliano Varrese fc
        +1   -1
     
    .

    User deleted





    Sistema operativo

    Da Wikipedia, l'enciclopedia libera.

    In informatica, un sistema operativo (abbreviato in SO) è il programma responsabile del diretto controllo e gestione dell'hardware che costituisce un computer e delle operazioni di base. Si occupa anche di controllare gli accessi degli utenti e dei processi che vengono eseguiti.

     
    Top
    .
  3. Massimiliano Varrese fc
        +1   -1
     
    .

    User deleted





    Tipi di sistema operativo

    Un generico sistema operativo moderno si compone di alcune parti ben definite: un gestore di file system che si occupa di esaudire le richieste di accesso alle memorie di massa, un gestore di memoria virtuale che alloca pagine di memoria a richiesta e si assicura che questa sia presente nella memoria fisica al momento giusto, uno scheduler che assicura ai vari processi in esecuzione una ben definita quantità di tempo di elaborazione, uno spooler che accumula i dati da stampare e li stampa in successione, una interfaccia utente (shell o GUI) che permette agli esseri umani di interagire con la macchina ed un kernel, fulcro del sistema, che gestisce il tutto. A seconda dei casi, un particolare sistema operativo può avere tutti questi componenti o solo alcuni. Vediamo ora una serie di sistemi operativi possibili, dal più semplice al più complesso.

     
    Top
    .
  4. Massimiliano Varrese fc
        +1   -1
     
    .

    User deleted





    Monitor

    Praticamente il solo kernel, con una minima interfaccia interattiva per impartire i comandi. Permette di scrivere in memoria il programma da eseguire e di lanciarlo, non ha nessuna altra caratteristica. È semplicissimo (per un computer), spesso i suoi comandi sono semplici chiamate dirette a subroutine in linguaggio macchina, è stato anche il primo tipo di sistema operativo mai implementato su un computer.

     
    Top
    .
  5. Massimiliano Varrese fc
        +1   -1
     
    .

    User deleted





    Interprete

    Il secondo passo verso una migliore gestione del computer si ha con lo sviluppo di una interfaccia utente separata dal kernel, un interprete di comandi che funga anche da interfaccia utente, da shell. Questa shell primitiva di solito funge anche da interprete per un linguaggio di programmazione: a seconda delle scelte dei progettisti del software può essere un vero linguaggio oppure un più semplice linguaggio di scripting con cui creare comandi batch.

     
    Top
    .
  6. Massimiliano Varrese fc
        +1   -1
     
    .

    User deleted





    DOS

    Un computer diventa molto più utile se dotato di una memoria di massa: per gestirla serve un gestore di file system, cioè un insieme di funzioni che permetta di organizzare i dati sulla superficie dei mezzi di memorizzazione secondo una struttura ben precisa. I sistemi operativi capaci di gestire un file system sono detti genericamente Disk Operating Systems, cioè DOS appunto. L'esemplare più famoso è senz'altro il MS-DOS della Microsoft. Esiste anche una versione libera del dos, denominata: FreeDOS.

     
    Top
    .
  7. Massimiliano Varrese fc
        +1   -1
     
    .

    User deleted





    Sistema multitask

    Alcuni programmi non hanno sempre realmente bisogno della CPU: a volte, invece di eseguire istruzioni stanno aspettando che arrivino dei dati da un file, o che l'utente prema un tasto alla tastiera. Quindi si può, in linea di principio, usare questi tempi "morti" per far girare un altro programma. Questa idea, sorta fin dai primi anni 50, si concretizzò nei sistemi operativi multitasking, cioè dotati di uno scheduler che manda in esecuzione più processi (esecuzioni di programmi) contemporaneamente, assegnando a turno la CPU ad ognuno e sospendendo l'esecuzione dei programmi in attesa di un evento esterno (lettura sulla/dalla memoria di massa, stampa, input utente ecc.) finché questo non si verifica.

    Dovendo ospitare in memoria centrale più programmi nello stesso tempo, i sistemi multitask hanno bisogno di più memoria rispetto a quelli monotask: questo porta questo tipo di sistemi operativi a fare quasi sempre uso di un gestore di memoria virtuale.

     
    Top
    .
  8. Massimiliano Varrese fc
        +1   -1
     
    .

    User deleted





    Sistema multiutente

    Se un computer può far girare più programmi contemporaneamente, allora può anche accettare comandi da più utenti contemporaneamente: in effetti dal multitasking alla multiutenza il passo è molto breve tecnicamente, ma fa sorgere una serie di nuovi problemi dal punto di vista della sicurezza del sistema: come distinguere i vari utenti tra loro, come accertarsi che nessun utente possa causare danni agli altri o alla macchina che sta usando ecc.

    Questi problemi si risolvono assegnando un account univoco per ogni utente, assegnando un proprietario ai file ed ai programmi e gestendo un sistema di permessi per l'accesso ad essi, e prevedendo una gerarchia di utenti (cioè di account) per cui il sistema rifiuterà tutti i comandi potenzialmente "pericolosi" e li accetterà soltanto se impartiti da un utente in cima alla gerarchia, che è l'amministratore del sistema (generalmente l'account root nei sistemi Unix, Administrator nei sistemi Windows).

     
    Top
    .
  9. Massimiliano Varrese fc
        +1   -1
     
    .

    User deleted





    Parti del sistema operativo

    Kernel

    Il kernel è il cuore di un sistema operativo. Si tratta di un software con il compito di fornire ai programmi in esecuzione sul computer e agli altri moduli componenti il sistema operativo le funzioni fondamentali ed un accesso controllato all'hardware. Quali funzioni sia opportuno che il kernel debba fornire e quali possano essere demandate a moduli esterni è oggetto di opinioni divergenti: se il kernel di un sistema operativo implementa soltanto un numero molto ristretto di funzioni, delegando il resto ad altre parti, si parla di microkernel. Il vantaggio di un sistema operativo microkernel è la semplicità del suo kernel; lo svantaggio è l'interazione più complessa fra il kernel e le altre componenti del S.O. stesso, che rallenta il sistema.

     
    Top
    .
  10. Massimiliano Varrese fc
        +1   -1
     
    .

    User deleted





    File system

    Il file system è il modo in cui i file sono immagazzinati e organizzati su un dispositivo di archiviazione, come un hard disk o un CD-ROM. Esistono molti tipi di file system, creati per diversi sistemi operativi, per diverse unità di memorizzazione e per diversi usi. Esistono due grandi classi di file system: quelli per unità locali, destinate ad organizzare fisicamente i dati su un disco, e i file system distribuiti, nati per condividere i dati fra più computer collegati attraverso una rete, superando le differenze fra sistemi operativi e filesystem locali delle varie macchine.

     
    Top
    .
  11. Massimiliano Varrese fc
        +1   -1
     
    .

    User deleted





    Filesystem per unità locali

    Filesystem distribuiti

     
    Top
    .
  12. Massimiliano Varrese fc
        +1   -1
     
    .

    User deleted





    Scheduler

    Lo scheduler è un componente fondamentale dei sistemi operativi multitasking, cioè quelli in grado di eseguire più processi (task) contemporaneamente. Lo scheduler si occupa di fare avanzare un processo interrompendone temporaneamente un altro, realizzando così un cambiamento di contesto (context switch). Generalmente computer con un processore sono in grado di eseguire un programma per volta, quindi per poter far convivere più task è necessario usare lo scheduler. Esistono vari algoritmi di scheduling che permettono di scegliere nella maniera più efficiente possibile quale task far proseguire. Allo stato dell'arte, esistono scheduler O(1).

    Gestore di memoria virtuale

    Il gestore di memoria virtuale è la componente del sistema operativo che si occupa di gestire ed assegnare la memoria ad un processo che ne fa richiesta. Questo è necessario in quanto gli OS che utilizzano un gestore di memoria virtuale forniscono ai processi un'astrazione della memoria realmente presente.

    Interfaccia utente

    Spooler di stampa

    Lo spooler di stampa è stato, storicamente, uno dei primi moduli esterni del sistema operativo ad essere implementato, per risolvere il problema della gestione delle stampe su carta.
    Infatti, essendo le stampanti elettromeccaniche dei dispositivi molto lenti, i primi programmi per elaboratore dovevano necessariamente sprecare molto tempo di CPU, estremamente prezioso all'epoca, per controllare la stampante ed inviarle i dati. Quindi venne ideato un programma separato, che girava con una priorità molto bassa e che era visto dagli altri programmi come una normale stampante: in realtà invece lo spooler accumulava i dati che un programma doveva stampare in una apposita area di memoria RAM, e poi si faceva carico del processo di stampa vero e proprio lasciando gli altri programmi liberi di continuare la loro esecuzione.

    Il meccanismo fondamentale dello spooler di stampa è rimasto sostanzialmente invariato dai suoi albori fino ad oggi: con gli anni e con il progredire della tecnologia le modifiche più rilevanti sono state la capacità di gestire più stampanti selezionabili a piacere, e la capacità di gestire anche stampanti remote, collegate cioè non direttamente al computer su cui gira lo spooler ma ad altri elaboratori connessi via rete.

     
    Top
    .
  13. Massimiliano Varrese fc
        +1   -1
     
    .

    User deleted





    Sistemi operativi noti o importanti

    Vedi la voce principale elenco dei sistemi operativi

     
    Top
    .
12 replies since 12/9/2005, 00:27   201 views
  Share  
.