HOMECOURSESSTUDENTSDONATIONSVIDEOSEVENTSTUTORIALSLINKSNEWSCONTACT


TUTORIALS 》 Linux Kernel Programming | with or without Kernel Modules | Device Drivers

When learning Linux Kernel programming, often I notice my students and viewers gets confused and they start with learning writing Linux Kernel modules. And so they develop the common misconception about Kernel Programming in general. They assume writing code in Linux Kernel means writing kernel modules. Which is absolutely not. Kernel modules are an optional choice and are part of Linux Kernel. But besides modules, Linux Kernel has lot of other mainstream code. Hence if anyone wants to be a Kernel Developer, you should be aware that sometimes you add new code via modules, sometimes without them.

And if you ask me, I am not much in favor of writing Kernel modules. Instead in my code, I try to integrate and make them a part of Linux Kernel so that they all get initialized during boot time. Here is an extensive Youtube video of mine on Linux Kernel Programming, with and without Kernel Modules.

Also recommend to watch:


Featured Video:



Suggested Topics:


☆ Tutorials :: Arduino UNO Projects ↗


☆ Tutorials :: Network Software Development ↗


☆ Tutorials :: Research and Projects ↗


☆ Tutorials :: Linux (user-space), Systems Architecture ↗


☆ Tutorials :: Linux Kernel Software Development ↗


☆ Tutorials :: Linux Kernel Internals (PDFs) - by Ramin Farajpour ↗


☆ Tutorials :: Software Development (Programming) Tools ↗


☆ Tutorials :: Embedded Projects ↗

Join The Linux Channel :: Facebook Group ↗

Visit The Linux Channel :: on Youtube ↗


💗 Help shape the future: Sponsor/Donate


Recommended Topics:
Featured Video:
Watch on Youtube - [487//0] 0x16b Tracking Linux Kernel bugs in Kernel.org Bugzilla (or Bugzee as we call it in the Industry) ↗

MySQL database server installation ↗
Saturday' 13-Mar-2021

Compiling a C Compiler with a C Compilter | Compile gcc with gcc ↗
Saturday' 13-Mar-2021
The fundamental aspect of a programming language compiler is to translate code written from language to other. But most commonly compilers will compile code written in high-level human friendly language such as C, C++, Java, etc. to native CPU architecture specific (machine understandable) binary code which is nothing but sequence of CPU instructions. Hence if we see that way we should able to compile gcc Compiler source code with a gcc Compiler binary.

Linux Kernel /proc Interface ↗
Wednesday' 18-May-2022
/proc is one of the most popular kernel to user-space interface which you can leverage to add an interface to your Kernel code such as Kernel modules, Kernel Device Drivers, etc. Personally I prefer /proc interface than other alternatives such as /sysfs, ioctl() and so on for my personal Kernel modules/stack. So here is my detailed multi-episode Youtube video series on /sysfs Interface. I also conduct sessions/classes on Systems and Network software programming and architecture.

Layer-2 (L2) Multicast Frame Deep Analysis ↗
Saturday' 13-Mar-2021

pfSense - free and open source firewall and router based on FreeBSD that also features unified threat management, load balancing, multi WAN, and more ↗
Saturday' 13-Mar-2021
Watch detailed videos and read topics on pfSense a FreeBSD based Firewall

Management ↗
Saturday' 13-Mar-2021

Linux Kernel /sysfs Interface ↗
Saturday' 14-May-2022
/sysfs is one of the most popular kernel to user-space interface which you can leverage to add an interface to your Kernel code such as Kernel modules, Kernel Device Drivers, etc. Although personally I prefer /proc interface than other alternatives such as /sysfs, ioctl() and so on for my personal Kernel modules/stack. So here is my detailed multi-episode Youtube video series on /sysfs Interface.

Linux Kernel Network stack and architecture ↗
Saturday' 13-Mar-2021

TCP vs UDP an Expert Opinion ↗
Saturday' 01-Jan-2022

PyDelhi + PyData + ILUG-D + Linux Chix meetup mash @ Sarai on 17-Dec-2016 ↗
Saturday' 13-Mar-2021


Trending Video:
Watch on Youtube - [467//0] x21c What is an IPC | Inter-Process Communication | Architecture | Big Picture - Part 2 ↗

Linux Kernel Dummy Network Interface /drivers/net/dummy.c Network Namespace Research ↗
Saturday' 01-Jan-2022
When you work on Network Namespaces (which is a feature Linux Kernel provides), you usually create bunch of virtual ethernet ports called as veth interfaces. The veth interface itself is a separate LK virtual network driver which offers this specific functionality. But sometimes besides veth you can also configure an optional interface called dummy interface. The dummy interface, just like veth (and other such virtual interfaces) is provided by LK via the driver drivers/net/dummy.c. The interesting aspect of dummy interface is that it serves as an alter ego of the loop-back localhost (as mentioned in the tldp.org article link below). Which means you can set any valid IP and this can serve as alternate local host ip other than 127.0.0.1. So to learn more, kindly watch my complete video series on this fascinating network interface called Dummy Interface.



Recommended Video:
Watch on Youtube - [972//0] Q&A - Why network packets get dropped? ↗