From owner-freebsd-hackers@FreeBSD.ORG Wed Oct 12 13:07:10 2005 Return-Path: X-Original-To: freebsd-hackers@freebsd.org Delivered-To: freebsd-hackers@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id BF97216A41F for ; Wed, 12 Oct 2005 13:07:10 +0000 (GMT) (envelope-from scottl@samsco.org) Received: from pooker.samsco.org (pooker.samsco.org [168.103.85.57]) by mx1.FreeBSD.org (Postfix) with ESMTP id 32AA943D45 for ; Wed, 12 Oct 2005 13:07:05 +0000 (GMT) (envelope-from scottl@samsco.org) Received: from [192.168.254.204] ([192.168.254.204]) (authenticated bits=0) by pooker.samsco.org (8.13.4/8.13.4) with ESMTP id j9CD73jL058718; Wed, 12 Oct 2005 07:07:03 -0600 (MDT) (envelope-from scottl@samsco.org) Message-ID: <434D0A73.2010509@samsco.org> Date: Wed, 12 Oct 2005 07:06:59 -0600 From: Scott Long User-Agent: Mozilla/5.0 (X11; U; FreeBSD i386; en-US; rv:1.7.8) Gecko/20050615 X-Accept-Language: en-us, en MIME-Version: 1.0 To: Pete References: <434BECA0.9050501@gmail.com> In-Reply-To: <434BECA0.9050501@gmail.com> Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit X-Spam-Status: No, score=-1.4 required=3.8 tests=ALL_TRUSTED autolearn=failed version=3.1.0 X-Spam-Checker-Version: SpamAssassin 3.1.0 (2005-09-13) on pooker.samsco.org Cc: freebsd-hackers@freebsd.org Subject: Re: Driver Development Books? X-BeenThere: freebsd-hackers@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Technical Discussions relating to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 12 Oct 2005 13:07:10 -0000 Pete wrote: > Hello, > I have what may seem to be a silly question, but I cannot find any > other decent resources on the web. >.< The problem that I am having > right now is > that I have a fairly nice graphics card which, for the moment is only > supported on Windows Operating systems, and old 2.4 Linux kernels. So > far there has > not been much positive outlook in porting the drivers to *BSD or any of > the 2.6 kernels that I know of, let alone 64-bit drivers for non-Win OSes. > > So I guess that makes my question fairly simple then; I know that driver > code is written in C (which I am learning currently) but thats about all > I know. I'm probably > not far off when I say that I need more to go on. Yet, from looking at > Amazon.com I have not been able to find any books on writing driver > code, which is really > frustrating. > > One of my security related books, Rootkits, tells me about how to write > drivers for a completely different reason so I know a bit more about how > they work but again > the code involved does not interface hardware to the OS, just injects a > custom application. The other tool that I will probably use is Jungo, > which is a nice-looking > application which automates a skeletal version of the driver you need, > but again, I would not know how to fill it out. > > Any help is appreciated. > > -Pete > There are indeed no books that I know of on the subject of writing drivers for any *BSD, let alone FreeBSD. For the last year I've wanted to sit down and write such a book, but the amount of time needed to do this is daunting. Anyways, there were a couple of articles published back around 2000 on DeamonNews that covered some basic information on writing kernel modules, and they are likely still available via the various web search engines. For more detailed information, you'll need to dig into the kernel source code, look for appropriate manual pages, and ask questions. There are a number of really good people on this list that try to answer most questions like this, so don't be afraid to ask. Scott