How are low-level device drivers written for Linux?

I remember reading some books about Linux device drivers at the end of my college education for Comp. The science. Soon - after I got the job and did not work very much with Linux / Embedded (now I mainly use java material). However, this is what I want to learn.

In any case, I remember reading an online article (a bad post, if I can find it) about writing a USB driver for Linux for a small "USB turret" like this one: http: //www.thinkgeek. com / geektoys / warfare / 8a0f /

In any case, he talked in detail about how to write a driver without providing a driver (the guy just found a common one on ebay .... and figured out how to like it ... write a driver just by looking at the components, etc.). It was awesome anyway.

I have a pretty good hint about how low-level stuff works, but for things like AVR / PIC microcontrollers, I have no idea how something like this would be written for a regular processor on a PC.

In any case, I think I'm asking ... how do you find out where I will find such information.

edit: found the link http://matthias.vallentin.net/blog/2007/04/writing-a-linux-kernel-driver-for-an-unknown-usb-device/

(This is even more confusing, then I thought that I didn’t understand that he turned the engineers to the USB Windows driver .. can it be assumed that it would be impossible to find out without tracking the Windows driver?)

+3
source share
1 answer

The Linux kernel and drivers are the source of GDFL . You can read the code, change them, compile and experiment with their heart. This is a pretty good way to find out.

+3
source

Source: https://habr.com/ru/post/957313/


All Articles