Date: Tue, 09 Dec 2008 09:20:02 +0000 From: "Bruce M. Simpson" <bms@FreeBSD.org> To: Espartano <espartano.mail@gmail.com> Cc: freebsd-net@freebsd.org Subject: Re: how to program a driver? Message-ID: <493E3842.7030100@FreeBSD.org> In-Reply-To: <d353bd50812082005i3f626162g2616bf2d363a4008@mail.gmail.com> References: <d353bd50812082005i3f626162g2616bf2d363a4008@mail.gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
[Resend to list for everyone] Espartano wrote: > Actually i know how to program with C language in a basic level but i > don't know nothing about hardware or computer organization, what > topics i should study for gain knowledges about net-drivers ? or if > someone can recommend me books about this topic i will be very > thankful. > The seminal work is TCP/IP Illustrated Volume 2 (Gary Wright and W. Richard Stevens, Addison-Wesley). Whilst dated it will give you an overview of how all the parts in the BSD networking stack fit together. It really needs to be updated, however enough things are in flux right now that summarising all the changes would be difficult until say after FreeBSD 8.0 dust is settled. For computer architecture, probably best to learn PC architecture these days -- x86 is here to stay, kids, and Netbooks are something of a reactionary response triggered by the One-Laptop-Per-Child (OLPC) project. In my day, I learned 68000 assembly and C on the Amiga. Hans-Peter Messmer's "The Indispensable PC Hardware Book" is a huge book which cost me about 50 GBP new when I first bought it -- I was working in a reasonably well paid job at the time, but it can be found second hand no doubt around the world. Cover to cover it will tell you what you need to know about how the PC architecture fits together, but if you need more detail e.g. on stuff like FreeBSD network drivers, again, it's best to refer back to the source code itself. Hope this helps. cheers BMS
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?493E3842.7030100>