Ministero dell'Istruzione, dell'Università e della Ricerca
Formazione degli insegnanti sulle Tecnologie dell'Informazione e della Comunicazione
For TIC
Percorso C
Modulo 3
Computer software

Adsware: Software liberamente scaricabile dalla rete ma proprietario e a Sorgente chiuso. La ditta produttrice viene retribuita da inserzioni pubblicitarie che devono essere visibili durante l'utilizzo.

Algebra relazionale: Insieme di operatori su relazioni (ovvero tabelle) che producono come risultati altre relazioni (o tabelle). Questi operatori possono essere composti per formare espressioni complesse analogamente a quello che possiamo fare con gli operatori aritmetici.

Ambiente: Collezione delle associazioni tra nomi e valori durante l'esecuzione di un programma. L'ambiente è dinamico se nuovi nomi e locazioni possono venire creati durante a tempo d'esecuzione. I linguaggi di programmazione moderni sono tutti dotati di ambiente dinamico.

AMD: Produttore di Processori compatibili con quelli della ditta Intel. È concorrente di Intel ma la scelta di mantenere la piena compatibilità fa sottostare AMD a tutte le scelte di Intel in materia di compatibilità software e hardware.

ASCII: Codice a 7 bit per la rappresentazione interna dei caratteri.

Assemblatore: Traduttore che trasforma un programma scritto in linguaggio assembler nel corrispondente in linguaggio macchina.

Backdoor: Porta di ingresso non autorizzata per accedere a sistemi o a dati. Può risultare presente una backdoor o per volontà di chi ha creato il programma o messa ad arte da chi ha fatto instrusione in un sistema per poterci rientrare. L'unico modo per poter controllare o far controllare se nei propri programmi siano presenti backdoor è di poter accedere ai programmi sorgenti e rigenerare a partire da essi il codice eseguibile.

Backup: Procedura di salvataggio del file system (tutto o parte), per permettere un ripristino dei dati in caso di danneggiamento dei dischi.

Base di dati: Insieme organizzato di dati utilizzati per il supporto allo svolgimento delle attività di una organizzazione (azienda, ufficio, eccetera). In senso più tecnico, una base di dati identifca l'insieme dei dati gestiti da un programma DBMS (Database Management System).

BIOS: Un semplice programma residente nella memoria centrale non volatile (ROM) che provvede all'interfaccia tra il sistema operativo e l'hardware; in particolare, lancia il caricamento (boot) del Sistema Operativo.

Boot: Più correttamente bootstrapping, la procedura di caricamento di un Sistema Operativo. Operazione di caricamento del nucleo del sistema operativo e dei programmi residenti. Viene fatto il boot del sistema operativo al momento dell'accensione del computer o a ogni riattivazione (reset) fisico.

Brevetto sul Software: Esiste negli Stati Uniti, forti lobby vorrebbero fosse permesso anche nell'Unione Europea. Si vuole concedere di poter registrare brevetti su algoritmi e procedimenti informatici. È fortemente osteggiato dai sostenitori del software libero perché ne limiterebbe fortemente la diffusione e la crescita.

Browser: Programma che permette la navigazione in Internet agendo come client nel protocollo HTTP e interperatndo le pagine scritte in HTML. Programma per navigare nel Web. Ne esistono molte versioni: Internet Explorer, Netscape, Mozilla, Opera, Konqueror...

CAD: (Computer Aided Design) strumenti di supporto alla progettazione del prodotto che tipicamente permettono la realizzazione e la modifica veloce di disegni tecnici (anche tridimensionali). Sono usati prevalentemente in ambito meccanico, ma esistono anche applicazioni in altri settori.

Catalogo: (in un DBMS) Porzione della base di dati che contiene una descrizione centralizzata dei dati e che può essere utilizzata dalle varie applicazioni che accedono ai dati.

Cavalli di Troia: Funzionalità malefiche nascoste in programmi che appaiono utili, innocui. L'unico modo per poter controllare o far controllare se nei propri programmi siano presenti cavalli di troia è di poter accedere ai programmi sorgenti e rigenerare a partire da essi il codice eseguibile.

CD-Live: CD dal quale è possibile fare boot ad un computer. Contiene un intero sistema operativo che lavora senza modificare il contenuto della macchina. (Attenzione. Normalmente i CD-Live consentono l'accesso ai dati registrati nel computer ospite: per mezzo di azioni volontarie, e.g. comandi di cancellazione, si possono comunque danneggiare i contenuti.).

Chiave: (nelle basi di dati relazionali) Insieme minimale di attributi che permette di identificare univocamente le ennuple di una relazione (ovvero le righe di una tabella).

Classe: Costrutto orientato agli oggetti che definisce il comportamento delle proprie istanze. In genere contiene la definizione dei metodi condivisi dalle istanze.

Codice Eseguibile: Forma del programma da eseguire, illeggibile. È impossibile quindi comprenderne il reale contenuto e il funzionamento. Quando acquistate o scaricate da rete dei programmi proprietari vi viene dato solamente il codice eseguibile dei programmi.

Codice Sorgente: Forma del programma leggibile e modificabile. I programmatori scrivono i programmi in questa forma usando un linguaggio di programmazione (come per esempio C, C++, Pascal, Fortran, Cobol, Java, ...). Se non avete il codice sorgente di un programma non potete capire quali azioni in realtà il programma compie. Se avete il codice sorgente potete modificare il programma per rimediare a errori o problemi di sicurezza quando ve ne fosse necessità, altrimenti no.

Compilatore: Traduttore che trasforma un programma scritto in un linguaggio ad alto livello in uno corrispondente scritto in un linguaggio di più basso livello (per esempio in linguaggio assembler, o direttamente in linguaggio macchina).

Compressione: Tecnica che permette di mantenere il contenuto informativo dei dati riducendo però lo spazio di memoria occupato.

Condizionale: Costrutto di controllo che permette la scelta tra alcune porzioni di programma in dipendenza dal verificarsi di una condizione. Un condizionale è spesso espresso mediante la sintassi if-then-else.

Configurazione: Fase dell'installazione di un programma durante la quale si determinano alcuni parametri, a seconda delle caratteristiche hardware e software del sistema in uso.

Copyleft: v. Permesso d'Autore .

Copyright: v. Diritto d'Autore .

Cracker: Delinquente informatico. Intrude, diffonde programmi malefici come virus e vermi (worm), modifica, distrugge dati o solamente viola la privacy altrui. I mass media generalmente confondono erroneamente questo termine con Hacker (v.).

Data Mining: Il Data Mining consiste nell'estrazione di informazioni contenute in modo implicito e semi-strutturato in grandi quantità di dati. A differenza dei DBMS e dei DSS, il Data Mining non si basa su interrogazioni specifiche ma sull'estrapolazione di relazioni significative.

DBMS: Programma che gestisce (nel senso detto prima) grandi insiemi di dati, in modo persistente e condiviso, in modo tale da garantire privatezza, affidabilità ed efficienza.

Debian: La più libera delle grandi distribuzioni Linux. In Debian anche tutta la gestione dei pacchetti software, degli aggiornamenti e delle scelte strutturali è effettuata con gli stessi metodi dello sviluppo del software libero. Per statuto costitutivo in Debian non c'è alcuna società commerciale coinvolta e tutta la distribuzione è completamente libera.

Demolinux: Distribuzione Linux creata da Roberto di Cosmo per diffondere il software libero nella scuola e nella pubblica amministrazione francese. Non necessita di installazione. Viene diffuso con la tecnica dei CD-Live.

Diritto d'Autore: È la norma che tutela le opere originali della creatività umana. Testi, musica e anche i programmi (il software) sono giustamente tutelati dalle leggi sul diritto di autore. Spetta all'autore decidere con quali modalità desidera che la sua opera venga tutelata. L'autore può decidere di volere un compenso per l'utilizzo o no, di concedere che l'opera venga successivamente modificata o no, che la redistribuzione dell'opera modificata debba prevedere un compenso per l'autore originario, non debba prevedere compenso neanche per il modificatore, che debba in ogni caso contenere l'indicazione dell'autore originario o che possa non essere indicato. Il diritto d'autore tutela l'opera in quanto tale, non i concetti in essa espressi. Chiunque con carta bianca, spartito bianco o file nuovo scriva da zero senza plagio una sua opera su questa ha il diritto di autore. Il diritto delle opere pubblicate oggi si estingue in Italia a 75 anni dalla morte dell'autore (o dell'autore morto per ultimo se l'opera è cofirmata).

Distribuzione: Stuttura organizzata di un sistema operativo con tutti i programmi di corredo. Le distribuzioni forniscono il servizio di aggiornamento di tutti i programmi contenuti. Vengono gestite automaticamente anche le dipendenze fra programmi (per installarne uno c'è la necessità della presenza di un altro) o l'incompatibilità (per esempio fra molteplici implementazioni della stessa funzionalità).

Documento elettronico: Documento la cui rappresentazione fisica è in forma di bit all'interno di un sistema informatico.

Driver: Il particolare dispositivo software che controlla la comunicazione con una periferica è detto driver della periferica.

Eccezzione: Condizione eccezionale che si verifica durante l'esecuzione di un programma. I linguaggi di programmazione moderni hanno costrutti che permettono di gestire un'eccezione, espressi spesso mediante la sintassi try-catch.

Editore di testi: Programma (detto anche di videoscrittura) che permette di scrivere, modificare, formattare documenti di vario genere.

Ereditarietà: Meccanismo mediante il quale gli oggetti di una sottoclasse possono usare (rispondono a) i metodi definiti nella superclasse.

Ext2, Ext3: sono i tipi di file system tipici di Linux. Ext2 è quello più storico. Sono file system moderni. Entrambi mantengono i dati ordinati e non hanno alcuna necessità di deframmentazione anche se usati per anni da migliaia di utenti. Ext3 è consigliabile per server con grandi capacità di memorizzazione perché riesce a ripristinarsi molto velocemente anche se il sistema non è stato disattivato correttamente (guasto, mancanza di tensione, eccetera...)

FAT: File access table, organizzazione del file system di Windows. Esiste nella versione FAT16 (Windows 3.1 e prime versioni di 95) e FAT32 (le successive versioni). Windows 2000 e XP supportano anche il più moderno NTFS.

FAT (File Allocation Table): Il file system di tutti i sistemi Windows non professionali. È molto primitivo. Ammette solo nomi brevi (11 caratteri+3 di estensione) anche se da Windows 95 è stato introdotto un meccanismo chiamato Joliet (molto contorto) per gestire nomi più lunghi. I dati non vengono tenuti ordinati e quindi le prestazioni decadono durante l'utilizzo. L'unico modo per ripristinare l'efficienza è l'uso del deframmentatore (defrag) che riordina i dati. Se durante l'opera del defrag qualcosa va storto (e.g. manca corrente) si potranno avere perdite di dati.

File System: Componente di un sistema operativo che permette l'organizzazione delle informazioni in strutture logiche, dette file, e che gestisce le operazioni di allocazione di memoria di massa necessarie per memorizzare i file. Viene chiamato file system lo strumento software che consente di dare all'utente l'astrazione di file(archivio) e directory (cartelle) all'interno di un disco. Esistono vari modelli di file system con caratteristiche differenti: un computer per poter leggere un disco deve conoscere come i dati siano stati memorizzati su di esso deve quindi avere il supporto per il tipo di file system usato per la registrazione. Esempi di file system sono: ext2, ext3 tipici di Linux, FAT, NTFS usati da Microsoft, ISO9660 usato sui CD-ROM.

File: Struttura logica, identificata da un nome, per la memorizzazione di dati. È accessibile all'utente tramite opportuni comandi del sistema operativo (apertura, lettura, scrittura, chiusura del file).

Firmware: L'insieme dei programmi che risiedono nella memoria centrale non volatile (ROM). Uno dei suoi componenti più importanti è il BIOS.

Foglio elettronico: (o spreadsheet) Programma che permette il trattamento e l'analisi di dati numerici mediante tabelle (o griglie) nelle quali è possibile operare sulle singole caselle, sulle colone, sulle righe o su più caselle collegate fra loro.

Formati Aperti: Sono formati le cui specifiche sono disponibili pubblicamente. Disponendo di un formato aperto è possibile sapere esattamente quali dati sono contenuti e scrivere applicazioni capaci di gestire dati di tale formato. La definizione si applica ai formati di registrazione di file e ai protocolli di comunicazione. Sono formati aperti il Postscript, il Pdf, il testo ASCII, l'html. Per i protocolli le specifiche di IP, TCP, UDP, http, nntp e di tutti i principali protocolli di Internet sono pubblici.

Formati Chiusi: Sono formati dei quali non è possibile conoscere le specifiche. Non è quindi possibile conoscere quali dati in realtà contengano/trasportino né è possibile scrivere programmi che gestiscano questi dati. Sono chiusi i formati di registrazione di Microsoft Office (doc, xls, ppt...).

FreeBSD: È al tempo stesso un nome di un sistema operativo (completo di kernel e applicazioni) e della sua licenza d'uso. Sviluppato a partire da una versione resa libera dalla Università di California a Berkeley, FreeBSD viene divulgato come software libero ma con la possibilità per aziende di inglobare i programmi all'interno dei loro prodotti proprietari chiusi. È un ottimo prodotto ma con un futuro meno sicuro di GNU-Linux: funzionalità interessanti oggi accessibili come software libero potranno domani essere aggiornate solo in prodotti proprietari.

Free Software: v. Software Libero .

Freeware: Il software in assoluto più pericoloso. È un software proprietario a sorgente chiuso divulgato gratuitamente. Quasi sicuramente c'è un secondo scopo. Non sappiamo cosa contenga, spesso non si sa chi l'abbia costruito. Può servire per invogliare gli utenti a usare un determinato prodotto prima che diventi a pagamento, può servire per svolgere concorrenza sleale per esempio fornendo il browser per il Web come freeware e distribuendolo integrato coi propri sistemi operativi così che nessuno ne vada a cercare altri.

Funzione: A seconda dei linguaggi può essere sinonimo di procedura, oppure essere una procedura che restituisce un valore.

Gerarchia delle classi: La struttura ad albero (in Java) che si ottiene mediante la definizione di sottoclassi. La radice dell'albero è la classe di sistema Object.

Gnome: Interfaccia grafica libera sviluppata come progetto GNU. Molto potente e versatile è nata in un ambiente di informatici: inizialmente c'era più attenzione all'efficienza rispetto alla facilità di utilizzo e alla usabilità per utenti alle prime armi. Nelle varie versioni è notevolmente migliorato anche questo secondo aspetto. Usa X-Window .

GNU: GNU vuole dire GNU is Not Unix (cioé GNU Non è Unix). La definizione è ricorsiva: viene da chiedersi allora cos'è GNU, e si può ripetere e così all'infinito (vi ricordate è come: C'era una volta un Re, che disse al servitor, raccontami una fiaba e questi incominciò: C'era una volta....). GNU è il progetto di Richard Stallman per la creazione di un intero sistema operativo libero (diverso da Unix che era fornito chiuso dalle case produttrici). Il progetto è nato nel 1984: ora grazie a GNU abbiamo molti sistemi operativi ed applicazioni libere.

GNU-Linux: Quello che tutti chiamano erroneamente Linux. È un sistema operativo completo composto dal kernel di Linux e dalle applicazioni di GNU. Utilizzando il kernel di Linux da solo si otterrebbe un sistema privo di ogni programma, anche di quelli per la comunicazione con l'utente. Tutti quelli che dicono di usare Linux in realtà utilizzano GNU-Linux.

GPL: È la licenza pubblica di GNU: è il contratto che si approva per poter usare il software libero fornito da GNU. Contiene le quattro libertà fondamentali del software libero e il vincolo di non limitazione futura della libertà.

Hacker: È un esperto informatico desideroso di conoscere profondamente la propria materia in modo libero senza costrizioni o informazioni nascoste. Vuole conoscere esattamente come funzionano gli strumenti hardware e software che ha a disposizione. Rifugge tutti i software che non consentono di poter essere studiati, controllati e adattati alle proprie esigenze. Non fa nulla di illegale, non viola sistemi o la privacy di altri. Questo termine viene usato purtroppo ormai comunemente al posto della parola Cracker .

Hardware: È la parte fisica, materiale di un computer, quella elettronica, meccanica. In caso di dubbio ricordatevi il detto informatico: L'hardware si riconosce dal software in caso di guasto: l'hardware si può prendere a calci, contro il software di può solo inveire.

HTML: Linguaggio di marcatura che permette di usare dei marcatori opportuni (detti anche tag) per definire la struttura logica del documento, le relazioni che legano documenti diversi ed anche gli aspetti di presentazione del documento (stile, formattazione, eccetera). È il linguaggio ustao per definire le pagine Web che sarnno poi visulizzate da un browser.

IBM (International Business Machines Co.): Famosa e storica società nel campo dell'Informatica. Recentemente ha adottato software libero sui suoi server come strumento di concorrenza dei confronti di Microsoft. Sta facendo molto per la divulgazione del software libero ma non ha completamente mutato la sua politica. Detiene molti brevetti software e ha molti prodotti proprietari che vengono distribuiti con licenze molto restrittive e privi del codice sorgente. Le strade di IBM e del Software libero corrono parallele e vicine per l'attuale comune interesse di divulgare GNU-Linux , in futuro potranno convergere completamente o anche divergere.

IMAP: Internet Message Access Protocol, protocollo usato per la ricezione di posta elettronica che consente di organizzare e mantenere sul server la posta in arrivo e già letta.

Intel: Il più grande produttore di Microprocessori al mondo. Il suo prolungato successo si deve anche alla simbiosi in essere con Microsoft (tanto da venir nominati comunemente come un tutt'uno sotto il nome di Wintel). Tutti gli studiosi di architettura degli elaboratori sanno che il disegno dei processori Intel come i Pentium è meno lineare dei concorrenti Motorola (PowerPC), Digital (Alpha), Crusoe o MIPS. Molte delle complicazioni introdotte nei procesori Intel si devono alla scelta politica di avere completa compatibilità verso i precedenti prodotti della stessa marca: un programma in grado di funzionare su un 8086 dovrebbe funzionare anche sul più moderno Pentium IV. Forti investimenti sulle tecnologie ingegneristiche di produzione, possibili per l'elevato volume di vendita rispetto ai concorrenti mantengono i processori Intel competitivi nelle prestazioni.

Incapsulamento: Meccanismo presente in alcuni linguaggi mediante il quale si restringe l'accesso a determinate informazioni (dati e operazioni).

Ingegneria del software: Discipina informatica che studia le tecniche di realizzazione di grossi sistemi di calcolo, cercando di razionalizzare il progetto e di garantire che il prodotto finale risponda ai requisiti per i quali è stato progettato.

Installazione: Procedura che memorizza sul disco i file necessari al caricamento di un programma e li configura in modo da adattarsi alle caratteristiche del sistema.

Ipertesto: Testo che contiene dei collegamenti diretti (detti link, o collegamenti ipertestuali) fra alcune sue parti. Tali collegamenti permettono un accesso ed una lettura non sequenziale dell'ipertesto, navigando attraverso di esso.

ISP: Internet Service Provider, un fornitore di connettività a Internet. Usualmente fornisce anche servizi di base, come un server di posta elettronica (POP e SMTP).

Istanza: Un'istanza di una classe è ogni oggetto ottenuto da essa o da una delle sue sottoclassi.

Iterazione determinata: Costrutto di iterazione nel quale il numero di volte che il corpo viene eseguito è noto prima di iniziare l'iterazione. L'iterazione determinata è spesso espressa mediante la sintassi for.

Iterazione indeterminata: Costrutto di iterazione nel quale il numero di volte che il corpo viene eseguito non è noto prima di iniziare l'iterazione. L'iterazione indeterminata è spesso espressa mediante la sintassi while oppure repeat.

Iterazione: Costrutto di programmazione che consiste nella ripetizione di una determinata porzione di codice (corpo dell'iterazione).

Join: Operatore fondamentale dell'algebra relazionale che permette di mettere in relazione dati in tabelle diverse sulla base dei valori di attributi comuni oppure (nel caso del theta-join) sulla base di valori di attributi indicati esplicitamente nell'operazione di join.

Kernel: v. Nucleo .

Knoppix: È una distribuzione di GNU-Linux che non necessita di alcuna installazione. È sufficiente porre il CD nel lettore e riaccendere il computer. È molto più completa di Demolinux ma richiede computer abbastanza recenti per poter funzionare. L'attuale versione prevede l'interfaccia grafica con localizzazione italiana ma OpenOffice è incluso solamente in lingua inglese.

KDE: Interfaccia grafica molto potente, versatile, di facile utilizzo. Si presenta anche molto bene dal punto di vista estetico. È nata per consentire l'utilizzo di sistemi GNU-Linux (o altri Unix) anche per applicazioni personali. Giunta alla versione 3 viene fornita con un ricco corredo di applicazioni di ufficio, di configurazione e ludiche. Anche KDE usa X-Window .

Libero Pensiero Algoritmico: Terminologia coniata dall'autore per indicare la libertà di poter tradurre le proprie idee originali in programmi per computer senza dover sottostare a vincoli. Deve essere portata nel mondo moderno allo stesso livello della libertà di espressione, di stampa, di parola. I brevetti nel campo del software sarebbero la negazione della libertà di pensiero algoritmico. Il diritto di autore è perfettamente compatibile con la libertà di pensiero algoritmico perché tutela gli autori dal solo plagio. Chiunque desideri scrivere un testo, un libro, un articolo esprimendo con proprie parole concetti noti e meno noti è libero di farlo; così anche chi vuole scrivere programmi propri deve poterlo fare anche se sono presenti metodi risolutivi già usati altrove. Negare questo significa poter pretendere di brevettare formule matematiche, idee politiche, fedi religiose e in ultima analisi numeri. In Informatica Teorica si dimostra che ogni programma equivale a un numero. Provate a continuare a insegnare matematica se vi brevettano il pigreco o il numero e base dei logaritmi naturali.

Licenza d'uso: È il contratto che ogni utente deve stipulare per utilizzare un programma. Ci sono scritti i diritti e i doveri dell'utente. Per i programmi proprietari di solito la licenza prevede il diritto ad usare una copia del programma, il dovere di non modificarlo, non divulgarlo e di non analizzarne il funzionamento. Per i programmi liberi si prevede il diritto di piena conoscenza del programma, di duplicazione, di modificazione; l'utente ha il dovere di non limitare la libertà del programma. I programmi proprietari e i programmi liberi hanno una clausola in comune nella licenza d'uso: i produttori non si prendono responsabilità per i danni provocati da possibili errori presenti.

Linguaggio ad alto livello: Linguaggio di programmazione indipendente dalla macchina. Nei linguaggi moderni molta attenzione è posta ai meccanismi per la strutturazione del controllo, la modularizzazione, l'astrazione.

Linguaggio assembler: Linguaggio di programmazione a basso livello, le cui operazioni - direttamente eseguibili dall'hardware - sono indicate in modo mnemonico.

Linguaggio di programmazione: Linguaggio artificiale progettato per potervi scrivere algoritmi in modo chiaro e non ambiguo.

Linguaggio macchina: Linguaggio di programmazione rudimentale, che viene interpretato direttamente dall'hardware.

Linus Torvalds: È un hacker. È l'autore del primo kernel denominato Linux e ancora oggi ne coordina lo sviluppo che viene portato avanti da decine e decine di sviluppatori coadiuvati da migliaia di utilizzatori esperti che trovano problemi e propongono soluzioni. Torvalds è finlandese ma attualmente vive e lavora negli Stati Uniti.

Linux: È il kernel di sistema Unix oggi più usato al mondo. Linux è altamente portabile su macchine di architettura molto diversa (palmari, personal computer con i processori più diversi, server, supercomputer). È software libero. Chiunque voglia guardare, studiare, modificare il codice di Linux può scaricare i sorgenti da www.kernel.org.

Login: Procedura di accesso ad un sistema multiutente. Talvolta è sinonimo di account, cioè del nome col quale un utente è noto al sistema.

Mandrake: È una distribuzione di GNU-Linux. Simile a RedHat è sempre stata famosa per la sua semplicità di installazione e di configurazione. È stata sviluppata in Francia. Attualmente la società MandrakeSoft che gestisce la distribuzione non naviga in ottime acque dal punto di vista finanziario.

Messaggio: Nel contesto di un linguaggio orientato agli oggetti, il meccanismo mediante il quale gli oggetti comunicano.

Metodo privato: Un metodo che non può essere invocato dall'esterno di una classe. La possibilità di definire metodi privati garantisce una certa forma di incapsulamento.

Metodo: procedura incapsulata in una classe; risponde a un determinato messaggio.

Modello dei dati: Un modello dei dati è costituito da un insieme di costrutti utilizzati per organizzare i dati e per descriverne l'evoluzione. Nei DBMS si distinguono i modelli concettuali e quelli logici.

Motorola: Uno dei più importanti costruttori di processori non Intel compatibili. Sebbene la fetta di mercato nell'ambito dei personal computer sia piccola (gli Apple Macintosh per esempio montano questo tipo di processori) Motorola ha un ampio mercato in installazioni industriali. Sui processori Motorola GNU-Linux funziona perfettamente, i sistemi operativi Windows no.

Multiutente: Una caratteristica di alcuni Sistemi Operativi, che permette la presenza di più di un utente. Gli utenti hanno spazi di lavoro distinti e (relativamente) protetti.

Nucleo: Comunemente indicato col termine inglese kernel. È il programma principale di ogni computer. Attivato al momento dell'accensione il nucleo rimane in memoria fino allo spegnimento o alla riattivazione da parte dell'utente. Il nucleo gestisce tutte le unità periferiche del sistema (dischi, stampanti, video-grafici, mouse, tastiera, terminali, ...) e fornisce dei modi di interazione standard che possono essere utilizzati dai programmi in esecuzione (le cosiddette system call). Il nucleo gestisce anche la sicurezza di accesso e la protezione dei dati.

NTFS: New Technology file system, organizzazione del file system disponibile in Windows 2000 e XP. Supporta funzionalità aggiuntive rispetto al precedente FAT e consente un migliore utilizzo dello spazio disco. È il file system dei sistemi professionali Windows. Il formato di registrazione è chiuso. Non ha il problema della frammentazione e gestisce la multiutenza. L'organizzazione appare complessa e questo lo rende meno efficiente dei concorrenti file system ext3 o raiserfs presenti nei sistemi liberi.

Office automation (automazione d'ufficio): Ci si riferisce con questo termine all'uso coordinato di strumenti software per la comunicazione e l'elaborazione di dati, nel contesto di piccole reti di PC quali quelle che si hanno in ufficio.

Oggetto OLE: È un generico oggetto (testo, immagine, informazione multimediale) che può essere gestito tramite OLE (Object Linking and Embedding). Gli oggetti OLE permettono di creare documenti composti, dove ogni oggetto è gestito dall'applicazione che lo ha creato.

Oggetto: Entità dinamica che incapsula sia dati che operazioni su di essi. È un'istanza della propria classe.

OpenOffice: Derivata da StarOffice, prodotto della Sun Microsystems, OpenOffice è oggi una suite di prodotti da ufficio di potenzialità del tutto comparabili a Microsoft Office. È software libero. È un ottima scelta nel mondo della scuola per utilizzare software libero, formati aperti e, perché no, risparmiare il costo delle licenze d'uso in completa legalità.

Open Source: È un movimento con finalità simili a quello del Software Libero ma non identiche. Le regole previste dalle licenze Open Source sono più lasche di quelle previste da GNU: vengono consentite licenze che ammettono l'inserimento di software Open Source in prodotti proprietari o licenze che prevedono la revoca da parte del primo creatore. Vengono talvolta denominati erroneamente Open Source programmi proprietari per i quali è disponibile ma non riutilizzabile, modificabile il codice sorgente. Questa disponibilità spesso è non totale e rivolta a classi ben determinate di utenti. Questo errore fa comodo a molti grandi fornitori di software e viene il legittimo dubbio che si tratti di una interpretazione deliberatamente erronea per creare confusione fra le terminologie.

Palladium: Progetto che prevede il completo controllo dei programmi e dei dati elaborati su ogni computer tramite un meccanismo di certificazione. È un sistema certamente incompatibile con l'uso di software libero. Solo programmi e dati firmati potranno essere eseguiti o riprodotti sarà quindi possibile escludere interi gruppi di prodotti software, contenuti anche di rete dalla fruibilità dei possessori di sistemi tipo Palladium. Viene proposto come standard per i personal computer nei prossimi anni. (Per saperne di più �).

Parametro: Argomento di una procedura o funzione.

Patch: In italiano viene tradotto con il temine pezza. L'idea espressa è infatti quella di rammendare il programma ponendo una pezza dove questo presenti un difetto. Serve per modificare un programma per risolvere un malfunzionamento. Solo chi conosce il codice sorgente di un programma può produrre una patch.

Patent: v. Brevetto sul software .

Payware: Software proprietario con licenza d'uso onerosa. È il classico programma proprietario. Non potrete mai essere sicuri che faccia ciò che dichiara perché non potete farlo analizzare, può contenere ogni sorta di funzionalità benevola o malefica a vostra insaputa. L'utilizzatore non può modificarlo. Gli errori, in modo particolare quelli che comportano rischi per la sicurezza, vengono mantenuti riservati fino a quando la casa costruttrice non abbia disponibile la patch per ripararli. Questo dà agli utilizzatori di software proprietario una falsa sensazione di sicurezza.

Permesso d'autore: o copyleft. Viene posto in contrapposizione con il copyright o Diritto di Autore. In realtà è una particolare applicazione del diritto di autore nel quale l'autore invece che rivendicare a sé il diritto sull'opera in senso restrittivo rivendica solo la paternità dell'opera ma ne lascia (to leave, lasciare, di cui left è il participio passato) la libera distribuzione e copia.

Pezza: v. Patch .

POP: Post Office Protocol, protocollo usato per la ricezione di posta elettronica.

PowerPC: È una famiglia di processori sviluppata da IBM e Motorola. È incompatibile con i processori Intel.

PPP: Point to Point Protocol, protocollo usato per la connessione via modem tra un calcolatore ed un ISP.

Procedura: Sottoprogramma dotato di un nome.

Programma di videoscrittura: Programma che permette di scrivere, modificare, formattare documenti di vario genere.

Proprietario: Si dice proprietario un sistema operativo, un software applicativo o un formato di dati del quale non è possibile conoscere le specifiche. Deriva dall'inglese proprietary che significa di proprietà privata. L'uso di formati di dati proprietari rende vulnerabili al ricatto delle ditte detentrici del formato stesso. Il tempo proprio o aziendale investito nell'inserire dati in un determinato formato è un investimento, talvolta cospicuo. Coi formati proprietari non vi è la garanzia di poter ottenere restituiti i propri dati.

RedHat: Distribuzione molto famosa di GNU-Linux. È gestita dall'omonima società americana. Molto ben costruita, nelle ultime versioni ha migliorato considerevolmente la facilità di installazione e l'interfaccia grafica che risulta essere l'unione di KDE e Gnome. Fornisce versioni vendibili con manuali e servizi di consulenza e assistenza a pagamento. Anche i servizi di aggiornamento del software potrebbero in futuro non essere gratuiti.

Registro di sistema: File presenti in Windows che mantengono informazioni sullo stato del Sistema Operativo.

Relazionale: (modello dei dati) Modello logico dei dati nel quale i dati sono rappresentati mediante relazioni (intese nel senso del modello relazionale, vedi relazione ). I riferimenti fra dati diversi nel modello relazionale sono realizzati usando solo valori.

Relazione: (in senso matematico) Una relazione su n insiemi anche non distinti D1 , ... , Dn è definita come un qualsiasi sottoinsieme del prodotto cartesiano D1 x ... x Dn . (nel senso del modello relazionale dei dati) Struttura di rappresentazione dei dati visualizzabile come una tabella che rispetti i seguenti vincoli; ogni colonna della tabella ha una intestazione (nome di attributo) e le intestazioni delle colonne sono diverse fra di loro; i valori di ogni colonna sono omogenei; le righe sono diverse fra loro; l'ordinamento tra le righe è irrilevante; l'ordinamento tra le colonne è irrilevante.

Richard Stallman: Padre fondatore dell'idea del Software Libero e del progetto GNU. Programmatore all'MIT lasciò l'ente di ricerca per fondare la Free Software Foundation.

Schema: (di una base di dati) Oggetto descrive la struttura invariante nel tempo di una serie di dati, ovvero l'aspetto intensionale.

Shareware: Sono programmi proprietari divulgati gratuitamente in forma di codice eseguibile. Hanno funzionalità ridotte o funzionano per un tempo limitato. Per ottenere la versione completamente e indefinitamente funzionante del programma occorre pagarne il prezzo. Hanno le stesse caratteristiche di insicurezza di tutto il software proprietario con l'aggravante che spesso il costruttore è poco conosciuto.

Sistema informatico: Parte automatizzata del sistema informativo, ovvero quella parte che gestisce le informazioni usando l'informatica.

Sistema informativo: Componente di una organizzazione che gestisce (acquisisce, elabora, conserva, produce) le informazioni interessanti per l'organizzazione in questione. Si noti che, in principio, l'esistenza di un sistema informativo prescinde da qualsiasi processo di automazione. In effetti istituzioni vecchie di secoli (quali ad esempio le banche) usavano sistemi informativi prima che esistesse l'energia elettrica.

Sistema operativo: Insieme di programmi che interagiscono e controllano le funzionalità della macchina fisica (hardware) in modo tale da offrire ai programmi applicativi ed agli utenti un insieme di funzionalità con un maggiore livello di astrazione.

SMTP: Simple Mail Transfer Protocol, protocollo usato per trasferire messaggi di posta elettronica. È usato da un client per inviare posta ad un server.

Software: È la parte logica, immateriale di un computer, quella fatta da programmi e dati. In caso di dubbio ricordatevi il detto informatico: L'hardware si riconosce dal software in caso di guasto: l'hardware si può prendere a calci, contro il software di può solo inveire.

Software applicativo: Insieme dei programmi che, usando le funzionalità del sistema operativo, permettono di realizzare specifici compiti quali, ad esempio: vidoescrittura, navigazione in Internet, elaborazione di dati mediante fogli elettronici, gestione di basi di dati, elaborazioni multimediali.

Software di pubblico dominio: Software non coperto da diritti. Si può copiare liberamente senza temere alcuna conseguenza.

Software freeware: Software coperto da copyright ma disponibile gratuitamente (le aziende che lo distribuiscono guadagnano sulla fornitura di servizi). Si sta sviluppando notevolmente soprattutto grazie al sistema operativo Linux che è stato concepito come free-software.

Software Libero: Se siete arrivati fino a questo punto nella lettura e non l'avete compreso... Siccome è un glossario per correttezza comunque lo rispiego: è un software che rispetta tutte le quattro condizioni seguenti: 1- libertà di esecuzione del programma senza vincoli, 2-libertà di conoscere come funziona il programma, 3- libertà di modificare il programma, 4- libertà di redistribuire il programma modificato. Il software libero è un modello culturale etico ed economico.

Software proprietario: Software coperto da copyright e deve essere acquistato. Se viene usato senza essere acquistato (ad esempio usando copie illegali) si può essere perseguiti a norma di legge.

Sorgente: v. Codice Sorgente .

Sorgente Aperto: Programmi il cui codice sorgente è aperto, i.e. leggibile liberamente. Raramente viene usato come sinonimo di Open Source.

Sorgente Chiuso: Programmi il cui codice sorgente è chiuso. Vengono distribuiti solamente nella forma di codice eseguibile. Non sono controllabili, studiabili, modificabili.

Sottoclasse: Una classe derivata da un'altra (la superclasse) mediante estensione o ridenominazione (di metodi).

SQL: (Structured Query Language) Linguaggio di interrogazione per basi di dati relazionali, disponibile in varie versioni, con interfacce sia grafiche che testuali. Può essere a sé stante oppure immerso in linguaggio di programmazione ospite (Pascal, Java, C, oppure un linguaggio specifico per alcune applicazioni).

Superfloppy: Dischetti ad alta capacità (120 o 150 MB) utili per gestire backup di media dimensione. Alcune unità (SUPERDISK) sono compatibili (cioè sono in grado di leggere e scrivere) coi tradizionali floppy.

Suse: Distribuzione GNU-Linux molto ben costruita e professionale. È di origine tedesca, viene gestita dalla ditta omonima ed è stata scelta come distribuzione per la pubblica amministrazione dal governo tedesco. Anche questa distribuzione è liberamente scaricabile da Internet ma è anche acquistabile in confezioni corredate da manuali, esistono servizi di consulenza a pagamento per imprese.

Tipo di dato: Concetto dei linguaggi di programmazione, costituito da un insieme di valori e da un repertorio di operazioni definite su tali valori.

Transazione: Insieme di operazioni su di una base di dati che devono essere considerate in modo indivisibile (o atomico).

Unix: Unix è oggi una classe di sistemi operativi. Linux è uno di questi. L'idea di Unix nacque nei laboratori della Bell (Oggi AT&T, società telefonica). In realtà venne alla luce nonostante l'AT&T. Ritchie e Thomson portarono avanti volontariamente il progetto Multics che la Bell aveva dichiarato chiuso. Era il 1969 ma la vera rivoluzione che ha portato Unix ai giorni nostri si deve a Ritchie ed è datata 1973. Il sistema operativo, fino ad allora scritto espressamente per ogni diverso computer nel linguaggio proprio di quel computer, viene riscritto in un linguaggio nuovo: il C, inventato apposta da Ritchie. Anche il traduttore del linguaggio C in codice macchina è scritto in C. Unix diventa in questo modo portabile in macchine diverse con poco sforzo. Il sistema operativo non è più specifico di una macchina ma adattabile a macchine diverse. I programmatori e gli utenti possono così avere una interfaccia unica e un insieme di strumenti unico anche cambiando tipo di computer. Ormai il C è diventato di uso universale per la scrittura dei sistemi operativi. Anche i sistemi operativi e gli applicativi della Microsoft sono scritti in C o in un suo dialetto.

Uova di Pasqua: Sono simili ai cavalli di Troia . Non hanno però funzionalità malefiche. Molto note sono le uova di pasqua con le quali i veri sviluppatori di software proprietario firmano le proprie opere per rifuggire la frustrazione di non poter vedere attribuito il proprio lavoro fuori dall'azienda. Le ditte produttrici di software proprietario infatti vogliono che il prodotto sia associato alla marca e non alle capacità dei progettisti e sviluppatori che l'hanno effettivamente creato che dovrebbero sempre rimanere anonimi.

Vermi: Sono programmi che si autoreplicano e si propagano da un sistema all'altro sfruttando errori di programmazione dei programmi. Famosi sono il verme di Morris, il primo conosciuto creato nel 1988 che mise in ginocchio l'allora nascente Internet, il code Red e il recentissimo Microsoft SQL Slammer. L'infezione può essere trasferita anche fra macchine di architettura differente. Molti vermi non producono danni esplicitamente ma bloccano le attività consumando la potenza elaborativa. Possono esistere comunque vermi che danneggiano e vermi che creano canali per successive intrusioni. Ci si difende con personale addetto a aggiornare o riparare i programmi appena venga conosciuta una nuova fragilità del sistema. Occorre libero accesso alle informazioni sui possibili problemi riscontrati.

Virus: Frammenti di programma in grado di autoreplicarsi e di attaccarsi a programmi esistenti. La replicazione avviene per copia di programmi infetti. Sono strettamente legati all'architettura software del sistema: un virus per Windows non funziona in GNU-Linux. Come i virus biologici quelli informatici rimangono inizialmente inattivi per un periodo di latenza e cercano di installarsi nei punti nevralgici del sistema per massimizzare il contagio. Ci si difende utilizzando sistemi che non consentano la modificazione dei programmi di sistema o l'accesso ai dispositivi durante il normale uso; sistemi professionali quali Windows NT, 2000, XP, GNU-Linux o altri Unix. Occorre anche identificarsi come un utente di prova (che non abbia accesso ai dati) quando si vogliono provare programmi della cui sicurezza non si è certi. Occorre evitare anche l'uso programmi di lettura della posta che attivino automaticamente contenuti (per esempio OutLook) e di strumenti di elaborazione di ufficio che nascondano nei documenti la possibilità di inserire interi programmi capaci di danneggiare il sistema e i propri dati (e.g. le macro di Microsoft Office). Un file .doc che dovrebbe contenere solamente dati può contenere delle macro, che sono un programma, e quindi anche virus.

Web: v. WWW .

Windows: È una categoria di sistemi operativi diversissimi fra loro accomunati dal solo fatto di essere costruiti dalla Microsoft. I sistemi Windows 3.11, 95, 98, ME sono per elaborazioni personali, privi di ogni protezione per l'accesso ai dati o alle periferiche. I sistemi W. NT, 2000, XP sono professionali. Sono sistemi proprietari a sorgente chiuso.

Wintel: È un modo comune di nominare la associazione Windows/Intel.

Worm: v. Vermi .

WWW (World Wide Web): È un'altra conquista libera. Il WWW è la ragnatela grande come il mondo, un ipertesto di dimensioni globali ottenuto collegando informazioni contenute in pagine scritte in linguaggio html (formato libero) tramite collegamenti ipertestuali. Le pagine possono includere anche elementi di altro formato (secondo uno standard aperto chiamato mime) anche multimediale. La navigazione nell'ipertesto avviene tramite l'uso di programmi cliente chiamati Browser che richiedono le pagine ai server tramite il protocollo (aperto) http. Nell'ambito del WWW è anche stata standardizzata la modalità di riferire documenti locali o remoti per mezzo dell'uso dell'URL (Uniform Resource Locator). Un esempio di URL è http://www.fsf.org. È stato creato da Tim Berners-Lee del CERN di Ginevra nel 1990.

X-Window: Progettato all'MIT il prestigioso Massachussets Institute of Technology, X-Window è un sistema di interazione grafica client-server. In pratica consente di poter separare il programma in esecuzione e la sua interfaccia in due macchine diverse. Con X-Window è possibile interagire graficamente con programmi in funzione in altri punti della rete. Questo consente per esempio di poter fare elaborazioni grafiche interattive su computer molto potenti e costosi senza dover essere fisicamente presso un terminale grafico del computer stesso. Esiste un solo elaboratore in Emilia Romagna capace di fare le elaborazioni metereologiche accurate. Senza X-Window tutti i metereologi dovrebbero andare fisicamente al CINECA che gestisce questo computer, con X-Window fanno le elaborazioni comodamente nel loro ufficio. Tutte le interfacce grafiche di Unix e di GNU-Linux sono basate su X-Window. I sistemi Windows possono avere X-Window solo come applicazione.