Programmazione.it v6.4
Ciao, per farti riconoscere devi fare il login. Non ti sei ancora iscritto? Che aspetti, registrati adesso!
Info Pubblicità Collabora Autori Sottoscrizioni Preferiti Bozze Scheda personale Privacy Archivio Libri Corsi per principianti Forum
Greenpeace
Protothread - una libreria per il C
Scritto da Davide Panceri il 07-04-2005 ore 04:54
Intel Cluster Studio XE
La libreria <a href="http://www.sics.se/%7Eadam/pt/index.html" target="_blank">Protothreads</a> è stata progettata da <a href="http://www.sics.se/%7Eadam/" target="_blank">Adam Dunkels</a>, in collaborazione con <a href="http://www-computerlabor.math.uni-kiel.de/%7Eoschmidt/everest.html" target="_blank">Oliver Schmidt</a>. Dunkels è un ricercatore svedese che si occupa anche di <a href="http://dunkels.com/adam/music/" target="_blank">musica</a>, oltre ad aver progettato un <a href="http://dunkels.com/adam/as64/" target="_blank">Assembler</a> per Commodore 64 e uno <a href="http://www.sics.se/%7Eadam/uip/" target="_blank">stack</a> TCP-IP di dimensioni ridotte, su cui ha sviluppato <a href="http://www.sics.se/%7Eadam/contiki/" target="_blank">Contiki</a>. Oliver Schmidt invece è tedesco, e ha ideato l'editor <a href="http://www-computerlabor.math.uni-kiel.de/%7Eoschmidt/everest.html" target="_blank">Everest</a> per computer Atari.

Rispetto al multi-thread tradizionale, le cui richieste di memoria possono mettere in ginocchio un dispositivo di dimensioni ridotte per via dello stack associato a ciascun thread, qui lo stack è uno solo e viene condiviso da tutti i proto-thread; pertanto, la quantità di memoria richiesta diminuisce sensibilmente, arrivando a 2 byte per protothread.

Un altro vantaggio di questa libreria è la sua implementazione in puro C, che la rende estremamente portabile. Ovviamente ci sono delle limitazioni: ad esempio non è prudente utilizzare variabili locali nell'ambito di una chiamata bloccante.

Per comprendere il funzionamento di questa libreria, il sito mette a disposizione la <a href="http://www.sics.se/%7Eadam/download/pt-1.1-refman.pdf" target="_blank">documentazione</a> in formato PDF, oltre ad una sintetica pagina <a href="http://www.sics.se/%7Eadam/pt/api.html" target="_blank">riassuntiva</a> dell'API. La documentazione contiene alcuni esempi, altri se ne trovano <a href="http://www.sics.se/%7Eadam/pt/examples.html" target="_blank">online</a> sempre sul sito; inoltre il codice <a href="http://www.sics.se/%7Eadam/pt/download.html" target="_blank">sorgente</a> è ampiamente commentato.
Precedente: Microsoft-Linux, continua la guerra delle ricerche di mercato
Successiva: Un computer che ha segnato la storia dell'informatica e vive ancora oggi: il PDP-11.
Copyright Programmazione.it™ 1999-2013. Alcuni diritti riservati. Testata giornalistica iscritta col n. 569 presso il Tribunale di Milano in data 14/10/2002. Pagina generata in 0.285 secondi.