Linguaggi di programmazione avanzati: C++ F.S. Cafagna

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Linguaggi di programmazione avanzati: C++ F.S. Cafagna"

Transcript

1 Linguaggi di programmazione avanzati: C++ F.S. Cafagna

2 Layout La "grammatica di base" del C++: Cenni storici ed introduzione agli strumenti di base per la programmazione in Linux echo e #include <iostream> \n int main(){std::cout << Ciao << std::endl; return 0;} > my_first.cpp; make my_first;./my_first I tipi di base int, float, double, char, fscaf, facsf etc. etc. Le espressioni e gli "statements int a=b=c=d=0; d++; --d; a+=c; Le funzioni int do_nothing(int a){return int(a++);} I puntatori e le "reference Argh!!!!!!!!!!!!! XXII ciclo 2

3 Layout Funzionalita' avanzate I tipi aggregati: Structures e Union Ma perche non posso avere tutto a portata di mano? Function overloading void Voglio_la_millefoglie(fragole *f) void Voglio_la_millefoglie(frutti_di_bosco *f) void Voglio_la_millefoglie(cigliege *f) void Voglio_la_millefoglie(pesche *f, bool no_chantilly) XXII ciclo 3

4 Layout Namespaces namespace Girls{ void Print(){ std::cout << "Il mio regno per quello che sta' nel pigiama di Brad Pitt" << std::endl;} } namespace Boys{ void Print(){std::cout << "Il mio regno per quello che copre l accappatoio di Halle Berry " << std::endl;} } using namespace Girls; int main(){ Print(); Boys::Print(); return 0; } Introduzione alle classi User-Definited Types!!!!!!!!!!!! XXII ciclo 4

5 Layout Le classi Generalita Grammatica di base Membri delle classi: cereatori, distruttori, metodi ed "helper functions Metto assieme dati ed operazioni sui dati in un tipo definito dall utente. Controllo di accesso ai dati e metodi: public, private. Se non sai dove mettere le mani, non toccare!!! Operatori e "overloading Pera c,b,a; a=b+c;????????????? for(int i=0;i<10;++i) o for(int i=0;i<10;i++)? Templates Possiamo scrivere delle classi generiche? Valide per ogni tipo? Esempi ed esercizi Funzionalita' avanzata delle classi (4 ore) Classi derivate Pere, Mele, Albicocche!!!! Sono tutti tipi Frutta! Ereditarieta' e polimorfismo Tutto diventa virtuale! Una Disneyland per gli amanti di punatori e reference!!!! Esempi ed esercizi XXII ciclo 5

6 Layout Standard Template Library: STL e cenni di programmazione Object Oriented Introduzione e generalita' Panoramica degli oggetti della STL piu' usati: string and containers Esempi di "structural pattern" piu' usati Applicazioni alla fisica delle alte energie Framework di analisi: ROOT XXII ciclo 6

7 Introduzione agli strumenti di base per la programmazione in Linux

8 Linux: Cenni Breve introduzione a Linux Cosa è? Dove si trova? Come si usa? Che me ne faccio? Breve introduzione agli strumenti di programmazione Quali sono gli strumenti per compilare? Quali sono gli strumenti per controllare? Dove sono le librerie? Dove sono tutte le altre diavolerie? XXII ciclo 8

9 Come si fa cosa? Linux: Cenni Come faccio a sapere dove sono le cose? Come faccio a sapere cosa stà combinando il mio programma? Come creo un codice sorgente? Come lo compilo? Come lo lancio? Come lo debuggo? XXII ciclo 9

10 Breve introduzione: Cosa e? Cosa è? Linux is a free Unix type operating system originally created by Linus Torvalds with the assistance of developers around the world. Developed under the GNU General Public License, the source code for Linux is freely available to everyone XXII ciclo 10

11 Breve introduzione: Cosa e? La prima versione del kernel risale al 1994 E POSIX compliant POSIX??? Portable Operating System Interface è una standardizzazione di Unix. ANSI C IEEE POSIX FIPS X/Open Ogni standard definisce l interfaccia ( flavour ) XXII ciclo 11

12 Breve introduzione: Cosa e? GNU GPL??? E la licenza che permette il libero utilizzo del software a patto di fornirlo con la sorgente. Il software è libero ma non gratuito, l utente ha la libertà di modificarlo GNU???? Gnu is Not Unix!!!! Fondata nel 1984 per sviluppare un sistema operativo Unix-like completamente libero Non è Linux. L associazione, sotto l egida della Free Software Foundation (FSF), mantiene il kernel di Linux ed una serie di applicativi fondamentali, ma non distribuisce il sistema. XXII ciclo 12

13 Breve introduzione: Dove si trova? Oramai anche nelle macchinette del caffè Data la complicazione del sistema è stato tradizionalmente organizzato in distribuzioni. La prima a diffondersi è stata la Slackware. Ce ne sono di libere e proprietarie, ognuna con caratteristiche diverse ed orientate ad un mercato particolare. Le più diffuse: Debian Slackware RedHat (Fedora Core, Enterprise) Suse Mandrake Scientifc Linux Gentoo XXII ciclo 13

14 Breve introduzione: Dove si trova? Di solito si posso scaricare le immagini ISO dalla rete La facilità di installazione dipende dalla distribuzione così come il sopporto per l hardware XXII ciclo 14

15 Breve Intro.: Che me ne faccio? Pros: Posso avere un server a poco prezzo. Sviluppatori ovunque Diffusione di applicativi e documentazione Cons: Manutenzione ed installazione da esperti Continue release Difficoltà a tener dietro agli upgrade hardware se non c e una politica di supporto dell azienda Causa assuefazione XXII ciclo 15

16 Breve Intro: Come si usa? Seguire le istruzioni della distribuzione! Immettere username e password... Le interfacce sono diverse. Essenzialmente: X-windows Terminale ANSI XXII ciclo 16

17 Breve Intro: Come si usa? X-windows XFree86. Disponibile per varie piattaforme. Open source implemetazione del protocollo Vi serve un windows manager : Twm Fwm Enlightenment AfterStep. Sarebbe meglio avere un desktop manager (Windows insegna.): KDE GNOME. XXII ciclo 17

18 Breve Intro: Come si usa? Ci serve una shell E una command line interpreter che legge l user input ed esegue il comando richiesto. user input??? Puo essere il terminale o un file: script E la nostra interfaccia di base con il sistema operativo. Le shell più diffuse: sh: Bourne shell csh: C shell ksh: Korn shell tcsh: Enanched C shell bash: Bourne Again shell XXII ciclo 18

19 Breve Intro: Come si usa? Dove sono i files? In un filesystem organizzato gerarchicamente in direttori e files. L albero gerarchico ( tree ) nasce da una radice ( root ). Il nome della root è un singolo carattere: / I direttori sono files che contengono altri direttori e files. Sono dei files che contengono le informazioni sul loro contenuto: filenames Filenames. Sono i nomi (files) in una directory. I nomi possono contenere tutti i caratteri tranne lo slash : /, ed il blanck (non è più così ma sarebbe meglio evitarlo: /usr/local/bin/mio_eseguibile_.exe /home/corsovme/.filenascosto /home/corsovme/prova.exe.old_version Il punto iniziale definisce rende invisibile il file XXII ciclo 19

20 Breve intro: Come si usa? Come è fatto l albero del filesystem? / - - /bin -- Ci sono tutti gli eseguibili indispensabili - /boot -- Files necessari al boot del sistema - /home -- Le home directories - /usr -- Tutto quello che serve ad un utente - /usr/local binari, librerie, include files etc. etc. etc. - /usr/bin - /usr/lib - /usr/include - /include -- Include files di sistema - /lib -- Librerie di sistema e moduli dei driver - /etc -- Files di configurazione del sistema -. XXII ciclo 20

21 Breve intro: Come si usa? Come mi muovo nel filesystem? cd : change directory ls : list directory Come posso sapere cosa c è nei files? cat : mostra tutto il contenuto di un file sullo standard output more, less: mostra il contenuto di un file sullo standard output in pagine del formato del terminale editandoli!!! XXII ciclo 21

22 Breve intro: Come si usa? Editors: nano, pico : semplici editors alfanumerici emacs, xemacs: more than editors: a way of life vi: no comment! Manualistica Tutta online, arriva con il sistema: man : il manuale di unix, diviso in 8 capitoli omnicomprensivo info : il sistema di documentazione per ipertesti della GNU. XXII ciclo 22

23 Breve intro: Come si usa? Cominciamo!!!! Collegatevi a: asterix.ba.infn.it Username: corsocpp Password: corsocpp Spostatevi in: studenti Create dei direttori con i vostri cognomi: mkdir my_last_name XXII ciclo 23

24 Breve intro. Alla programmazione Quali sono gli strumenti per compilare? gcc. La suite di compilazione della GNU: GNU Compiler Collection cpp: il precompilatore as : l assemblatore ld : il linker. XXII ciclo 24

25 Breve intro. Alla programmazione Quali sono gli strumenti per controllare? gdb: Il debugger gnu ddd: Front end grafico al gdb.. gprof: profiler della GNU XXII ciclo 25

26 Breve intro. Alla programmazione Dove sono le librerie? Di solito in /lib, /usr/lib, /usr/local/lib Possono essere ovunque. (parameteri -L l). E gli include? Idem come sopra, nei corrispettivi direttori: include XXII ciclo 26

27 Breve intro. Alla programmazione Due parole su make: Determina automaticamente cosa va compilato e come, sulla base di dipendenze e regole che sono contenute in un file ASCII. L azione da effettuare è chiamata target Un target deve essere seguito da : Per ogni target è possibile specificare altri target da cui dipende. L azione da effettuare deve essere preceduta da un simbolo di tabulazione Ci sono delle regole implicite. Proviamo con: info make XXII ciclo 27

28 Breve intro. Alternative E per chi ama Windows????? Tutti i tools sono disponibili anche per Win Provate cygwin: Fate prima, avrete a disposizione una completa suite di tools unix Xemacs: Dev-c++, IDE (Integrate Development Enviromnent) per C++ in Win: XXII ciclo 28

Introduzione agli strumenti di base per la programmazione in Linux

Introduzione agli strumenti di base per la programmazione in Linux Introduzione agli strumenti di base per la programmazione in Linux Linux: Cenni Breve introduzione a Linux Cosa è? Dove si trova? Come si usa? Che me ne faccio? Breve introduzione agli strumenti di programmazione

Dettagli

Il software del PC. Il BIOS

Il software del PC. Il BIOS Il software del PC La parola software è un neologismo che è stato coniato in contrapposizione all hardware (ferraglia). L hardware si può prendere a calci, contro il software si può solo imprecare. Il

Dettagli

Linguaggi di programmazione avanzati: C++ F.S. Cafagna

Linguaggi di programmazione avanzati: C++ F.S. Cafagna Linguaggi di programmazione avanzati: C++ F.S. Cafagna Layout La "grammatica di base" del C++: Cenni storici ed introduzione agli strumenti di base per la programmazione in Linux echo e #include

Dettagli

Il Sistema Operativo Linux

Il Sistema Operativo Linux Il Sistema Operativo Linux Sistema Linux storia Unix deriva da Unix open source software libero software open source GNU, GPL, LGPL storia Linux amministrazione struttura concetti base comandi shell Unix

Dettagli

Prima Esercitazione. Unix e GNU/Linux. GNU/Linux e linguaggio C. Stefano Monti smonti@deis.unibo.it

Prima Esercitazione. Unix e GNU/Linux. GNU/Linux e linguaggio C. Stefano Monti smonti@deis.unibo.it Prima Esercitazione GNU/Linux e linguaggio C Stefano Monti smonti@deis.unibo.it Unix e GNU/Linux Unix: sviluppato negli anni '60-'70 presso Bell Labs di AT&T, attualmente sotto il controllo del consorzio

Dettagli

Grammatica di base: Pointers

Grammatica di base: Pointers Grammatica di base: Pointers Esistono I puntatori a funzioni. Bisogna esplicitare esattamente il tipo di ritorno e il tipo di argomento. Per evitare ambiguità con il prefisso * nel declarator, il nome

Dettagli

Università degli Studi di Verona. Linux Ubuntue ilcompilatorec. Dicembre 2014 - Sergio Marin Vargas. Dipartimento di Biotecnologie

Università degli Studi di Verona. Linux Ubuntue ilcompilatorec. Dicembre 2014 - Sergio Marin Vargas. Dipartimento di Biotecnologie Università degli Studi di Verona Dipartimento di Biotecnologie Laurea in Biotecnologie Corso di Informatica2014/2015 Linux Ubuntue ilcompilatorec Dicembre 2014 - Sergio Marin Vargas Caratteristiche di

Dettagli

FASE DEBUGGING: Compiler Linker. controllando che la voce Genera le informazioni per il debug cioè. "Generate debugging information"

FASE DEBUGGING: Compiler Linker. controllando che la voce Genera le informazioni per il debug cioè. Generate debugging information FASE DEBUGGING: Prima della compilazione, si devono inserire 1 nel progetto informazioni per il debug cioè si devono visualizzare le opzioni di progetto seguendo il percorso: controllando che la voce Genera

Dettagli

Castelli Flavio - 2009. Panoramica su Linux

Castelli Flavio - 2009. Panoramica su Linux @ Un po' di storia Castelli Flavio - 2009 Linus Torvalds Un po' di storia D: Chi è Richard Stallman? R: Uno degli hacker più talentuosi del MIT D: Qual'era il suo problema? R: la progressiva chiusura del

Dettagli

Il web server Apache Lezione n. 3. Introduzione

Il web server Apache Lezione n. 3. Introduzione Procurarsi ed installare il web server Apache Introduzione In questa lezione cominciamo a fare un po di pratica facendo una serie di operazioni preliminari, necessarie per iniziare a lavorare. In particolar

Dettagli

PAD: istruzioni di laboratorio

PAD: istruzioni di laboratorio PAD: istruzioni di laboratorio Alberto Cappadonia Emanuele Cesena Politecnico di Torino Dip. Automatica e Informatica Per cominciare a lavorare effettuare il logon con la matricola (sxxxxxx) pagina del

Dettagli

Unix e GNU/Linux Eugenio Magistretti emagistretti@deis.unibo.it Prima Esercitazione Fork Stefano Monti smonti@deis.unibo.it Unix: sviluppato negli anni '60-'70 presso Bell Labs di AT&T, attualmente sotto

Dettagli

Introduzione ecos. Agenda. Giovanni Perbellini

Introduzione ecos. Agenda. Giovanni Perbellini Introduzione ecos Giovanni Perbellini Agenda Introduzione ecos Toolchain Download codice sorgente Binutils GCC/G++ Newlib GDB/Insight Compilazione toolchain Selezione Target Compilazione ecos Configtool

Dettagli

MODEM USB MDC525UP Guida Rapida LINUX

MODEM USB MDC525UP Guida Rapida LINUX MODEM USB MDC525UP Guida Rapida LINUX Sommario Introduzione... 2 Requisiti minimi... 2 Contenuto del CD-ROM... 2 Procedura di installazione per Driver e Software di connessione... 3 Installazione/rimozione

Dettagli

Usare Python in Linux

Usare Python in Linux Università di Bologna 24 febbraio 2012 Outline 1 2 Outline 1 2 Cos è? Un sistema operativo Open Source; uno dei sistemi operativi dominanti in ambito server, ma utilizzabile su desktop, notebook, netbook,...

Dettagli

Guida di Installazione GCC

Guida di Installazione GCC Corso di Fondamenti di Informatica Ingegneria delle Comunicazioni BCOR Ingegneria Elettronica BELR Guida di Installazione GCC D. Bloisi, S. Peluso, S. Salza L ambiente di lavoro L ambiente di lavoro al

Dettagli

Il Software. Il software del PC. Il BIOS

Il Software. Il software del PC. Il BIOS Il Software Il software del PC Il computer ha grandi potenzialità ma non può funzionare senza il software. Il software essenziale per fare funzionare il PC può essere diviso nelle seguenti componenti:

Dettagli

Progettazione : Design Pattern Creazionali

Progettazione : Design Pattern Creazionali Progettazione : Design Pattern Creazionali Alessandro Martinelli alessandro.martinelli@unipv.it 30 Novembre 2010 Progettazione : Design Pattern Creazionali Aspetti generali dei Design Pattern Creazionali

Dettagli

Corso base GNU/Linux 2014. Latina Linux Group. Sito web: www.llg.it. Mailing list:http://lists.linux.it/listinfo/latina

Corso base GNU/Linux 2014. Latina Linux Group. Sito web: www.llg.it. Mailing list:http://lists.linux.it/listinfo/latina Corso base GNU/Linux 2014 Latina Linux Group Sito web: www.llg.it Mailing list:http://lists.linux.it/listinfo/latina 1 / 34 Obiettivi di questo incontro Fornire delle informazioni di base sul funzionamento

Dettagli

Guida all utilizzo del compilatore lcc-win32 per creare una applicazione console

Guida all utilizzo del compilatore lcc-win32 per creare una applicazione console Guida all utilizzo del compilatore lcc-win32 per creare una applicazione console Il compilatore per i linguaggi c e c++ chiamato lcc-win32 è un prodotto gratuito scaricabile dal sito http://www.cs.virginia.edu/~lcc-win32/

Dettagli

Le distrubuzioni GNU/Linux

Le distrubuzioni GNU/Linux Le distrubuzioni GNU/Linux 1. Cosa sono 2. Come nascono 3. Da cosa differiscono 4. Panoramica sulle distribuzioni 5. I Pacchetti 6. Quale distro scegliere Cosa sono le distribuzioni? Quando si parla di

Dettagli

Terza lezione: Directory e File system di Linux

Terza lezione: Directory e File system di Linux Terza lezione: Directory e File system di Linux DIRECTORY E FILE SYSTEM Il file system di Linux e Unix è organizzato in una struttura ad albero gerarchica. Il livello più alto del file system è / o directory

Dettagli

NOZIONI BASE PER ESERCITAZIONI

NOZIONI BASE PER ESERCITAZIONI NOZIONI BASE PER ESERCITAZIONI Shahram Rahatlou Laboratorio di Calcolo, Anno Accademico 2015-16 http://www.roma1.infn.it/people/rahatlou/labcalc/ Sistema Operativo Hardware Software n Routine e programmi

Dettagli

I Metacaratteri della Shell Unix

I Metacaratteri della Shell Unix I Metacaratteri della Shell Unix La shell Unix riconosce alcuni caratteri speciali, chiamati metacaratteri, che possono comparire nei comandi. Quando l utente invia un comando, la shell lo scandisce alla

Dettagli

Il SOFTWARE DI BASE (o SOFTWARE DI SISTEMA)

Il SOFTWARE DI BASE (o SOFTWARE DI SISTEMA) Il software Software Il software Il software è la sequenza di istruzioni che permettono ai computer di svolgere i loro compiti ed è quindi necessario per il funzionamento del calcolatore. Il software può

Dettagli

Mini Guida per Apple XCode. Maurizio Martinelli

Mini Guida per Apple XCode. Maurizio Martinelli Mini Guida per Apple XCode Maurizio Martinelli XCode? Piattaforma ufficiale di Apple per lo sviluppo di programmi in C, C++, Cocoa Si può ottenere gratuitamente da http://developer.apple.com/technologies/xcode.html

Dettagli

Laboratorio di Programmazione

Laboratorio di Programmazione Laboratorio di Programmazione Federico Spizzo Dipartimento di Fisica / Edificio C Stanza 006 Tel: 0532 974231 E-mail: federico.spizzo@unife.it Gianluigi Cibinetto Dipartimento di Fisica / Edificio C Stanza

Dettagli

LPIC-1 Junior Level Linux Certification

LPIC-1 Junior Level Linux Certification Corso 2012/2013 Introduzione a GNU/Linux Obiettivi Il percorso formativo ha l obiettivo di fornire ai partecipanti le competenze basilari necessarie per installare, configurare e gestire un server/workstation

Dettagli

Cygwin: vita su Windows, a la Linux-way.

Cygwin: vita su Windows, a la Linux-way. GroLUG Day 9 Aprile 2005, Grosseto Andrea Gronchi Windows e il Software Libero.... un mondo aperto solo a metà. Linux e gli altri sistemi open sono, per eccellenza, le piattaforme dedicate

Dettagli

Il sistema operativo Linux installato sul vostro computer non è un unico, grande

Il sistema operativo Linux installato sul vostro computer non è un unico, grande CAPITOLO 2 Scegliere una distribuzione di Linux Il sistema operativo Linux installato sul vostro computer non è un unico, grande programma, ma un insieme di molti programmi. Potete ottenere autonomamente

Dettagli

Introduzione al Linguaggio C

Introduzione al Linguaggio C Introduzione al Linguaggio C File I/O Daniele Pighin April 2009 Daniele Pighin Introduzione al Linguaggio C 1/15 Outline File e dati Accesso ai file File I/O Daniele Pighin Introduzione al Linguaggio C

Dettagli

Software di sistema e software applicativo. I programmi che fanno funzionare il computer e quelli che gli permettono di svolgere attività specifiche

Software di sistema e software applicativo. I programmi che fanno funzionare il computer e quelli che gli permettono di svolgere attività specifiche Software di sistema e software applicativo I programmi che fanno funzionare il computer e quelli che gli permettono di svolgere attività specifiche Software soft ware soffice componente è la parte logica

Dettagli

Corsi di Formazione "Open Source & Scuola" Provincia di Pescara gennaio 2005 aprile 2005

Corsi di Formazione Open Source & Scuola Provincia di Pescara gennaio 2005 aprile 2005 Corsi di Formazione "Open Source & Scuola" Provincia di Pescara gennaio 2005 aprile 2005 1 Cos'è una distribuzione Una Distribuzione è un confezionamento (packaging) di Linux, completa di kernel, pacchetti

Dettagli

Installare software Linux. Gruppo Linux Macerata - Corso Linux 2011 - Lez. 5: Installazione dei software Linux

Installare software Linux. Gruppo Linux Macerata - Corso Linux 2011 - Lez. 5: Installazione dei software Linux Installare software Linux Cosa serve? LINUX UN SISTEMA DI INSTALLAZIONE INTERNET Questo OGGI LUGLIO 2011 Anni fa invece... LUGLIO 1990 installare software libero* voleva dire: * Il termine opensource nascerà

Dettagli

Guida alla documentazione italiana di Solaris 2.5.1 Server per sistemi SPARC SMCC

Guida alla documentazione italiana di Solaris 2.5.1 Server per sistemi SPARC SMCC Guida alla documentazione italiana di Solaris 2.5.1 Server per sistemi SPARC SMCC Questo documento descrive il materiale relativo all installazione (CD, manuali e schede) contenuto nella release italiana

Dettagli

Il computer: primi elementi

Il computer: primi elementi Il computer: primi elementi Tommaso Motta T. Motta Il computer: primi elementi 1 Informazioni Computer = mezzo per memorizzare, elaborare, comunicare e trasmettere le informazioni Tutte le informazioni

Dettagli

Ca ra tteristiche dei sistem i GN U/L inux. Struttura di un sistema GNU/Linux Il filesystem La shell

Ca ra tteristiche dei sistem i GN U/L inux. Struttura di un sistema GNU/Linux Il filesystem La shell Struttura di un sistema GNU/Linux Il filesystem La shell 1 GNU/Linux è un sistema operativo, cioè un insieme di programmi che collaborano fra di loro rendendo utilizzabile un calcolatore, infatti senza

Dettagli

Corso di Informatica (Programmazione) Lezione 6 (31 ottobre 2008)

Corso di Informatica (Programmazione) Lezione 6 (31 ottobre 2008) Corso di Informatica (Programmazione) Lezione 6 (31 ottobre 2008) Introduzione a Java: primo programma, installazione dell ambiente di sviluppo, compilazione ed esecuzione 1 Introduzione Java è un linguaggio

Dettagli

Reti Informatiche. Corso di Laurea Triennale in Ingegneria Informatica. Ing. Domenico De Guglielmo. 2008 Vanessa Gardellin & Sara Lioba Volpi

Reti Informatiche. Corso di Laurea Triennale in Ingegneria Informatica. Ing. Domenico De Guglielmo. 2008 Vanessa Gardellin & Sara Lioba Volpi Reti Informatiche Corso di Laurea Triennale in Ingegneria Informatica Ing. Domenico De Guglielmo 2008 Vanessa Gardellin & Sara Lioba Volpi Informazioni Generali (1/2) Ricevimento su appuntamento (tramite

Dettagli

Come valutare e scegliere un Sistema Operativo Embedded

Come valutare e scegliere un Sistema Operativo Embedded Come valutare e scegliere un Sistema Operativo Embedded Valter Minute Adeneo Embedded vminute@adeneo-embedded.com ARM e sistemi operativi Milioni di dispositivi contengono processori ARM Per sfruttare

Dettagli

Benvenuti/e. www.dueville.linux.it 2vilug@gmail.com

Benvenuti/e. www.dueville.linux.it 2vilug@gmail.com Benvenuti/e www.dueville.linux.it 2vilug@gmail.com Piccolo glossario SOFTWARE: Tutto ciò che è immateriale. HARDWARE: Tutto ciò che si può prendere a calci. Sistema operativo Il sistema operativo è l'insieme

Dettagli

I Sistemi Operativi. Confronto Windows MAC OS X Linux

I Sistemi Operativi. Confronto Windows MAC OS X Linux I Sistemi Operativi Confronto Windows Considerazioni generali Il confronto tra SO È spesso argomento di discussione tra i vari utenti È complesso Esistono diverse versioni con caratteristiche diverse (desktop,

Dettagli

Corso ForTIC C2 LEZIONE n. 1

Corso ForTIC C2 LEZIONE n. 1 Corso ForTIC C2 LEZIONE n. 1 Presentazione generale del concetto di open source Il sistema operativo LINUX e le varie distribuzioni Uso di una versione Knoppix live Presentazione di OpenOffice.org I contenuti

Dettagli

Introduzione al Software Libero e a GNU/Linux

Introduzione al Software Libero e a GNU/Linux Introduzione al Software Libero e a GNU/Linux Enrico Albertini 1 Di cosa stiamo parlando? L'hardware è la parte del computer che possiamo toccare, ciò che è composto da atomi. Il software, invece, è una

Dettagli

L Open Source un mondo che forse dovresti conoscere? Viaggio alla scoperta dell open source e le sue caratteristiche.

L Open Source un mondo che forse dovresti conoscere? Viaggio alla scoperta dell open source e le sue caratteristiche. L Open Source un mondo che forse dovresti conoscere? Viaggio alla scoperta dell open source e le sue caratteristiche. Le licenze Cosa è la licenza? licenza o contratto d'uso è il contratto con il quale

Dettagli

LICENZE D'USO E TIPOLOGIE DI SOFTWARE

LICENZE D'USO E TIPOLOGIE DI SOFTWARE LICENZE D'USO E TIPOLOGIE DI SOFTWARE Il software è tutelato dalle leggi sul diritto d'autore, in maniera simile a quanto avviene per le opere letterarie. Il contratto che regola l'uso del software è la

Dettagli

SOMMARIO: ------- 1. INFORMAZIONI SU PARALLELS TRANSPORTER

SOMMARIO: ------- 1. INFORMAZIONI SU PARALLELS TRANSPORTER File Leggimi di Parallels Transporter SOMMARIO: 1. Informazioni su Parallels Transporter 2. Requisiti di Sistema 3. Installazione di Parallels Transporter 4. Rimozione di Parallels Transporter 5. Informazioni

Dettagli

IL LINGUAGGIO C NOSTRO APPROCCIO AL C. Sempre con esempi che illustrano le caratteristiche del linguaggio. SCRIVERE ED ESEGUIRE IL PRIMO PROGRAMMA C

IL LINGUAGGIO C NOSTRO APPROCCIO AL C. Sempre con esempi che illustrano le caratteristiche del linguaggio. SCRIVERE ED ESEGUIRE IL PRIMO PROGRAMMA C IL LINGUAGGIO C Sviluppato agli inizi degli anni '70 nei Bell Laboratories per ricerca, ha caratteristiche che lo rendono ideale per uso scientifico. Si sviluppa e si diffonde parallelamente a Unix. È

Dettagli

L i n u x @ B e s t a 2 0 0 7. Mario Di Raimondo

L i n u x @ B e s t a 2 0 0 7. Mario Di Raimondo L i n u x @ B e s t a 2 0 0 7 Evoluzione delle architetture grafiche sui sistemi Open Source Mario Di Raimondo I S i s t e m i U N I X d i i e r i X W i n d o w S y s t e m X Window System (X11) è il sistema

Dettagli

Installazione del Software. per lo Sviluppo di Applicazioni Java

Installazione del Software. per lo Sviluppo di Applicazioni Java Installazione del Software per lo Sviluppo di Applicazioni Java Ing. Luca Ferrari ferrari.luca@unimore.it Tel. 0592056142 Installazione del Software per lo Sviluppo di Applicazioni Java 1 Il Compilatore

Dettagli

Laboratorio di Programmazione 1. Docente: dr. Damiano Macedonio Lezione 18 31/03/2014

Laboratorio di Programmazione 1. Docente: dr. Damiano Macedonio Lezione 18 31/03/2014 Laboratorio di Programmazione 1 1 Docente: dr. Damiano Macedonio Lezione 18 31/03/2014 Funzioni: Dichiarazione e Definizione La dichiarazione di una funzione serve a comunicare al compilatore quali sono

Dettagli

Corso di Informatica

Corso di Informatica CdLS in Odontoiatria e Protesi Dentarie Corso di Informatica Prof. Crescenzio Gallo crescenzio.gallo@unifg.it I moderni Sistemi Operativi!2 Unix È stato creato da Ken Thompson e Dennis Ritchie nel 1969

Dettagli

LINUX. Che cos'e` un sistema operativo?

LINUX. Che cos'e` un sistema operativo? LINUX LINUX Introduzione Una versione completa e affidabile di UNIX Disponibile per PC x86 Intel/AMD e numerose altre piattaforme Strumento (quasi) indispensabile per le esercitazioni Include gli strumenti

Dettagli

Linux e Open Source: Libero! Non "gratis"...

Linux e Open Source: Libero! Non gratis... Linux e Open Source: Libero! Non "gratis"... Di Colucci Martino. 1 Cos'è Linux Linux è un sistema operativo alternativo al più blasonato Windows OS (o al cugino Macintosh) È parente stretto della famiglia

Dettagli

Corso Linux Corso Online Amministratore di Sistemi Linux

Corso Linux Corso Online Amministratore di Sistemi Linux Corso Linux Corso Online Amministratore di Sistemi Linux Accademia Domani Via Pietro Blaserna, 101-00146 ROMA (RM) info@accademiadomani.it Programma Generale del Corso Linux Tematiche di Base MODULO 1

Dettagli

Drupal. E vai con un po' di Drupal for Dummies... :D. Copyright by hachreak www.hachreak.org

Drupal. E vai con un po' di Drupal for Dummies... :D. Copyright by hachreak www.hachreak.org Drupal E vai con un po' di Drupal for Dummies... :D Copyright by hachreak www.hachreak.org Cos'è Drupal? Drupal è un content management framework, content management system (CMS) modulare scritto in linguaggio

Dettagli

9-10 DICEMBRE 2013. Istitiuto Nazionale Tumori. regina Elena. introduzione a :

9-10 DICEMBRE 2013. Istitiuto Nazionale Tumori. regina Elena. introduzione a : 9-10 DICEMBRE 2013 Istitiuto Nazionale Tumori regina Elena introduzione a : Che cos è? WordPress è la piattaforma software per la creazione di blog e siti più usata al mondo. Creata da Matt Mullenweg e

Dettagli

Progetti F.O.S.S. Ieri e Oggi

Progetti F.O.S.S. Ieri e Oggi Progetti F.O.S.S. Ieri e Oggi Progetti F.O.S.S. più famosi Linux NetBSD Gnome KDE MySQL Inkscape blender Gimp Wine Python Java Eclipse OpenOffice emule PostgreSQL VLC Firefox Thunderbird Cos'è Python Python

Dettagli

Informatica. Prof. A. Longheu. Introduzione a Java

Informatica. Prof. A. Longheu. Introduzione a Java Informatica Prof. A. Longheu Introduzione a Java 1 Code-Name Green Nome del progetto Sun con l obiettivo di fornire intelligent consumer-electronic devices. Il risultato fu Oak Un linguaggio basato su

Dettagli

Corso UNIX avanzato. Utente avanzato. Amministratore. Gestione proprio account Gestione dei propri processi Ricerca e manipolazione file

Corso UNIX avanzato. Utente avanzato. Amministratore. Gestione proprio account Gestione dei propri processi Ricerca e manipolazione file Corso UNIX avanzato Corso UNIX avanzato Utente avanzato Gestione proprio account Gestione dei propri processi Ricerca e manipolazione file Amministratore Gestione utenti Aggiunta rimozione hardware Backup

Dettagli

Librerie. Laboratorio di Informatica Antonio Monteleone 28

Librerie. Laboratorio di Informatica Antonio Monteleone 28 Librerie Una libreria è una collezione di funzioni (classi, variabili) usata per sviluppare applicazioni. Le funzioni (classi, variabili) contenute in una libreria si dicono da questa esportate. L'uso

Dettagli

Manuale Operativo per l utilizzo della piattaforma E-Learning@AQ. Versione 1.1

Manuale Operativo per l utilizzo della piattaforma E-Learning@AQ. Versione 1.1 Manuale Operativo per l utilizzo della piattaforma E-Learning@AQ Versione 1.1 Autore Antonio Barbieri, antonio.barbieri@gmail.com Data inizio compilazione 11 maggio 2009 Data revisione 14 maggio 2009 Sommario

Dettagli

Le command line di Java

Le command line di Java Le command line di Java Esercitazioni di Programmazione 2 Novella Brugnolli brugnoll@science.unitn.it Ambiente di lavoro Per compilare ed eseguire un programma Java abbiamo bisogno di: The JavaTM 2 Platform,

Dettagli

Comandi filtro: sed. Se non si specificano azioni, sed stampa sullo standard output le linee in input, lasciandole inalterate.

Comandi filtro: sed. Se non si specificano azioni, sed stampa sullo standard output le linee in input, lasciandole inalterate. Comandi filtro: sed Il nome del comando sed sta per Stream EDitor e la sua funzione è quella di permettere di editare il testo passato da un comando ad un altro in una pipeline. Ciò è molto utile perché

Dettagli

Linux. Linux. Paolo Zatelli. Dipartimento di Ingegneria Civile ed Ambientale Università di Trento. Paolo Zatelli Università di Trento 1 / 24

Linux. Linux. Paolo Zatelli. Dipartimento di Ingegneria Civile ed Ambientale Università di Trento. Paolo Zatelli Università di Trento 1 / 24 Linux Linux Paolo Zatelli Dipartimento di Ingegneria Civile ed Ambientale Università di Trento Paolo Zatelli Università di Trento 1 / 24 Linux Outline 1 Linux 2 Interfaccia 3 File e directory 4 Comandi

Dettagli

Corso Eclipse. Prerequisiti. 1 Introduzione

Corso Eclipse. Prerequisiti. 1 Introduzione Corso Eclipse 1 Introduzione 1 Prerequisiti Uso elementare del pc Esecuzione ricerche su Internet Esecuzione download Conoscenza elementare della programmazione 2 1 Cos è Eclipse Eclipse è un IDE (Integrated

Dettagli

Open Source e Free Software Introduzione a GRASS e sw correlati GFOSS (Geographic Free Open Source Software) Cartografia numerica e GIS Free Software Il termine free si deve tradurre come libero piuttosto

Dettagli

Guida informatica per l associazione #IDEA

Guida informatica per l associazione #IDEA Guida informatica per l associazione #IDEA Questa guida vi spiegherà come utilizzare al meglio gli strumenti informatici che utilizza l associazione #IDEA in modo da facilitare il coordinamento con tutti

Dettagli

GNU/Linux e *BSD: filosofia del software libero ed open source

GNU/Linux e *BSD: filosofia del software libero ed open source GNU/Linux e *BSD: filosofia del software libero ed open source Origini e filosofie dei sistemi operativi liberi. Principali licenze e libertà del software. Data: 28 ottobre 2006 Relatore: Massimo Masson

Dettagli

01/05/2013 Istruzioni per l installazione

01/05/2013 Istruzioni per l installazione 01/05/2013 Istruzioni per l installazione Il documento descrive le procedure rivolte a utenti esperti per l installazione del codice di ABCD SW su una macchina fisica che abbia funzioni di Server. Progetto

Dettagli

Introduzione a Linux. Storia di UNIX

Introduzione a Linux. Storia di UNIX SISTEMI OPERATIVI Introduzione a Linux Storia di UNIX» 1969 - UNIX nasce come proge=o di ricerca presso i laboratori Bell della AT&T.» 1976 - UNIX viene distribuito gratuitamente si diffonde nelle Università

Dettagli

Compilatori GNU in Linux: gcc e g++

Compilatori GNU in Linux: gcc e g++ Un compilatore integrato C/C++ Per Linux e' disponibile un compilatore integrato C/C++: si tratta dei comandi GNU gcc e g++, rispettivamente. In realta g++ e' uno script che chiama gcc con opzioni specifiche

Dettagli

----------------------------------------------------------------

---------------------------------------------------------------- ---------------------------------------------------------------- utilizzo frequente di chiamate a.. A differenza del Pascal, il C permette di operare con assegnamenti e confronti su dati di tipo diverso,

Dettagli

Licenze d uso libere. Rossetto Stefano Seminario di Commercio Elettronico

Licenze d uso libere. Rossetto Stefano Seminario di Commercio Elettronico Licenze d uso libere Rossetto Stefano Seminario di Commercio Elettronico Open Source L OSI definisce un elenco di condizioni per definire una licenza Open Source: 1. Redistribuzione libera; 2. Codice sorgente

Dettagli

Introduzione alle tecnologie informatiche. Strumenti mentali per il futuro

Introduzione alle tecnologie informatiche. Strumenti mentali per il futuro Introduzione alle tecnologie informatiche Strumenti mentali per il futuro Panoramica Affronteremo i seguenti argomenti. I vari tipi di computer e il loro uso Il funzionamento dei computer Il futuro delle

Dettagli

Corso amministratore di sistema Linux. Corso amministratore di sistema Linux Programma

Corso amministratore di sistema Linux. Corso amministratore di sistema Linux Programma Corso amministratore di sistema Linux Programma 1 OBIETTIVI E MODALITA DI FRUIZIONE E VALUTAZIONE 1.1 Obiettivo e modalità di fruizione L obiettivo del corso è di fornire le conoscenze tecniche e metodologiche

Dettagli

Codifica: dal diagramma a blocchi al linguaggio C++

Codifica: dal diagramma a blocchi al linguaggio C++ Codifica: dal diagramma a blocchi al linguaggio C++ E necessario chiarire inizialmente alcuni concetti. La compilazione Il dispositivo del computer addetto all esecuzione dei programmi è la CPU La CPU

Dettagli

VPN RETI PRIVATE VIRTUALI: ACCESSO REMOTO

VPN RETI PRIVATE VIRTUALI: ACCESSO REMOTO TERMINAL SERVER E XSERVER VPN RETI PRIVATE VIRTUALI: ACCESSO REMOTO Fondazione dell'ordine degli Ingegneri della Provincia di Milano Commissione per l'ingegneria dell'informazione ing. Gianluca Sironi

Dettagli

Introduzione. Laboratorio di Calcolo Corso di Laurea in Fisica. Università degli Studi di Roma La Sapienza

Introduzione. Laboratorio di Calcolo Corso di Laurea in Fisica. Università degli Studi di Roma La Sapienza Introduzione Laboratorio di Calcolo Corso di Laurea in Fisica Università degli Studi di Roma La Sapienza WARNING Questo canale è solo per studenti di Fisica il cui cognome inizia con le lettere A-D Laboratorio

Dettagli

Reti di Calcolatori PROTOCOLLO FTP. File. File Transfer Protocol Modello FTP Operazioni FTP Comandi del protocollo Esempi di Client FTP avanzati

Reti di Calcolatori PROTOCOLLO FTP. File. File Transfer Protocol Modello FTP Operazioni FTP Comandi del protocollo Esempi di Client FTP avanzati Reti di Calcolatori PROTOCOLLO FTP D. Talia RETI DI CALCOLATORI - UNICAL 8-1 File Modello FTP Operazioni FTP Comandi del protocollo Esempi di Client FTP avanzati D. Talia RETI DI CALCOLATORI - UNICAL 8-2

Dettagli

Le Interfacce Grafiche

Le Interfacce Grafiche Le Interfacce Grafiche Applicazione Client-Server Un'applicazione client-server (letteralmente cliente-servente) è un tipo di applicazione di rete nel quale un computer client istanzia l'interfaccia utente

Dettagli

Matematica - SMID : Programmazione Febbraio 2009 FOGLIO RISPOSTE

Matematica - SMID : Programmazione Febbraio 2009 FOGLIO RISPOSTE Matematica - SMID : Programmazione Febbraio 2009 FOGLIO RISPOSTE NOME: COGNOME: ============================================================== Esercizio 1 ci sono tante "righe"; non è detto servano tutte...

Dettagli

Reti di Calcolatori PROTOCOLLO FTP

Reti di Calcolatori PROTOCOLLO FTP Reti di Calcolatori PROTOCOLLO FTP D. Talia RETI DI CALCOLATORI - UNICAL 8-1 File File Transfer Protocol Modello FTP Operazioni FTP Comandi del protocollo Esempi di Client FTP avanzati D. Talia RETI DI

Dettagli

GDB. The GNU Debugger

GDB. The GNU Debugger GDB The GNU Debugger Il problema del programmatore Il programmatore perfetto non esiste! Nessuna sicurezza che il programma funzioni al primo colpo Più il programma è grande più ci possono essere errori

Dettagli

Funzioni in C. Violetta Lonati

Funzioni in C. Violetta Lonati Università degli studi di Milano Dipartimento di Scienze dell Informazione Laboratorio di algoritmi e strutture dati Corso di laurea in Informatica Funzioni - in breve: Funzioni Definizione di funzioni

Dettagli

AMBIENTE GRAFICO DI FEDORA: ATTIVITA ESEGUIBILI DA TUTTI GLI UTENTI

AMBIENTE GRAFICO DI FEDORA: ATTIVITA ESEGUIBILI DA TUTTI GLI UTENTI AMBIENTE GRAFICO DI FEDORA: ATTIVITA ESEGUIBILI DA TUTTI GLI UTENTI DESKTOP KDE E GNOME PROGRAMMI DI UTILITA' PERSONALIZZAZIONE DEL DESKTOP NAVIGAZIONE E POSTA ELETTRONICA I contenuti di questo documento,

Dettagli

SAMBA COS È? Samba è un software che fornisce servizi di condivisione utilizzando il protocollo SMB (Server Message Block). A differenza di altri programmi, Samba è gratuito e Open Source, e permette l

Dettagli

I programmi applicativi

I programmi applicativi I programmi applicativi Riferimenti: Curtin cap. 6-8 Console cap. 11.1, 11.3 Versione: 15/04/2007 Facoltà di Farmacia Corso di Informatica 1 Le applicazioni Per svariati compiti specifici Vari applicativi,

Dettagli

Introduzione a Dev-C++

Introduzione a Dev-C++ Introduzione a Dev-C++ Università degli Studi di Brescia Docente: Massimiliano Giacomin Elementi di Informatica e Programmazione Università di Brescia 1 Note: Dev-C++ richiede Windows 95/98/NT/2000/XP

Dettagli

GUIDA ALLA PROGRAMMAZIONE GRAFICA IN C

GUIDA ALLA PROGRAMMAZIONE GRAFICA IN C GUIDA ALLA PROGRAMMAZIONE GRAFICA IN C.:luxx:. PREMESSE In questa guida non verranno trattati i costrutti di flusso, le funzioni, o comunque le caratteristiche del linguaggio, che si danno come presupposte.

Dettagli

API e socket per lo sviluppo di applicazioni Web Based

API e socket per lo sviluppo di applicazioni Web Based API e socket per lo sviluppo di applicazioni Web Based Cosa sono le API? Consideriamo il problema di un programmatore che voglia sviluppare un applicativo che faccia uso dei servizi messi a disposizione

Dettagli

Gian Luca Marcialis studio degli algoritmi programma linguaggi LINGUAGGIO C

Gian Luca Marcialis studio degli algoritmi programma linguaggi LINGUAGGIO C Università degli Studi di Cagliari Corso di Laurea in Ingegneria Biomedica (Industriale), Chimica, Elettrica, e Meccanica FONDAMENTI DI INFORMATICA 1 http://www.diee.unica.it/~marcialis/fi1 A.A. 2010/2011

Dettagli

CONFIGURARE SAMBA 3 SU SUSE LINUX 9.1/9.2

CONFIGURARE SAMBA 3 SU SUSE LINUX 9.1/9.2 CONFIGURARE SAMBA 3 SU SUSE LINUX 9.1/9.2 1. INTRODUZIONE In questa guida si illustra la procedura di configurazione di samba 3 su SuSE Linux 9.1 e su SuSE Linux 9.2. Saranno brevemente illustrate le operazioni

Dettagli

Corso ForTIC C2 LEZIONE n. 3

Corso ForTIC C2 LEZIONE n. 3 Corso ForTIC C2 LEZIONE n. 3 I due Desktop più diffusi KDE e GNOME Azioni concesse ad un utente NON privilegiato Sintassi generale dei comandi Muoversi all'interno del file system utilizzando i comandi

Dettagli

Concetto di Funzione e Procedura METODI in Java

Concetto di Funzione e Procedura METODI in Java Fondamenti di Informatica Concetto di Funzione e Procedura METODI in Java Fondamenti di Informatica - D. Talia - UNICAL 1 Metodi e Sottoprogrammi Mentre in Java tramite le classi e gli oggetti è possibile

Dettagli

Per scrivere una procedura che non deve restituire nessun valore e deve solo contenere le informazioni per le modalità delle porte e controlli

Per scrivere una procedura che non deve restituire nessun valore e deve solo contenere le informazioni per le modalità delle porte e controlli CODICE Le fonti in cui si possono trovare tutorial o esempi di progetti utilizzati con Arduino si trovano nel sito ufficiale di Arduino, oppure nei forum di domotica e robotica. Il codice utilizzato per

Dettagli

Il Web Server e il protocollo HTTP

Il Web Server e il protocollo HTTP Corso PHP Parte 2 Il Web Server e il protocollo HTTP E un programma sempre attivo che ascolta su una porta le richieste HTTP. All arrivo di una richiesta la esegue e restituisce il risultato al browser,

Dettagli

POLINUX. Linux for Polimi people

POLINUX. Linux for Polimi people POLINUX Linux for Polimi people POLINUX Come potremmo definirlo? Polinux è una distribuzione GNU/Linux, derivata da Ubuntu, contenente solamente software libero. Menu del giorno Cos'è il Software Libero

Dettagli

Tutorial per l installazione del J2SE 6 e configurazione del sistema operativo

Tutorial per l installazione del J2SE 6 e configurazione del sistema operativo Tutorial per l installazione del J2SE 6 e configurazione del sistema operativo Ing. Giovanni Ponti DEIS Università della Calabria gponti@deis.unical.it La piattaforma Java mette a disposizione una serie

Dettagli