Existe um livro muito bom sobre o assunto, o autor é Axel-Tobias Schreiner, e você pode baixar o pdf do livro em: http://www.inf.uos.de/axel/ (no link books) Existe uma versão em inglês também, pois o original está em alemão.
Vale a pena até como exercício de programação C, usando ponteiro até falar chega...

