Come programmare le socket in ambienti GNU/Linux (Parte 2)

Nel primo articolo abbiamo analizzato il funzionamento delle socket e di un server con rispettivo client. In questo vedremo un modo di programmare un tipico server concorrente utilizzando la funzione fork(). Prima di addentrarci nel codice del server concorrente, vediamo un po’ come funziona la tecnica di forking. Forking Il forking consente di effettuare delle […]

Come programmare le socket in ambienti GNU/Linux (Parte 1)

Introduzione La socket (in inglese “presa“) è una particolare astrazione software che permette ai processi messi in comunicazione di inviare e ricevere dati. Le socket sono nate intorno agli anni ’80, il primo kernel a implementarle fu BSD 4.2 nel 1983. Client/Server La struttura base di funzionamento delle socket è di tipo Client/Server. Supponiamo di […]

Capire e sfruttare i puntatori a funzione e le enum in C

In questo articolo vi mostrerò come sfruttare praticamente i puntatori a funzione e le enumerazioni, o enum, in C. Se non sapete ancora di cosa stiamo parlando vi consiglio di leggere un manuale di C o altri tutorial a livello più basilare. Il mio solito consiglio è l’ottimo Kernighan & Ritchie. Partiamo da un programma […]

Capire e sfruttare le operazioni bitwise

In questo articolo vi mostrerò alcune tecniche e suggerimenti che vi consentiranno di acquisire una certa dimestichezza con l’aspetto più a basso livello del linguaggio C: le operazioni binarie o bitwise. Si presuppone una conoscenza di base del linguaggio, dimestichezza con il proprio sistema operativo e il compilatore installato. Il tutorial è stato scritto e […]

HowTo: Virtualizzazione di Damn Small Linux su VirtualBox

Damn Small Linux, abbreviato in DSL, è una particolarissima distribuzione di Linux progettata per funzionare anche su computer vecchissimi con soli 16MB di Ram e processori 486DX. Per raggiungere questo traguardo i suoi progettisti hanno messo insieme i programmi più leggeri e allo stesso tempo completi e utili che si possono trovare in giro per […]