Archive for the ‘Programmazione’ Category


How to improve OSS usability? How to create GUIs for OSS? [English] [1]

by Giacomo Fazio aka l3golas

What about Open Source Software (OSS) usability?

  • OSS is sometimes software developed from programmers for other programmers, so with emphasis on functionalities and performance, rather than on usability.
  • But something is changing and usability importance grows more and more day after day (ex. OpenOffice)
  • Meetings that focus on OSS usability and on how it can be important to increase adoption of free technologies are more and more frequent
  • However, not so much has been done till now… (continua…)

Programmi a 32 bit su Ubuntu a 64 bit

Questa guida è stata testata su Ubuntu a 64 bit, ma dovrebbe andare più o meno con tutte le distrubuzioni derivate da Debian, con le dovute modifiche.

Installare se possibile la versione a 64 bit, se non c’è scaricare i sorgenti e compilarla sul proprio sistema. Se non si può fare o per qualche motivo si vuole far funzionare la versione a 32 bit del software che ci interessa già compilata, installare prima di tutto il pacchetto ia32-libs, che contiene la versione a 32 bit delle librerie più comuni e le installa in /usr/lib32 mettendole a disposizione del sistema.

(continua…)


Py-TightVnc : GUI per TightVnc su Linux

TightVnc è una implementazione di VNC server molto utilizzata in ambiente UNIX, per la sua leggerezza e per le sue caratteristiche.
Py-TightVnc nasce dal fatto che TightVNC prevede, purtroppo, nella distrubuzione ufficiale, l’interfaccia graca solamente per l’ambiante Microsoft Windows, forse ció è comprensibile per il fatto che molti sys administrator preferiscono configurare il proprio server unix da linea di comando e non sentono la necessità di alcun tool grafico di configurazione (si pensi alla con gurazione di Apache, Squidserver,Ldap-server, etc..che non prevedono gui di con gurazione molto avanzate). (continua…)


Usare le board Xilinx (FPGA) su Linux

La tecnologia FPGA (Field programmable gate array) è senza dubbio molto interessante, in quanto si propone come un’alternativa (in certi casi) ai circuiti ASIC (Application Specific Integrated Circuit), cioè a quei circuiti integrati che normalmente siamo abituati a vedere e che sono stati prima progettati e poi realizzati in fabbrica. Questi ultimi hanno un costo per chip bassissimo (ordine di grandezza del dollaro), parametri ottimizzati (es. bassa potenza dissipata), ma presentano molti svantaggi, tra cui cicli di progettazione e di produzione lunghissimi, costi iniziali molto elevati e impossibilità di correggere eventuali bug dopo aver prodotto il chip. (continua…)


SQLite e suo utilizzo in Python ( pysqlite )

SQLite è una libreria scritta in C che implementa il motore di un database SQL che non necessita di alcuna configurazione per partire. Infatti scaricandolo, si presenta come un eseguibile (.exe o .bin) che passando come parametro il nome di un file, crea un database sul file indicato con delle hash table e risulta possibile aggiungere tabelle come in un qualsiasi altro DBMS.

L’eseguibile di SQLite è scaricabile da:

http://www.sqlite.org/download.html

(continua…)


Gcc Optimizations : Thumb Mode

Come è già stato detto nell’articolo Gcc Optimizations le ottimizzazioni sono una delle caratteristiche avanzate di GCC e sono state introdotte per limitare il tempo di compilazione, o l’uso della memoria, oppure per raggiungere un compromesso tra velocità e spazio occupato dall’eseguibile generato dalla compilazione.

Vediamo adesso un metodo alternativo per diminuire le dimensioni del codice : “thumb mode”.
(continua…)


Attacchi alle applicazioni basate su Buffer Overflow

Il buffer overflow (spesso abbreviato in BOF) è una delle tecniche più avanzate di hacking del software. Tutto nasce da un difetto che può caratterizzare un determinato software e, se utilizzato a dovere, può agevolare l’accesso a qualsiasi sistema che utilizza il software in questione. Spesso, infatti, si sente parlare di “exploit”, ossia metodi ad hoc che utilizzano le vulnerabilità scoperte in questo o in quel software e che permettono all’utilizzatore di acquisire privilegi che non gli spettano (ad esempio i tanto agognati privilegi di root) o di portare al “denial of service” del computer attaccato. Molti di questi exploit utilizzano per i loro scopi buffer overflow.
Questo tipo di debolezza dei programmi è noto da molto tempo, ma solo di recente la sua conoscenza si è diffusa tanto da permettere anche a dei cracker dilettanti di sfruttarla per bloccare o prendere il controllo di altri computer collegati in rete.
In poche parole, il buffer overflow consiste nel fornire al programma più dati di quanto esso si aspetti di ricevere, facendo in modo che una parte di questi dati vadano scritti in zone di memoria dove ci sono, o dovrebbero esserci, altri dati (da ciò il nome, che letteralmente significa “Trabocco dell’area di memoria”). (continua…)


Gcc Optimizations

In questo articolo tratteremo una selezione delle ottimizzazioni possibili che possono essere utili a chiunque voglia compilare un programma attraverso Gcc tenendo conto dei requisiti di spazio e velocità.
(continua…)