Slashdot Mirror


How Device Drivers Are Reverse Engineered

An anonymous reader writes: Linux Voice magazine has published a long article about how people go about reverse engineering drivers for hardware peripherals. They use Python and a USB radio-controlled car to demonstrate, walking us through the entire process. It's a cool, easy-to-follow insight into what often seems to be a rather opaque process.

8 of 27 comments (clear)

  1. How Database errors by invictusvoyd · · Score: 4, Funny

    are reverse engineered ?

  2. Great Knowledge Sharing! by Anonymous Coward · · Score: 5, Informative

    Nice article, I used a similar technique, and found a reference where someone reverse engineered a usb missile launcher toy. I used that knowledge to buld the USB driver for the Antec Kuhler 920 water cooler, my small contribution to the open source community.

    Of course, the Kuhler Windows App was rather poor quality, as well as the USB implementation. But at least they didn't do anything esoteric, like use USB interrupt transfers, etc. Thank goodness for simple USB transfers.

    Sharing knowledge like this is what the open source community is all about.

    Check me out on sourceforge, kuhler_ctl.

  3. Nice database error... by Lunix+Nutcase · · Score: 2

    Maybe Linux Voice needs to learn to engineer a working database?

    1. Re:Nice database error... by Lunix+Nutcase · · Score: 2

      The Slashdot effect is pretty weak these days. It's just a poorly configured webserver.

    2. Re: Nice database error... by Anonymous Coward · · Score: 2, Interesting

      No kidding. 18 comments on this article. I miss the days when an article like this would have been flooded. Guess that's why I'm only on here a few times a week at most anymore instead of a dozen times a day. Never thought I'd say it...but I miss Rob.

  4. Slashdotted by Ichijo · · Score: 3
    --
    Any sufficiently unpopular but cohesive argument is indistinguishable from trolling.
  5. Re:Are there any stable, complex drivers... by Darinbob · · Score: 2

    It's hard to call this sort of thing a "driver" since it's so high level. They're basically just decoding the protocol that is used over USB. If they could do the same thing if it used network packets over a wifi connection I doubt they'd call it a device driver.

  6. Re:Are there any stable, complex drivers... by dgatwood · · Score: 3, Insightful

    Fundamentally, the only any driver really does is send commands to a device over a bus and handle the responses. What other kind of driver were you hoping for? :-)

    --

    Check out my sci-fi/humor trilogy at PatriotsBooks.