sabato 23 ottobre 2010

EVENTI:Linux Day 2010

Salve a tutti,mi scuso(come sempre) per il lungo intervallo che c'è stato tra un articolo e l'altro!
Come molti di voi sapranno il 23 Ottobre 2010(oggi =) ) si è tenuto il Linux Day a Modena,purtroppo non sono potuto andare a quello di Modena(già è stato convincere i miei genitori a svegliarsi alle 7:00 il Sabato), sono però riuscito ad andare a quello che si è tenuto a Roma.



Io e "Dexter" ci siamo inconrati a "LaSapienza"(un'università di Roma,dove si è svolto l'evento),dopo lunghissime attese,Dexter si è presentato,con un lieve ritardo(alle 10:15 circa),ovviamente mentre lo aspettavo ho fatto in tempo a seguire un evento che è iniziato alle 10:00 : "Open Source and Distributed system"
che è stato tenuto da "Giorgio Desideri";

Giorgio Desideri,oltre ad essere riuscito a dare una panoramica completa sull'Open Source*,ci ha spiegato i vantaggi dei sistemi Open Source...
Ovviamente tra tutti i vantaggi c'era anche la sicurezza!

*Open Source:Software Libero,deriva dall'inglese "open"(=libero,aperto) e "source"(=codice,sorgente).

Vorrei approfondire un pò questo argomento:

L'Open Source è un "insieme" di libertà che un utente ha su un software/hardware,se avete notato ho detto anche hardware:perchè?

Perchè l'hardware è un'aspetto importantissimo per l'informatica e,al contrario di come molte persone pensano,è possibile renderlo Open Source(prendiamo come esempio l'Arduino);
Quindi possiamo dire che l'Open Source ha come libertà principali:
  • Libertà di distribuzione:è possibile distribuire il software gratuitamente e senza aver bisogno di licenze(o quasi)!
  • Libertà di modificare:è infatti possibile avere libero accesso al codice sorgente di tutti i programmi     "Open Source" e adattarlo alle nostre esigenze;
  • Libertà di eseguire:infatti è possibile eseguire il programma per quasiasi scopo(didattico,ludico,etc..);
Noterete che nel primo punto ho messo tra le parentesi un "o quasi",perchè?
Perchè anche se il software è "libero" bisogna sottostare ad alcuni vincoli:

  • I precedenti autori del software devono essere menzionati anche nelle versione "ritoccate" del software;
  • Non è possibile applicare una licenza d'uso INCOMPATIBILE con la licensa originale o che vada contro le norme della licenza stessa,anche se il software è stato modificato;
  • Normalmente, nella licenza, vi è una clausola che sancisce la non usabilità del software se non si rispetta la licenza d'uso o se una o più norme della stessa licenza non sono valide per termini di legge;
 Secondo Richard Stallman* e la FSF** un software può essere considerato Open Source solo se garantisce le 4 libertà fondamentali:

  • Libertà 0:
    Libertà di eseguire il programma per qualsiasi scopo;



  • Libertà 1:
    Libertà di studiare il programma e modificarlo;



  • Libertà 2:
    Libertà di ridistribuire copie del programma in modo da aiutare il prossimo;



  • Libertà 3:
    Libertà di migliorare il programma e di distribuirne pubblicamente i miglioramenti, in modo tale che tutta la comunità ne tragga beneficio;


Per altre informazioni su la FSF** clickate qui!

*Richard Stallman: è un programmatore/hacker ed è uno dei principali esponenti del movimento del software libero.
**FSF(Free Software Foundation):una "società" fondata da Richard Stallman che si occupa di eliminare le restrizioni sulla copia, sulla redistribuzione, sulla comprensione e sulla modifica dei programmi per computer.


Subito dopo,alle10:35,siamo andati a "DNS:questo sconosciuto" presentatoci da Giuseppe Arrabito che ha illustrato in modo forse un pò troppo "pesante",infatti si è limitato a darci la definizione e a seguire una serie di diapositive con dei testi lunghissimi,ma apparte questo è stato soddisfacente e completo nell'esporre gli argomenti(mentre "Dexter giocava con il MIO portatile a "Metal Blob Soldier(BLOB WARS) ) ".

Dopo una(quasi assente) "PAUSA CAFFE' " sono andato(Dexter mi ha abbandonato,hehehe....)  a "Tecniche di programmazione del kernel",presentato in modo OTTIMO dal signor "Daniel P. Bovet"
che ha spiegato in modo semplice,diretto e completo (con qualche dimostrazione pratica e qualche esempio) come funziona una "compilazione".

Questo è un'altro argomento che vorrei apprifondire,visto che mi ha "colpito" molto!

Iniziando dal principio quando un programmatore crea  un software deve creare un codice,un codice che viene scritto in un linguaggio di programmazione,uno dei linguaggi di programmazione più diffusi è il C.
Quando si crea un codice sorgente*,non si sta comunicando "direttamente" con la macchina:infatti,come sappiamo (credo) tutti la macchina riconosce solo il suo linguaggio:il linguaggio "BINARIO"(si,è quella sfilza infinita di 0 ed 1).
I linguaggi di programmazione vengono quindi "tradotti" dal linguaggio ad "alto livello**"(come ad esempio il C) gradualmente fino a quello di "basso livello***".
Quindi possiamo dire che il C viene tradotto in binario,ma per fare questa "traduzione" abbiamo bisogno di una via di mezzo:l'assembly****.

Ecco uno schema che rende l'idea:
Quindi possiamo dire che un programma quando viene compilato deve:
  • Essere scritto in un linguaggio di aldo livello(può anche essere scritto direttamente in assembly o in binario,ma è un pò più complicato,hehehe...).
  • Compilato.Viene tradotto in assembly.
  • Viene inviato alla macchina in linguaggio macchina(=binario).
*Codice Sorgente:il programma nella sua forma "base":solo il codice.
**Alto Livello:tutti quei linguaggi di programmazione con una "semplicità" in termini di PAROLE(esempio:C,C++,JAVA,etc...)
***Basso Livello: tutti quei linguaggi di programmazione che si avvicinano molto al linguaggio macchina(=binario),come ad esempio l'assembly.
****Assembly:è il linguaggio di programmazione più vicino a quello "macchina"(il linguaggio binario).

Purtroppo non siamo riusciti ad andare agli "eventi" pomeridiani,quindi abbiamo partecipato solo a questi;
Spero che troviate utiel questo articolo(anche se più che articolo è il riassunto della giornata di oggi);
Vi ricordo inoltre che,nel caso avessi sbagliato qualunque cosa,è possibile comunicarmelo:provvederò subito(sono ben accetti anche le "recensioni" degli eventi pomeridiani,a cui noi non siamo potuti andare)!

Nessun commento:

Posta un commento