Re: Driver Development Books?

From: Scott Long (scottl_at_samsco.org)
Date: 10/12/05

  • Next message: Rob Watt: "Re: freebsd-5.4-stable panics"
    Date: Wed, 12 Oct 2005 07:06:59 -0600
    To: Pete <TheManifestShadow@gmail.com>
    
    

    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
    _______________________________________________
    freebsd-hackers@freebsd.org mailing list
    http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
    To unsubscribe, send any mail to "freebsd-hackers-unsubscribe@freebsd.org"


  • Next message: Rob Watt: "Re: freebsd-5.4-stable panics"

    Relevant Pages

    • Re: Drivers for beginners
      ... > quite a few classes in digital design and extensive linux use. ... > the basic theory of drivers and the OS (kernel) and hardware, ... > If you could also suggest any online tutorials or books that would be ...
      (comp.os.linux.development.system)
    • Re: A narrowed down question about video cards
      ... Suse for AMD: ... You could try writing it ... NVIDIA, from what I hear, provide good Linux drivers. ... X and kernel developers are writing the drivers. ...
      (comp.os.linux.hardware)
    • Books on writing linux device drivers
      ... I am about to start on writing a linux device driver. ... There are some books that are a few years old now, ... What would be useful for a relatively recent kernel? ...
      (Linux-Kernel)
    • Re: ACPI Error under 2.6.26-rc*
      ... and attach the rsdp for all of the three cases (good, ACPI Error, ... could you please attach the dmesg output of a 2.6.25.10 kernel which has ... # IPVS transport protocol load balancing support ... # Device Drivers ...
      (Linux-Kernel)
    • init_emergency_isa_pool calling mempool_create in non-sleeping context
      ... I just saw this when booting a current linux-2.6.git kernel. ... # Power management and ACPI options ... # Bus options (PCI etc.) ... # Enable WiMAX to see the WiMAX drivers ...
      (Linux-Kernel)