Learning Linux Device drivers as a beginner (This is not a tutorial)

in #linux6 years ago

Hi everyone,

Welcome to my journey of learning Linux devices drivers. This is my latest attempt to learn something new and improve my skills. I don't know how long I can continue as I quickly quit a task if something doesn't work as it was e supposed to be. Let's see!! Here, in this series I will be blogging about whatever I learn each day as a documentation for me as well as if anyone else can get ay benefit from these posts who is in my position ( doesn't know anything about device drivers).

Also I have decided to document any the other things I would learn in future.

Ok, so lets get started.

Day1


Kernel module

Kernel modules are the things (or code) which can be loaded and unloaded as per requirement.
Suppose in a embedded board (target) there is very less memory. So we will need a small kernel to have some room for other things to work. But our board supports Bluetooth and we have not compiled the driver since Bluetooth not used much but when required we can load the Bluetooth driver and use the hardware and then again remove it after the work is done.
This is what I have learnt and also modules need not be always related to hardware it can be used for soft features also.

I'm using a Linux system (Ubuntu).

Some important module related commands:

  • lsmod - list all loaded modules
  • insmod - insert module
    eg: "# insmod [path of module]/[module name].ko"
    note: kernel object files end with extension ".ko"
  • modprobe - some intelligent version of insmod (I don't know much right now)

That's it for today. See you guys next day.

266900_29ce_2.jpg

Sort:  

Eyy, welcome back to Steem!
I have been using Ubuntu in the past year, yet my background knowledge is quite low about it. This blog will be quite useful for people like me, he-he.

Will try my best to blog while I learn