SlideShare uma empresa Scribd logo
1 de 41
Baixar para ler offline
Sistemi Di Elaborazione
       Dell’informazione
           Dott. Antonio Calanducci

             Lezione II: Software
Corso di Laurea in Scienze della Comunicazione
          Anno accademico 2009/2010
wdwdwdwdwdw
                   Tipi di software
• Software   di sistema (o di base)
 -   es: sistema operativo, drivers, librerie di sistema
• Software   applicativo
 -   applicazioni o programmi




          A. Calanducci - Sistemi: Lezione II - Catania, 24/03/2010   2
wdwdwdwdwdw
            Sistema Operativo (SO)
• In   inglese, Operating System (OS)
  -   e’ quel particolare software responsabile del controllo
      e della gestione dei componenti hardware di un
      calcolatore e dei software applicativi che su di esso
      vengono eseguiti
  -   “intermediario” tra l’utente e le risorse hardware, tra i
      software applicativi e l’hardware
  -   fornisce un’interfaccia utente (testuale e/o grafica) di
      alto livello alla macchina



            A. Calanducci - Sistemi: Lezione II - Catania, 24/03/2010   3
wdwdwdwdwdw
OS come intermediario




A. Calanducci - Sistemi: Lezione II - Catania, 24/03/2010   4
wdwdwdwdwdw
                    Obiettivi del SO
• Semplicità

  -   rende l’uso del computer più semplice, mascherando
      la complessità della piattaforma hardware
• Efficienza

  -   ottimizza l’uso delle risorse da parte dei software
      applicativi
• Flessibilità

  -   fornisce la visione di una macchina astratta,
      garantendo un’interfaccia uniforme agli sviluppatori di
      software applicativo
            A. Calanducci - Sistemi: Lezione II - Catania, 24/03/2010   5
wdwdwdwdwdw
Virtualizzazione delle risorse hw
• Fornisce
         agli utenti e applicativi, delle risorse virtuali,
 più semplici da usare rispetto a quelle reali
 -   es (gestione dei dischi)
     -   risorsa reale: hard disk
     -   risorsa virtuale: file
     -   senza la virtualizzazione, occorrerebbe:
         -   conoscere l’organizzazione fisica del disco e linguaggio
             di gestione del controller
         -   occuparsi di dare i comandi di gestione motore disco e
             testina
                A. Calanducci - Sistemi: Lezione II - Catania, 24/03/2010   6
wdwdwdwdwdw
                     Servizi del SO
• Esecuzione      di applicazioni
 -   caricamento degli applicativi nella memoria centrale
 -   allocazione delle risorse
• Accesso    ai dispositivi di Input/Output (I/O)
 -   gestione di un’interfaccia logica verso i dispositivi
     (fornendo operazioni astratte di lettura/scrittura)
• Accesso    alle memorie di massa
 -   fornisce un’organizzazione logica dei dati sotto forma
     di cartelle e file (File System)

           A. Calanducci - Sistemi: Lezione II - Catania, 24/03/2010   7
wdwdwdwdwdw
                     Servizi del SO
• Controllo   accesso
 -   condivisione di risorse da parte di più applicazioni (e
     utenti nel caso di calcolatori multiutente)
 -   meccanismi di protezione e politiche di risoluzione
     degli eventuali conflitti
• Gestione    degli errori
 -   protezione del sistema da parte di applicazioni mal
     funzionanti
 -   risoluzione di malfunzionamenti causati da problemi
     hardware
           A. Calanducci - Sistemi: Lezione II - Catania, 24/03/2010   8
wdwdwdwdwdw
                Vantaggi di un SO
• Sonolegati alla possibilità di definire un’interfaccia
 standard alle risorse fisiche (hardware) cosicché sia
 possibile:
 -   sviluppare programmi (=software applicativo) in modo
     semplice, modulare ed indipendente dallo specifico
     calcolatore
 -   aggiornare il software di base e l’hardware in modo
     trasparente ai programmi applicativi e all’utente




           A. Calanducci - Sistemi: Lezione II - Catania, 24/03/2010   9
wdwdwdwdwdw
Caratteristiche di un SO moderno
• multitasking

 -   esecuzione di più applicativi contemporaneamente
• supporto    multiutente
 -   più utenti hanno la propria “home” con file e
     documenti separati
• memoria     virtuale
 -   uso del disco in caso di esaurimento memoria
• protezione    della memoria
 -   impedisce ad un programma di accedere alla memoria
     di un’altro programma in esecuzione
           A. Calanducci - Sistemi: Lezione II - Catania, 24/03/2010   10
wdwdwdwdwdw
          Sistemi operativi popolari
• Proprietari:

 -   Microsoft
     -   MS-DOS, Windows (3.1/95/98/ME/NT/2009/XP/Vista/7)
 -   Apple
     -   Mac OS Classic, Mac OS X (Panther/Leopard/Snow
         Leopard)
• Liberi   (basati su Unix):
 -   Ubuntu, Fedora, Suse, Slackware, Debian, CentOS,
     Red Hat

             A. Calanducci - Sistemi: Lezione II - Catania, 24/03/2010   11
wdwdwdwdwdw
                                  Windows
•   E’ il sistema operativo più diffuso
•   nasce nel 1984 come “interfaccia grafica” per il sistema
    operativo di Microsoft MS-DOS venduto con i PC-IBM
•   La versione corrente:
    -   22 Ottobre 2009: Windows 7
        -   basato sul kernel di Vista
        -   molti miglioramenti “under-the-hood” (dietro le quinte)
        -   diverse varianti:
            -   http://windows.microsoft.com/it-IT/windows7/products/
                compare
                  A. Calanducci - Sistemi: Lezione II - Catania, 24/03/2010   12
wdwdwdwdwdw
                                   Linux
• sistema      operativo libero di tipo Unix
• integrazione       di:
 -   kernel Linux
     -   cuore di un sistema operativo
     -   scritto da Linus Torvalds nel 1991
 -   elementi del sistema GNU
     -   GNU is Not Unix, progetto di Richard Stallman per la
         creazione di software di sistema liberi
 -   software libero
              A. Calanducci - Sistemi: Lezione II - Catania, 24/03/2010   13
wdwdwdwdwdw
                               Mac OS
• 1984:Macintosh: il primo computer ad avere
 un’interfaccia grafica e un mouse
 -   il SO è il Mac OS (Macintosh Operating System)
• 2001:    Mac OS X (si pronuncia “ten”)
 -   completamente riscritto e basato su Unix
 -   è il SO dei moderni Mac
 -   la versione attuale è
     -   Mac OS X 10.6 Snow Leopard


             A. Calanducci - Sistemi: Lezione II - Catania, 24/03/2010   14
wdwdwdwdwdw
Interfaccia (utente) grafica (GUI)
• Grafical     User Interface (GUI)
 -   fornisce all’utente un insieme di oggetti grafici
     attraverso i quali poter interagire con il computer
 -   in contrapposizione ad un’interfaccia a linea di
     comando (Command Line Interface: CLI)
     -   interazione via comandi testuali
• Elementi      di un’interfaccia grafica:
 -   widgets (congegno)



              A. Calanducci - Sistemi: Lezione II - Catania, 24/03/2010   15
wdwdwdwdwdw
               Elementi di una GUI
• Icòne

• Desktop

• Pulsanti

• Finestre

• Combo     box
• List   box
• Drop    Down list



            A. Calanducci - Sistemi: Lezione II - Catania, 24/03/2010   16
wdwdwdwdwdw
               Elementi di una GUI
• Text   box
• Check    box
• Radio    button
• Slider

• Scrollbar    (verticale e orrizzontale)
• Tool   bar (barra degli strumenti)
• Menu     e Menu bars
• Status   bar
• Dialog   Box
           A. Calanducci - Sistemi: Lezione II - Catania, 24/03/2010   17
wdwdwdwdwdw
                  Elementi di una GUI
• tool   tip
• tab

• label   (etichetta)
• progress       bar
• dock

• spinner

• tree   (albero)
• grid   (griglia)

               A. Calanducci - Sistemi: Lezione II - Catania, 24/03/2010   18
wdwdwdwdwdw
      Interfaccie grafiche popolari
• Anche   chiamati Desktop Environments
• Windows    Aero (Windows Vista)
 -   http://www.microsoft.com/italy/windows/products/
     windowsvista/features/details/aero.mspx
• Aqua   (Mac OS)
 -   http://en.wikipedia.org/wiki/Aqua_(user_interface)
• KDE   (Linux, Win/Mac experimental), Gnome (Linux)
 -   http://it.wikipedia.org/wiki/KDE
 -   http://it.wikipedia.org/wiki/Gnome
           A. Calanducci - Sistemi: Lezione II - Catania, 24/03/2010   19
wdwdwdwdwdw
    Programma (per calcolatore)
-   Un programma per calcolatore è l’implementazione di
    un algoritmo in un linguaggio adatto ad essere
    eseguito da un computer
    - algoritmo:    è una sequenza logicamente ordinata di passi
     (istruzioni) che consente di risolvere un data problema
      - algoritmi   descritti con diagrammi di flusso
-   Linguaggio di programmazione è un linguaggio
    formale, dotato di lessico, sintassi e semantica,
    utilizzabile per l’implementazione di un algoritmo.
    - C, Java, C++, Basic, Assembly, Objective-C, Pascal

          A. Calanducci - Sistemi: Lezione II - Catania, 24/03/2010   20
wdwdwdwdwdw
Diagramma di flusso: somma




  A. Calanducci - Sistemi: Lezione II - Catania, 24/03/2010   21
wdwdwdwdwdw
       Esempio di sorgente (in C)
#include <stdio.h>
#include <stdlib.h> 
int main()
{
         int z;
         int x = 0, y = 0;
 
         printf("Inserisci il primo valore: ");
         scanf("%d", &x);
 
         printf("Inserisci il secondo valore: ");
         scanf("%d", &y);
 
         z = x + y;
 
         printf("La somma dei due numeri e' la seguente: %dn", z);


       return 0;
}


            A. Calanducci - Sistemi: Lezione II - Catania, 24/03/2010   22
wdwdwdwdwdw
         Programma eseguibile
• un  programma binario (o eseguibile) è direttamente
  eseguibile da un calcolatore
• un programma scritto in un linguaggio di
  programmazione può essere eseguito solo utilizzando
  un compilatore o un interprete
  - compilatore: è un programma che traduce il codice
    sorgente da un linguaggio ad alto livello in un codice
    binario (=programma binario)
  - interprete: è un programma in grado di eseguire “al
    volo” un altro programma a partire dal codice sorgente
• codice sorgente (o sorgente): insieme di istruzioni in
  un dato linguaggio di programmazione
         A. Calanducci - Sistemi: Lezione II - Catania, 24/03/2010   23
wdwdwdwdwdw
             Software applicativo
• Applicazione:l’insieme di un programma eseguibile (o
 più eseguibili) con tutte le risorse software (librerie, file
 di configurazione, immagini, suoni) necessarie per
 offrire un “servizio” all’utente finale
• Classificazione:

 -   a seconda del tipo di licenza concessa dall’autore
     verso il fruitore (software libero vs software
     proprietario)
 -   a seconda dell’uso a cui è destinato


           A. Calanducci - Sistemi: Lezione II - Catania, 24/03/2010   24
wdwdwdwdwdw
     Open Source (sorgente aperto)
• Indicaun software i cui software ne permettono e ne
 favoriscono il libero studio e l’eventuale apporto di
 modifiche da parte di programmatori indipendenti
 -   vantaggio: la collaborazione di più parti permette al
     prodotto finale di raggiungere una complessità
     maggiore di quanto potrebbe ottenere un singolo
     gruppo di lavoro
• Famosi   software open source:
 -   Mozilla Firefox, VideoLan Client (VLC), OpenOffice,
     Gimp

           A. Calanducci - Sistemi: Lezione II - Catania, 24/03/2010   25
wdwdwdwdwdw
     Software libero (free software)
•   E’ un software pubblicato con una licenza che permette a
    chiunque di utilizzarlo e che ne incoraggia lo studio, le
    modifiche e la redistribuzione
•   si contrappone al software proprietario
•   enfasi sulla libertà dell’utente nell’uso
•   è anche open source (pre-requisito)
•   è soggetto ad una licenza d’uso:
    -   gli autori precedenti devono essere menzionati
    -   bisogna distribuire anche le modifiche
•   Esempio più eclatante: GNU/Linux
              A. Calanducci - Sistemi: Lezione II - Catania, 24/03/2010   26
wdwdwdwdwdw
            Altre tipologie di software
•   Shareware: licenza che consente di utilizzare il software per un
    determinato periodo di tempo, dopo il quale è necessario pagare un
    costo per proseguire
    -   dopo la scadenza, ancora usabile
    -   nag screen: periodo d’uso restante
    -   es: Winzip
•   Trial (prova): software completamente funzionante per un dato
    periodo di tempo, dopo il quale si ha l’interruzione del funzionamento
    -   è necessario l’acquisto della licenza (codice seriale)
•   Demo: software con ridotte capacità rispetto alla versione completa
    (full); ad es: impossibilità di salvataggio, di stampa
                A. Calanducci - Sistemi: Lezione II - Catania, 24/03/2010   27
wdwdwdwdwdw
         Categorie di applicazioni
• Desktop     (o produttività personale)
 -   elaboratore di testi, fogli di calcolo, presentazioni,
     fotoritocco, archiviazione (database), grafica artistica/
     tecnica, musica, agenda, PIM (Personal Information
     Manager)
• Education

 -   applicazioni utili per le scuole, sistemi di
     autoapprendimento
• Games

• Software    development
            A. Calanducci - Sistemi: Lezione II - Catania, 24/03/2010   28
wdwdwdwdwdw
                Categorie di applicazioni
•   Business o enterprise (applicazioni aziendali)

    -   Financial

    -   CRM (Customer Relationship management)

    -   ERP (Enterprise Resource Planning)

        -   contabilità, bilancio, magazzino, fornitori, clienti, produzione, vendite, marketing, personale,
            controllo di gestione

    -   OLAP (Online Analytical Processing)

    -   Project Management

    -   E-commerce

•   Science

    -   applicazioni nei campi della scienza applicata (IA, Astronomia, Biologia, Fisica,
        Chimica, etc etc etc)

                    A. Calanducci - Sistemi: Lezione II - Catania, 24/03/2010                                  29
wdwdwdwdwdw
   Applicazioni desktop popolari
• Office    automation:
   -   Microsoft Office (Win/Mac), OpenOffice.org (Win/Mac/
       Linux), iWork (Mac)
• Internet   Browsers:
   -   IE (Win), Mozilla Firefox, (Win/Mac/Linux), Opera, Google
       Chrome, Camino, Safari (Mac)
• Client   Mail (posta elettronica)
   -   Outlook/Outlook Express (Win), Apple Mail, Mozilla
       Thunderbird(Win/Mac/Linux)


            A. Calanducci - Sistemi: Lezione II - Catania, 24/03/2010   30
wdwdwdwdwdw
   Applicazioni desktop popolari
• Instant   Messaging
   -   MSN/Windows Live Messenger, (Win/Mac) Skype(Win/Mac/
       Linux), ICQ(Win/Mac), Mercury (Win/Mac/Linux), aMSN
       (Win/Mac/Linux), Adium (Mac), iChat (Mac), Pidgin (Win/
       Mac/Linux)
• Compression

   -   Winzip/Winrar (Win), Stuffit Expander (Win/Mac), unzip/gzip/
       tar (Mac/Linux)
• Masterizzazione

   -   Nero Burning ROM (Win), Roxio Toast (Mac), cdrecord
       (Linux)
            A. Calanducci - Sistemi: Lezione II - Catania, 24/03/2010   31
wdwdwdwdwdw
     Applicazioni desktop popolari
•   Multimedia player
      -   Windows MPlayer (Win), VideoLan Client (Win/Mac/Linux),
          RealPlayer, (Win/Mac/Linux) DivX Player, Quicktime (Win/
          Mac), iTunes (Win/Mac), XBMC (Win/Mac/Linux)
•   Peer-2-peer
      -   eMule, aMule, azureus, transmissions
•   Visualizzazione PDF
      -   Adobe Acrobat Reader (Win/Mac/Linux), Apple Preview (mac)
•   Sviluppo applicazioni
      -   Eclipse (Win/Mac/Linux), Netbeans (Win/Mac/Linux)
               A. Calanducci - Sistemi: Lezione II - Catania, 24/03/2010   32
wdwdwdwdwdw
                    Applicazioni pro
• Adobe      Creative Suite (Win/Mac)
     -   Photoshop, Illustrator, InDesign, Flash, Acrobat,
         Dreamweaver, Fireworks, After Effects, Premiere, Lightroom
• CAD      (Computer Aided Design)
 -   Autocad (Win), Archicad (Win/Mac), Maya, Vector
     Works
• Apple     Pro Software:
 -   Final Cut, Logic, Aperture, Motion



             A. Calanducci - Sistemi: Lezione II - Catania, 24/03/2010   33
wdwdwdwdwdw
                         File System
• Astrazione attraverso la quale sono rappresentati gli
 oggetti necessari alla memorizzazione, organizzazione
 gerarchica, manipolazione, navigazione, l’accesso e la
 lettura dei dati su un dispositivo di archiviazione
  -   es: unità di disco, file, cartelle, percorsi (path)
• Lacreazione del file system su un dispositivo di
 archiviazione di massa viene generato al momento
 della formattazione.
• File   System popolari:
  -   FAT/NTFS (Windows), HPFS (Mac OS), ext/raiserfs
      (Unix)
            A. Calanducci - Sistemi: Lezione II - Catania, 24/03/2010   34
wdwdwdwdwdw
                       Files e directories
•   Un file (archivio) è un contenitore di informazione digitalizzata
•   I dati codificati in un file sono organizzati come una sequenza
    di bytes, immagazzinati come un solo elemento su una
    memoria di massa, all’interno di un File System su quella data
    di memoria di massa
    -   fisicamente può essere scritto su più zone (blocchi, anche non
        contigui) del supporto che lo ospita
        -   il SO si occupa di rendere trasparente alle applicazioni la suddivisione
            fisica dei file e di gestire recupero e lettura/scrittura dei blocchi fisici
•   ogni archivio ha un nome (filename)
•   i files sono organizzati in directories (o cartelle) in uno spazio
    di nomi gerarchico
                  A. Calanducci - Sistemi: Lezione II - Catania, 24/03/2010        35
wdwdwdwdwdw
                  Path assoluti e relativi
•   Path (percorso): un nome che contiene in forma esplicita
    informazioni sulla posizione dei file all’interno del file system:
    -   es: C:Documents and SettingsAntonioDesktopLezione2.pdf
•   Path assoluto:
    -   indica la posizione di un file/cartella a partire dalla radice del file
        system
•   Path relativo:
    -   indica la posizione di un file/cartella a partire dalla directory
        corrente
        -   es: DesktopLezione2.pdf (se la dir corrente è Antonio)
•   Separatori di path: slash (/) in Unix/Mac OS, backslash () Windows
                  A. Calanducci - Sistemi: Lezione II - Catania, 24/03/2010     36
wdwdwdwdwdw
                       Formato dei files
• Ilcontenuto di un file è conforme ad un particolare
  formato
  -    una o più applicazioni in grado di interpretare e/o
       modificarne il contenuto (“aprire” un file)
• Identificazione           del formato:
  -    estensione del file (DOS, Windows)
       -   i tre caratteri finali del filename dopo il punto
  -    metadati salvati dentro il file (Mac OS)
  -    primi byte (magic number) del file (Unix, Linux)

                A. Calanducci - Sistemi: Lezione II - Catania, 24/03/2010   37
wdwdwdwdwdw
                                    Files
• file    ASCII vs file binari
 -   ASCII: file di testo, una sequenza di caratteri pura e
     semplice, interpretabile da qualsiasi SO
 -   binari: interpretabili da un ben determinato applicativo
     in una determinata piattaforma
     -   non intellegibili direttamente dall’uomo
• Operazioni       sui file:
 -   apertura/chiusura
 -   lettura/scrittura

              A. Calanducci - Sistemi: Lezione II - Catania, 24/03/2010   38
wdwdwdwdwdw
                            Tipi di files
• File    documenti
      -   CSV (Comma Separated Values), TXT (file di testo, ASCII),
          RTF (Rich Text Format), DOC (MS Word), XLS (MS
          Excel), PPT (MS PPT), MDB (MS Access), PDF (Adobe
          Acrobat)
• File    composti da linguaggi di markup
      -   HTML, XML, CSS, DOCX/XLSX/PPTX (Office 2007)
• Codice      sorgente
  -   BAS (Basic), C, CPP (C++), Java, PAS (Pascal), PY
      (Python), PHP, ASP/JSP (Active/Java Server Pages)
              A. Calanducci - Sistemi: Lezione II - Catania, 24/03/2010   39
wdwdwdwdwdw
                          Tipi di files
• Archivi   compressi:
    -   ZIP, RAR, CAB (Windows), SIT (StuffIT), TAR (Unix),
        GZ (Gzip), BZ2 (Bzip2)
• File   grafici
    -   JPG, TIF, GIF, PNG, BMP -- (grafica raster)
    -   AI (Adobe Illustrator), CDR (Corel Draw), DWG/DXF
        (Autocad), SVG (Scalable Vector Graphics) --(gratica
        vettoriale)



            A. Calanducci - Sistemi: Lezione II - Catania, 24/03/2010   40
wdwdwdwdwdw
                                Tipi di files
•   File Audio
       -    AC3, MP3, MID (Midi), AAC (Advanced Audio Coding), WAV,
            AIFF, RA (Real Audio), OGG (Vorbis), MKA (Matroska Audio)
•   File video
       -    AVI, MOV, MKV (Matroska Video), RM (Real Media), 3GP, (cellulari)
            SWG (Flash), MPG (Mpeg), MP4, WMV (Windows Media Video
•   File eseguibili
       -    EXE, BAT, JAR (Java), DLL (Librerie win), ELF, (Unix) Mach-O
            (Mac)
•   altri
       -    INI (inizializzazione win), SYS (file di sistema win)
                  A. Calanducci - Sistemi: Lezione II - Catania, 24/03/2010   41

Mais conteúdo relacionado

Destaque

Destaque (20)

M4.1 - Radiocomunicazioni
M4.1 - RadiocomunicazioniM4.1 - Radiocomunicazioni
M4.1 - Radiocomunicazioni
 
Sistemi lezione-iii-reti-di-calcolatori
Sistemi lezione-iii-reti-di-calcolatoriSistemi lezione-iii-reti-di-calcolatori
Sistemi lezione-iii-reti-di-calcolatori
 
Presentazione progetto circuito sommatore
Presentazione progetto circuito sommatorePresentazione progetto circuito sommatore
Presentazione progetto circuito sommatore
 
Reti Logic
Reti LogicReti Logic
Reti Logic
 
IUAV BarCamp - La casa del futuro - Giacomo Montefusco 269124
IUAV BarCamp - La casa del futuro - Giacomo Montefusco 269124IUAV BarCamp - La casa del futuro - Giacomo Montefusco 269124
IUAV BarCamp - La casa del futuro - Giacomo Montefusco 269124
 
Quinta Lezione
Quinta LezioneQuinta Lezione
Quinta Lezione
 
信息 Sunday Sermon 17/04/2011
信息 Sunday Sermon 17/04/2011信息 Sunday Sermon 17/04/2011
信息 Sunday Sermon 17/04/2011
 
La polarizzazione del transistor
La polarizzazione del transistorLa polarizzazione del transistor
La polarizzazione del transistor
 
L'amplificatore Operazionale
L'amplificatore OperazionaleL'amplificatore Operazionale
L'amplificatore Operazionale
 
Infografiche in didattica flip
Infografiche in didattica flipInfografiche in didattica flip
Infografiche in didattica flip
 
C rob-mob-motori-nxt-finale
C rob-mob-motori-nxt-finaleC rob-mob-motori-nxt-finale
C rob-mob-motori-nxt-finale
 
Settore Elettrico
Settore ElettricoSettore Elettrico
Settore Elettrico
 
Metodo risoluzione circuiti logici
Metodo risoluzione circuiti logiciMetodo risoluzione circuiti logici
Metodo risoluzione circuiti logici
 
Onde e luce
Onde e luceOnde e luce
Onde e luce
 
Architettura dei Calcolatori 05 Sintesirls
Architettura dei Calcolatori 05 SintesirlsArchitettura dei Calcolatori 05 Sintesirls
Architettura dei Calcolatori 05 Sintesirls
 
Videosorveglianza
VideosorveglianzaVideosorveglianza
Videosorveglianza
 
Circuitiraddrizzatori 1
Circuitiraddrizzatori 1Circuitiraddrizzatori 1
Circuitiraddrizzatori 1
 
Automazione Industriale e Robotica
Automazione Industriale e RoboticaAutomazione Industriale e Robotica
Automazione Industriale e Robotica
 
Amplificatore
AmplificatoreAmplificatore
Amplificatore
 
I circuiti logici
I circuiti  logiciI circuiti  logici
I circuiti logici
 

Semelhante a Sistemi lezione-ii

Software libero at ENEA
Software libero at ENEASoftware libero at ENEA
Software libero at ENEANaLUG
 
CodingGym - Lezione 1 - Corso Linux, Android e Internet of Things
CodingGym - Lezione 1 - Corso Linux, Android e Internet of ThingsCodingGym - Lezione 1 - Corso Linux, Android e Internet of Things
CodingGym - Lezione 1 - Corso Linux, Android e Internet of ThingsMirko Mancin
 
Elio Tondo - Linux In Azienda
Elio Tondo - Linux In AziendaElio Tondo - Linux In Azienda
Elio Tondo - Linux In AziendaBetter Software
 
Power point sistemi operativi , luca marcella 3° e
Power point sistemi operativi , luca marcella 3° ePower point sistemi operativi , luca marcella 3° e
Power point sistemi operativi , luca marcella 3° eLuca Marcella
 
Docker - virtualizzazione leggera
Docker - virtualizzazione leggeraDocker - virtualizzazione leggera
Docker - virtualizzazione leggeraRoberto Polli
 
Set up and management of an integrated information system on Linux.
Set up and management of an integrated information system on Linux.Set up and management of an integrated information system on Linux.
Set up and management of an integrated information system on Linux.Andrea Marchetti
 
Set up and management of an integrated information system on Linux.
Set up and management of an integrated information system on Linux.Set up and management of an integrated information system on Linux.
Set up and management of an integrated information system on Linux.Andrea Marchetti
 
Claudio Cardinali - Virtualizzazione. Di tutti. Per tutti. - LINUX LTSP KVM S...
Claudio Cardinali - Virtualizzazione. Di tutti. Per tutti. - LINUX LTSP KVM S...Claudio Cardinali - Virtualizzazione. Di tutti. Per tutti. - LINUX LTSP KVM S...
Claudio Cardinali - Virtualizzazione. Di tutti. Per tutti. - LINUX LTSP KVM S...Claudio Cardinali
 
Hardware Libero - Linux Day 2007
Hardware Libero - Linux Day 2007Hardware Libero - Linux Day 2007
Hardware Libero - Linux Day 2007pino_otto
 
Sistemi operativi
Sistemi operativiSistemi operativi
Sistemi operativiPaola Bez
 
6. Il Web come piattaforma
6. Il Web come piattaforma6. Il Web come piattaforma
6. Il Web come piattaformaRoberto Polillo
 

Semelhante a Sistemi lezione-ii (20)

Slide trentin
Slide trentinSlide trentin
Slide trentin
 
Software libero at ENEA
Software libero at ENEASoftware libero at ENEA
Software libero at ENEA
 
CodingGym - Lezione 1 - Corso Linux, Android e Internet of Things
CodingGym - Lezione 1 - Corso Linux, Android e Internet of ThingsCodingGym - Lezione 1 - Corso Linux, Android e Internet of Things
CodingGym - Lezione 1 - Corso Linux, Android e Internet of Things
 
Elio Tondo - Linux In Azienda
Elio Tondo - Linux In AziendaElio Tondo - Linux In Azienda
Elio Tondo - Linux In Azienda
 
Power point sistemi operativi , luca marcella 3° e
Power point sistemi operativi , luca marcella 3° ePower point sistemi operativi , luca marcella 3° e
Power point sistemi operativi , luca marcella 3° e
 
Docker - virtualizzazione leggera
Docker - virtualizzazione leggeraDocker - virtualizzazione leggera
Docker - virtualizzazione leggera
 
Sistemi operativi
Sistemi operativiSistemi operativi
Sistemi operativi
 
prova
provaprova
prova
 
Linuxday2007
Linuxday2007Linuxday2007
Linuxday2007
 
X La Gui
X La GuiX La Gui
X La Gui
 
GNU Linux introduction
GNU Linux introductionGNU Linux introduction
GNU Linux introduction
 
Ti base 2020
Ti base 2020Ti base 2020
Ti base 2020
 
Ti base 2020b
Ti base 2020bTi base 2020b
Ti base 2020b
 
Set up and management of an integrated information system on Linux.
Set up and management of an integrated information system on Linux.Set up and management of an integrated information system on Linux.
Set up and management of an integrated information system on Linux.
 
Set up and management of an integrated information system on Linux.
Set up and management of an integrated information system on Linux.Set up and management of an integrated information system on Linux.
Set up and management of an integrated information system on Linux.
 
Claudio Cardinali - Virtualizzazione. Di tutti. Per tutti. - LINUX LTSP KVM S...
Claudio Cardinali - Virtualizzazione. Di tutti. Per tutti. - LINUX LTSP KVM S...Claudio Cardinali - Virtualizzazione. Di tutti. Per tutti. - LINUX LTSP KVM S...
Claudio Cardinali - Virtualizzazione. Di tutti. Per tutti. - LINUX LTSP KVM S...
 
10 Linuxday2002
10 Linuxday200210 Linuxday2002
10 Linuxday2002
 
Hardware Libero - Linux Day 2007
Hardware Libero - Linux Day 2007Hardware Libero - Linux Day 2007
Hardware Libero - Linux Day 2007
 
Sistemi operativi
Sistemi operativiSistemi operativi
Sistemi operativi
 
6. Il Web come piattaforma
6. Il Web come piattaforma6. Il Web come piattaforma
6. Il Web come piattaforma
 

Mais de University of Catania

Lesson 02 - React Native Development Environment Setup
Lesson 02 - React Native Development Environment SetupLesson 02 - React Native Development Environment Setup
Lesson 02 - React Native Development Environment SetupUniversity of Catania
 
Abilità Informatiche - Lezione 01 introduzione al corso
Abilità Informatiche - Lezione 01   introduzione al corsoAbilità Informatiche - Lezione 01   introduzione al corso
Abilità Informatiche - Lezione 01 introduzione al corsoUniversity of Catania
 
LAP II - Lezione 01 Introduzione al corso
LAP II - Lezione 01   Introduzione al corsoLAP II - Lezione 01   Introduzione al corso
LAP II - Lezione 01 Introduzione al corsoUniversity of Catania
 
Lezione 02 React and React Native installation and Configuration
Lezione 02   React and  React Native installation and ConfigurationLezione 02   React and  React Native installation and Configuration
Lezione 02 React and React Native installation and ConfigurationUniversity of Catania
 
Presentazione Corso LAP 2 A.A. 2016/2017
Presentazione Corso LAP 2 A.A. 2016/2017Presentazione Corso LAP 2 A.A. 2016/2017
Presentazione Corso LAP 2 A.A. 2016/2017University of Catania
 
LAP 2 Lezione 8: Properties, Database, Media, Filesystem
LAP 2  Lezione 8: Properties, Database, Media, FilesystemLAP 2  Lezione 8: Properties, Database, Media, Filesystem
LAP 2 Lezione 8: Properties, Database, Media, FilesystemUniversity of Catania
 
LAP2 iOS and Android Development environment setup
LAP2 iOS and Android Development environment setupLAP2 iOS and Android Development environment setup
LAP2 iOS and Android Development environment setupUniversity of Catania
 
Presentazione Corso LAP2: Sviluppo di app mobili native multipiattaforma
Presentazione Corso LAP2: Sviluppo di app mobili native multipiattaformaPresentazione Corso LAP2: Sviluppo di app mobili native multipiattaforma
Presentazione Corso LAP2: Sviluppo di app mobili native multipiattaformaUniversity of Catania
 
Laboratorio Creare e pubblicare mobile apps per iOS e Android Configurazione ...
Laboratorio Creare e pubblicare mobile apps per iOS e Android Configurazione ...Laboratorio Creare e pubblicare mobile apps per iOS e Android Configurazione ...
Laboratorio Creare e pubblicare mobile apps per iOS e Android Configurazione ...University of Catania
 
Sistemi lezione-iv-internet-e-posta-elettronica
Sistemi lezione-iv-internet-e-posta-elettronicaSistemi lezione-iv-internet-e-posta-elettronica
Sistemi lezione-iv-internet-e-posta-elettronicaUniversity of Catania
 
Sistemi - Lezione XIV - Introduzione a HTML
Sistemi - Lezione XIV - Introduzione a HTMLSistemi - Lezione XIV - Introduzione a HTML
Sistemi - Lezione XIV - Introduzione a HTMLUniversity of Catania
 
Sistemi - Lezione XIII - Blogs e Blogger
Sistemi - Lezione XIII - Blogs e BloggerSistemi - Lezione XIII - Blogs e Blogger
Sistemi - Lezione XIII - Blogs e BloggerUniversity of Catania
 
Sistemi lezione viii - google altri servizi
Sistemi   lezione viii - google altri serviziSistemi   lezione viii - google altri servizi
Sistemi lezione viii - google altri serviziUniversity of Catania
 
Sistemi lezione xi - picasa web album - social bookmarking - notizie 2
Sistemi   lezione xi - picasa web album - social bookmarking - notizie 2Sistemi   lezione xi - picasa web album - social bookmarking - notizie 2
Sistemi lezione xi - picasa web album - social bookmarking - notizie 2University of Catania
 
Sistemi lezione x - introduzione al web 2.0 - flickr
Sistemi   lezione x - introduzione al web 2.0 - flickrSistemi   lezione x - introduzione al web 2.0 - flickr
Sistemi lezione x - introduzione al web 2.0 - flickrUniversity of Catania
 
Sistemi di elaborazione dell'informazione - Google Docs basics
Sistemi di elaborazione dell'informazione - Google Docs basicsSistemi di elaborazione dell'informazione - Google Docs basics
Sistemi di elaborazione dell'informazione - Google Docs basicsUniversity of Catania
 

Mais de University of Catania (20)

Lezione 03 Introduzione a react
Lezione 03   Introduzione a reactLezione 03   Introduzione a react
Lezione 03 Introduzione a react
 
Lesson 02 - React Native Development Environment Setup
Lesson 02 - React Native Development Environment SetupLesson 02 - React Native Development Environment Setup
Lesson 02 - React Native Development Environment Setup
 
Abilità Informatiche - Lezione 01 introduzione al corso
Abilità Informatiche - Lezione 01   introduzione al corsoAbilità Informatiche - Lezione 01   introduzione al corso
Abilità Informatiche - Lezione 01 introduzione al corso
 
LAP II - Lezione 01 Introduzione al corso
LAP II - Lezione 01   Introduzione al corsoLAP II - Lezione 01   Introduzione al corso
LAP II - Lezione 01 Introduzione al corso
 
Lezione 02 React and React Native installation and Configuration
Lezione 02   React and  React Native installation and ConfigurationLezione 02   React and  React Native installation and Configuration
Lezione 02 React and React Native installation and Configuration
 
Presentazione Corso LAP 2 A.A. 2016/2017
Presentazione Corso LAP 2 A.A. 2016/2017Presentazione Corso LAP 2 A.A. 2016/2017
Presentazione Corso LAP 2 A.A. 2016/2017
 
LAP 2 Lezione 8: Properties, Database, Media, Filesystem
LAP 2  Lezione 8: Properties, Database, Media, FilesystemLAP 2  Lezione 8: Properties, Database, Media, Filesystem
LAP 2 Lezione 8: Properties, Database, Media, Filesystem
 
LAP2 iOS and Android Development environment setup
LAP2 iOS and Android Development environment setupLAP2 iOS and Android Development environment setup
LAP2 iOS and Android Development environment setup
 
Presentazione Corso LAP2: Sviluppo di app mobili native multipiattaforma
Presentazione Corso LAP2: Sviluppo di app mobili native multipiattaformaPresentazione Corso LAP2: Sviluppo di app mobili native multipiattaforma
Presentazione Corso LAP2: Sviluppo di app mobili native multipiattaforma
 
Laboratorio Creare e pubblicare mobile apps per iOS e Android Configurazione ...
Laboratorio Creare e pubblicare mobile apps per iOS e Android Configurazione ...Laboratorio Creare e pubblicare mobile apps per iOS e Android Configurazione ...
Laboratorio Creare e pubblicare mobile apps per iOS e Android Configurazione ...
 
Sistemi lezione-v-google-web-search
Sistemi lezione-v-google-web-searchSistemi lezione-v-google-web-search
Sistemi lezione-v-google-web-search
 
Sistemi lezione-iv-internet-e-posta-elettronica
Sistemi lezione-iv-internet-e-posta-elettronicaSistemi lezione-iv-internet-e-posta-elettronica
Sistemi lezione-iv-internet-e-posta-elettronica
 
Sistemi lezione xv - cenni su css
Sistemi   lezione xv - cenni su cssSistemi   lezione xv - cenni su css
Sistemi lezione xv - cenni su css
 
Sistemi - Lezione XIV - Introduzione a HTML
Sistemi - Lezione XIV - Introduzione a HTMLSistemi - Lezione XIV - Introduzione a HTML
Sistemi - Lezione XIV - Introduzione a HTML
 
Sistemi - Lezione XIII - Blogs e Blogger
Sistemi - Lezione XIII - Blogs e BloggerSistemi - Lezione XIII - Blogs e Blogger
Sistemi - Lezione XIII - Blogs e Blogger
 
Corso manzoni lezione 1-2-3
Corso manzoni   lezione 1-2-3Corso manzoni   lezione 1-2-3
Corso manzoni lezione 1-2-3
 
Sistemi lezione viii - google altri servizi
Sistemi   lezione viii - google altri serviziSistemi   lezione viii - google altri servizi
Sistemi lezione viii - google altri servizi
 
Sistemi lezione xi - picasa web album - social bookmarking - notizie 2
Sistemi   lezione xi - picasa web album - social bookmarking - notizie 2Sistemi   lezione xi - picasa web album - social bookmarking - notizie 2
Sistemi lezione xi - picasa web album - social bookmarking - notizie 2
 
Sistemi lezione x - introduzione al web 2.0 - flickr
Sistemi   lezione x - introduzione al web 2.0 - flickrSistemi   lezione x - introduzione al web 2.0 - flickr
Sistemi lezione x - introduzione al web 2.0 - flickr
 
Sistemi di elaborazione dell'informazione - Google Docs basics
Sistemi di elaborazione dell'informazione - Google Docs basicsSistemi di elaborazione dell'informazione - Google Docs basics
Sistemi di elaborazione dell'informazione - Google Docs basics
 

Último

La seconda guerra mondiale per licei e scuole medie
La seconda guerra mondiale per licei e scuole medieLa seconda guerra mondiale per licei e scuole medie
La seconda guerra mondiale per licei e scuole medieVincenzoPantalena1
 
IL CHIAMATO ALLA CONVERSIONE - catechesi per candidati alla Cresima
IL CHIAMATO ALLA CONVERSIONE - catechesi per candidati alla CresimaIL CHIAMATO ALLA CONVERSIONE - catechesi per candidati alla Cresima
IL CHIAMATO ALLA CONVERSIONE - catechesi per candidati alla CresimaRafael Figueredo
 
Ticonzero news 148.pdf aprile 2024 Terza cultura
Ticonzero news 148.pdf aprile 2024 Terza culturaTiconzero news 148.pdf aprile 2024 Terza cultura
Ticonzero news 148.pdf aprile 2024 Terza culturaPierLuigi Albini
 
Terza cultura w la scienza Italo Calvino.pdf
Terza cultura w la scienza Italo Calvino.pdfTerza cultura w la scienza Italo Calvino.pdf
Terza cultura w la scienza Italo Calvino.pdfPierLuigi Albini
 
Esame finale - riunione genitori 2024.pptx
Esame finale - riunione genitori 2024.pptxEsame finale - riunione genitori 2024.pptx
Esame finale - riunione genitori 2024.pptxfedericodellacosta2
 
La produzione e la gestione degli Open Data
La produzione e la gestione degli Open DataLa produzione e la gestione degli Open Data
La produzione e la gestione degli Open DataGianluigi Cogo
 
biblioverifica ijf24 Festival Internazionale del Giornalismo 2024
biblioverifica ijf24 Festival Internazionale del Giornalismo 2024biblioverifica ijf24 Festival Internazionale del Giornalismo 2024
biblioverifica ijf24 Festival Internazionale del Giornalismo 2024Damiano Orru
 
Storia dell’Inghilterra nell’Età Moderna.pptx
Storia dell’Inghilterra nell’Età Moderna.pptxStoria dell’Inghilterra nell’Età Moderna.pptx
Storia dell’Inghilterra nell’Età Moderna.pptxOrianaOcchino
 

Último (8)

La seconda guerra mondiale per licei e scuole medie
La seconda guerra mondiale per licei e scuole medieLa seconda guerra mondiale per licei e scuole medie
La seconda guerra mondiale per licei e scuole medie
 
IL CHIAMATO ALLA CONVERSIONE - catechesi per candidati alla Cresima
IL CHIAMATO ALLA CONVERSIONE - catechesi per candidati alla CresimaIL CHIAMATO ALLA CONVERSIONE - catechesi per candidati alla Cresima
IL CHIAMATO ALLA CONVERSIONE - catechesi per candidati alla Cresima
 
Ticonzero news 148.pdf aprile 2024 Terza cultura
Ticonzero news 148.pdf aprile 2024 Terza culturaTiconzero news 148.pdf aprile 2024 Terza cultura
Ticonzero news 148.pdf aprile 2024 Terza cultura
 
Terza cultura w la scienza Italo Calvino.pdf
Terza cultura w la scienza Italo Calvino.pdfTerza cultura w la scienza Italo Calvino.pdf
Terza cultura w la scienza Italo Calvino.pdf
 
Esame finale - riunione genitori 2024.pptx
Esame finale - riunione genitori 2024.pptxEsame finale - riunione genitori 2024.pptx
Esame finale - riunione genitori 2024.pptx
 
La produzione e la gestione degli Open Data
La produzione e la gestione degli Open DataLa produzione e la gestione degli Open Data
La produzione e la gestione degli Open Data
 
biblioverifica ijf24 Festival Internazionale del Giornalismo 2024
biblioverifica ijf24 Festival Internazionale del Giornalismo 2024biblioverifica ijf24 Festival Internazionale del Giornalismo 2024
biblioverifica ijf24 Festival Internazionale del Giornalismo 2024
 
Storia dell’Inghilterra nell’Età Moderna.pptx
Storia dell’Inghilterra nell’Età Moderna.pptxStoria dell’Inghilterra nell’Età Moderna.pptx
Storia dell’Inghilterra nell’Età Moderna.pptx
 

Sistemi lezione-ii

  • 1. Sistemi Di Elaborazione Dell’informazione Dott. Antonio Calanducci Lezione II: Software Corso di Laurea in Scienze della Comunicazione Anno accademico 2009/2010
  • 2. wdwdwdwdwdw Tipi di software • Software di sistema (o di base) - es: sistema operativo, drivers, librerie di sistema • Software applicativo - applicazioni o programmi A. Calanducci - Sistemi: Lezione II - Catania, 24/03/2010 2
  • 3. wdwdwdwdwdw Sistema Operativo (SO) • In inglese, Operating System (OS) - e’ quel particolare software responsabile del controllo e della gestione dei componenti hardware di un calcolatore e dei software applicativi che su di esso vengono eseguiti - “intermediario” tra l’utente e le risorse hardware, tra i software applicativi e l’hardware - fornisce un’interfaccia utente (testuale e/o grafica) di alto livello alla macchina A. Calanducci - Sistemi: Lezione II - Catania, 24/03/2010 3
  • 4. wdwdwdwdwdw OS come intermediario A. Calanducci - Sistemi: Lezione II - Catania, 24/03/2010 4
  • 5. wdwdwdwdwdw Obiettivi del SO • Semplicità - rende l’uso del computer più semplice, mascherando la complessità della piattaforma hardware • Efficienza - ottimizza l’uso delle risorse da parte dei software applicativi • Flessibilità - fornisce la visione di una macchina astratta, garantendo un’interfaccia uniforme agli sviluppatori di software applicativo A. Calanducci - Sistemi: Lezione II - Catania, 24/03/2010 5
  • 6. wdwdwdwdwdw Virtualizzazione delle risorse hw • Fornisce agli utenti e applicativi, delle risorse virtuali, più semplici da usare rispetto a quelle reali - es (gestione dei dischi) - risorsa reale: hard disk - risorsa virtuale: file - senza la virtualizzazione, occorrerebbe: - conoscere l’organizzazione fisica del disco e linguaggio di gestione del controller - occuparsi di dare i comandi di gestione motore disco e testina A. Calanducci - Sistemi: Lezione II - Catania, 24/03/2010 6
  • 7. wdwdwdwdwdw Servizi del SO • Esecuzione di applicazioni - caricamento degli applicativi nella memoria centrale - allocazione delle risorse • Accesso ai dispositivi di Input/Output (I/O) - gestione di un’interfaccia logica verso i dispositivi (fornendo operazioni astratte di lettura/scrittura) • Accesso alle memorie di massa - fornisce un’organizzazione logica dei dati sotto forma di cartelle e file (File System) A. Calanducci - Sistemi: Lezione II - Catania, 24/03/2010 7
  • 8. wdwdwdwdwdw Servizi del SO • Controllo accesso - condivisione di risorse da parte di più applicazioni (e utenti nel caso di calcolatori multiutente) - meccanismi di protezione e politiche di risoluzione degli eventuali conflitti • Gestione degli errori - protezione del sistema da parte di applicazioni mal funzionanti - risoluzione di malfunzionamenti causati da problemi hardware A. Calanducci - Sistemi: Lezione II - Catania, 24/03/2010 8
  • 9. wdwdwdwdwdw Vantaggi di un SO • Sonolegati alla possibilità di definire un’interfaccia standard alle risorse fisiche (hardware) cosicché sia possibile: - sviluppare programmi (=software applicativo) in modo semplice, modulare ed indipendente dallo specifico calcolatore - aggiornare il software di base e l’hardware in modo trasparente ai programmi applicativi e all’utente A. Calanducci - Sistemi: Lezione II - Catania, 24/03/2010 9
  • 10. wdwdwdwdwdw Caratteristiche di un SO moderno • multitasking - esecuzione di più applicativi contemporaneamente • supporto multiutente - più utenti hanno la propria “home” con file e documenti separati • memoria virtuale - uso del disco in caso di esaurimento memoria • protezione della memoria - impedisce ad un programma di accedere alla memoria di un’altro programma in esecuzione A. Calanducci - Sistemi: Lezione II - Catania, 24/03/2010 10
  • 11. wdwdwdwdwdw Sistemi operativi popolari • Proprietari: - Microsoft - MS-DOS, Windows (3.1/95/98/ME/NT/2009/XP/Vista/7) - Apple - Mac OS Classic, Mac OS X (Panther/Leopard/Snow Leopard) • Liberi (basati su Unix): - Ubuntu, Fedora, Suse, Slackware, Debian, CentOS, Red Hat A. Calanducci - Sistemi: Lezione II - Catania, 24/03/2010 11
  • 12. wdwdwdwdwdw Windows • E’ il sistema operativo più diffuso • nasce nel 1984 come “interfaccia grafica” per il sistema operativo di Microsoft MS-DOS venduto con i PC-IBM • La versione corrente: - 22 Ottobre 2009: Windows 7 - basato sul kernel di Vista - molti miglioramenti “under-the-hood” (dietro le quinte) - diverse varianti: - http://windows.microsoft.com/it-IT/windows7/products/ compare A. Calanducci - Sistemi: Lezione II - Catania, 24/03/2010 12
  • 13. wdwdwdwdwdw Linux • sistema operativo libero di tipo Unix • integrazione di: - kernel Linux - cuore di un sistema operativo - scritto da Linus Torvalds nel 1991 - elementi del sistema GNU - GNU is Not Unix, progetto di Richard Stallman per la creazione di software di sistema liberi - software libero A. Calanducci - Sistemi: Lezione II - Catania, 24/03/2010 13
  • 14. wdwdwdwdwdw Mac OS • 1984:Macintosh: il primo computer ad avere un’interfaccia grafica e un mouse - il SO è il Mac OS (Macintosh Operating System) • 2001: Mac OS X (si pronuncia “ten”) - completamente riscritto e basato su Unix - è il SO dei moderni Mac - la versione attuale è - Mac OS X 10.6 Snow Leopard A. Calanducci - Sistemi: Lezione II - Catania, 24/03/2010 14
  • 15. wdwdwdwdwdw Interfaccia (utente) grafica (GUI) • Grafical User Interface (GUI) - fornisce all’utente un insieme di oggetti grafici attraverso i quali poter interagire con il computer - in contrapposizione ad un’interfaccia a linea di comando (Command Line Interface: CLI) - interazione via comandi testuali • Elementi di un’interfaccia grafica: - widgets (congegno) A. Calanducci - Sistemi: Lezione II - Catania, 24/03/2010 15
  • 16. wdwdwdwdwdw Elementi di una GUI • Icòne • Desktop • Pulsanti • Finestre • Combo box • List box • Drop Down list A. Calanducci - Sistemi: Lezione II - Catania, 24/03/2010 16
  • 17. wdwdwdwdwdw Elementi di una GUI • Text box • Check box • Radio button • Slider • Scrollbar (verticale e orrizzontale) • Tool bar (barra degli strumenti) • Menu e Menu bars • Status bar • Dialog Box A. Calanducci - Sistemi: Lezione II - Catania, 24/03/2010 17
  • 18. wdwdwdwdwdw Elementi di una GUI • tool tip • tab • label (etichetta) • progress bar • dock • spinner • tree (albero) • grid (griglia) A. Calanducci - Sistemi: Lezione II - Catania, 24/03/2010 18
  • 19. wdwdwdwdwdw Interfaccie grafiche popolari • Anche chiamati Desktop Environments • Windows Aero (Windows Vista) - http://www.microsoft.com/italy/windows/products/ windowsvista/features/details/aero.mspx • Aqua (Mac OS) - http://en.wikipedia.org/wiki/Aqua_(user_interface) • KDE (Linux, Win/Mac experimental), Gnome (Linux) - http://it.wikipedia.org/wiki/KDE - http://it.wikipedia.org/wiki/Gnome A. Calanducci - Sistemi: Lezione II - Catania, 24/03/2010 19
  • 20. wdwdwdwdwdw Programma (per calcolatore) - Un programma per calcolatore è l’implementazione di un algoritmo in un linguaggio adatto ad essere eseguito da un computer - algoritmo: è una sequenza logicamente ordinata di passi (istruzioni) che consente di risolvere un data problema - algoritmi descritti con diagrammi di flusso - Linguaggio di programmazione è un linguaggio formale, dotato di lessico, sintassi e semantica, utilizzabile per l’implementazione di un algoritmo. - C, Java, C++, Basic, Assembly, Objective-C, Pascal A. Calanducci - Sistemi: Lezione II - Catania, 24/03/2010 20
  • 21. wdwdwdwdwdw Diagramma di flusso: somma A. Calanducci - Sistemi: Lezione II - Catania, 24/03/2010 21
  • 22. wdwdwdwdwdw Esempio di sorgente (in C) #include <stdio.h> #include <stdlib.h>  int main() { int z; int x = 0, y = 0;   printf("Inserisci il primo valore: "); scanf("%d", &x);   printf("Inserisci il secondo valore: "); scanf("%d", &y);   z = x + y;   printf("La somma dei due numeri e' la seguente: %dn", z); return 0; } A. Calanducci - Sistemi: Lezione II - Catania, 24/03/2010 22
  • 23. wdwdwdwdwdw Programma eseguibile • un programma binario (o eseguibile) è direttamente eseguibile da un calcolatore • un programma scritto in un linguaggio di programmazione può essere eseguito solo utilizzando un compilatore o un interprete - compilatore: è un programma che traduce il codice sorgente da un linguaggio ad alto livello in un codice binario (=programma binario) - interprete: è un programma in grado di eseguire “al volo” un altro programma a partire dal codice sorgente • codice sorgente (o sorgente): insieme di istruzioni in un dato linguaggio di programmazione A. Calanducci - Sistemi: Lezione II - Catania, 24/03/2010 23
  • 24. wdwdwdwdwdw Software applicativo • Applicazione:l’insieme di un programma eseguibile (o più eseguibili) con tutte le risorse software (librerie, file di configurazione, immagini, suoni) necessarie per offrire un “servizio” all’utente finale • Classificazione: - a seconda del tipo di licenza concessa dall’autore verso il fruitore (software libero vs software proprietario) - a seconda dell’uso a cui è destinato A. Calanducci - Sistemi: Lezione II - Catania, 24/03/2010 24
  • 25. wdwdwdwdwdw Open Source (sorgente aperto) • Indicaun software i cui software ne permettono e ne favoriscono il libero studio e l’eventuale apporto di modifiche da parte di programmatori indipendenti - vantaggio: la collaborazione di più parti permette al prodotto finale di raggiungere una complessità maggiore di quanto potrebbe ottenere un singolo gruppo di lavoro • Famosi software open source: - Mozilla Firefox, VideoLan Client (VLC), OpenOffice, Gimp A. Calanducci - Sistemi: Lezione II - Catania, 24/03/2010 25
  • 26. wdwdwdwdwdw Software libero (free software) • E’ un software pubblicato con una licenza che permette a chiunque di utilizzarlo e che ne incoraggia lo studio, le modifiche e la redistribuzione • si contrappone al software proprietario • enfasi sulla libertà dell’utente nell’uso • è anche open source (pre-requisito) • è soggetto ad una licenza d’uso: - gli autori precedenti devono essere menzionati - bisogna distribuire anche le modifiche • Esempio più eclatante: GNU/Linux A. Calanducci - Sistemi: Lezione II - Catania, 24/03/2010 26
  • 27. wdwdwdwdwdw Altre tipologie di software • Shareware: licenza che consente di utilizzare il software per un determinato periodo di tempo, dopo il quale è necessario pagare un costo per proseguire - dopo la scadenza, ancora usabile - nag screen: periodo d’uso restante - es: Winzip • Trial (prova): software completamente funzionante per un dato periodo di tempo, dopo il quale si ha l’interruzione del funzionamento - è necessario l’acquisto della licenza (codice seriale) • Demo: software con ridotte capacità rispetto alla versione completa (full); ad es: impossibilità di salvataggio, di stampa A. Calanducci - Sistemi: Lezione II - Catania, 24/03/2010 27
  • 28. wdwdwdwdwdw Categorie di applicazioni • Desktop (o produttività personale) - elaboratore di testi, fogli di calcolo, presentazioni, fotoritocco, archiviazione (database), grafica artistica/ tecnica, musica, agenda, PIM (Personal Information Manager) • Education - applicazioni utili per le scuole, sistemi di autoapprendimento • Games • Software development A. Calanducci - Sistemi: Lezione II - Catania, 24/03/2010 28
  • 29. wdwdwdwdwdw Categorie di applicazioni • Business o enterprise (applicazioni aziendali) - Financial - CRM (Customer Relationship management) - ERP (Enterprise Resource Planning) - contabilità, bilancio, magazzino, fornitori, clienti, produzione, vendite, marketing, personale, controllo di gestione - OLAP (Online Analytical Processing) - Project Management - E-commerce • Science - applicazioni nei campi della scienza applicata (IA, Astronomia, Biologia, Fisica, Chimica, etc etc etc) A. Calanducci - Sistemi: Lezione II - Catania, 24/03/2010 29
  • 30. wdwdwdwdwdw Applicazioni desktop popolari • Office automation: - Microsoft Office (Win/Mac), OpenOffice.org (Win/Mac/ Linux), iWork (Mac) • Internet Browsers: - IE (Win), Mozilla Firefox, (Win/Mac/Linux), Opera, Google Chrome, Camino, Safari (Mac) • Client Mail (posta elettronica) - Outlook/Outlook Express (Win), Apple Mail, Mozilla Thunderbird(Win/Mac/Linux) A. Calanducci - Sistemi: Lezione II - Catania, 24/03/2010 30
  • 31. wdwdwdwdwdw Applicazioni desktop popolari • Instant Messaging - MSN/Windows Live Messenger, (Win/Mac) Skype(Win/Mac/ Linux), ICQ(Win/Mac), Mercury (Win/Mac/Linux), aMSN (Win/Mac/Linux), Adium (Mac), iChat (Mac), Pidgin (Win/ Mac/Linux) • Compression - Winzip/Winrar (Win), Stuffit Expander (Win/Mac), unzip/gzip/ tar (Mac/Linux) • Masterizzazione - Nero Burning ROM (Win), Roxio Toast (Mac), cdrecord (Linux) A. Calanducci - Sistemi: Lezione II - Catania, 24/03/2010 31
  • 32. wdwdwdwdwdw Applicazioni desktop popolari • Multimedia player - Windows MPlayer (Win), VideoLan Client (Win/Mac/Linux), RealPlayer, (Win/Mac/Linux) DivX Player, Quicktime (Win/ Mac), iTunes (Win/Mac), XBMC (Win/Mac/Linux) • Peer-2-peer - eMule, aMule, azureus, transmissions • Visualizzazione PDF - Adobe Acrobat Reader (Win/Mac/Linux), Apple Preview (mac) • Sviluppo applicazioni - Eclipse (Win/Mac/Linux), Netbeans (Win/Mac/Linux) A. Calanducci - Sistemi: Lezione II - Catania, 24/03/2010 32
  • 33. wdwdwdwdwdw Applicazioni pro • Adobe Creative Suite (Win/Mac) - Photoshop, Illustrator, InDesign, Flash, Acrobat, Dreamweaver, Fireworks, After Effects, Premiere, Lightroom • CAD (Computer Aided Design) - Autocad (Win), Archicad (Win/Mac), Maya, Vector Works • Apple Pro Software: - Final Cut, Logic, Aperture, Motion A. Calanducci - Sistemi: Lezione II - Catania, 24/03/2010 33
  • 34. wdwdwdwdwdw File System • Astrazione attraverso la quale sono rappresentati gli oggetti necessari alla memorizzazione, organizzazione gerarchica, manipolazione, navigazione, l’accesso e la lettura dei dati su un dispositivo di archiviazione - es: unità di disco, file, cartelle, percorsi (path) • Lacreazione del file system su un dispositivo di archiviazione di massa viene generato al momento della formattazione. • File System popolari: - FAT/NTFS (Windows), HPFS (Mac OS), ext/raiserfs (Unix) A. Calanducci - Sistemi: Lezione II - Catania, 24/03/2010 34
  • 35. wdwdwdwdwdw Files e directories • Un file (archivio) è un contenitore di informazione digitalizzata • I dati codificati in un file sono organizzati come una sequenza di bytes, immagazzinati come un solo elemento su una memoria di massa, all’interno di un File System su quella data di memoria di massa - fisicamente può essere scritto su più zone (blocchi, anche non contigui) del supporto che lo ospita - il SO si occupa di rendere trasparente alle applicazioni la suddivisione fisica dei file e di gestire recupero e lettura/scrittura dei blocchi fisici • ogni archivio ha un nome (filename) • i files sono organizzati in directories (o cartelle) in uno spazio di nomi gerarchico A. Calanducci - Sistemi: Lezione II - Catania, 24/03/2010 35
  • 36. wdwdwdwdwdw Path assoluti e relativi • Path (percorso): un nome che contiene in forma esplicita informazioni sulla posizione dei file all’interno del file system: - es: C:Documents and SettingsAntonioDesktopLezione2.pdf • Path assoluto: - indica la posizione di un file/cartella a partire dalla radice del file system • Path relativo: - indica la posizione di un file/cartella a partire dalla directory corrente - es: DesktopLezione2.pdf (se la dir corrente è Antonio) • Separatori di path: slash (/) in Unix/Mac OS, backslash () Windows A. Calanducci - Sistemi: Lezione II - Catania, 24/03/2010 36
  • 37. wdwdwdwdwdw Formato dei files • Ilcontenuto di un file è conforme ad un particolare formato - una o più applicazioni in grado di interpretare e/o modificarne il contenuto (“aprire” un file) • Identificazione del formato: - estensione del file (DOS, Windows) - i tre caratteri finali del filename dopo il punto - metadati salvati dentro il file (Mac OS) - primi byte (magic number) del file (Unix, Linux) A. Calanducci - Sistemi: Lezione II - Catania, 24/03/2010 37
  • 38. wdwdwdwdwdw Files • file ASCII vs file binari - ASCII: file di testo, una sequenza di caratteri pura e semplice, interpretabile da qualsiasi SO - binari: interpretabili da un ben determinato applicativo in una determinata piattaforma - non intellegibili direttamente dall’uomo • Operazioni sui file: - apertura/chiusura - lettura/scrittura A. Calanducci - Sistemi: Lezione II - Catania, 24/03/2010 38
  • 39. wdwdwdwdwdw Tipi di files • File documenti - CSV (Comma Separated Values), TXT (file di testo, ASCII), RTF (Rich Text Format), DOC (MS Word), XLS (MS Excel), PPT (MS PPT), MDB (MS Access), PDF (Adobe Acrobat) • File composti da linguaggi di markup - HTML, XML, CSS, DOCX/XLSX/PPTX (Office 2007) • Codice sorgente - BAS (Basic), C, CPP (C++), Java, PAS (Pascal), PY (Python), PHP, ASP/JSP (Active/Java Server Pages) A. Calanducci - Sistemi: Lezione II - Catania, 24/03/2010 39
  • 40. wdwdwdwdwdw Tipi di files • Archivi compressi: - ZIP, RAR, CAB (Windows), SIT (StuffIT), TAR (Unix), GZ (Gzip), BZ2 (Bzip2) • File grafici - JPG, TIF, GIF, PNG, BMP -- (grafica raster) - AI (Adobe Illustrator), CDR (Corel Draw), DWG/DXF (Autocad), SVG (Scalable Vector Graphics) --(gratica vettoriale) A. Calanducci - Sistemi: Lezione II - Catania, 24/03/2010 40
  • 41. wdwdwdwdwdw Tipi di files • File Audio - AC3, MP3, MID (Midi), AAC (Advanced Audio Coding), WAV, AIFF, RA (Real Audio), OGG (Vorbis), MKA (Matroska Audio) • File video - AVI, MOV, MKV (Matroska Video), RM (Real Media), 3GP, (cellulari) SWG (Flash), MPG (Mpeg), MP4, WMV (Windows Media Video • File eseguibili - EXE, BAT, JAR (Java), DLL (Librerie win), ELF, (Unix) Mach-O (Mac) • altri - INI (inizializzazione win), SYS (file di sistema win) A. Calanducci - Sistemi: Lezione II - Catania, 24/03/2010 41