So guys, now let us discuss how to do kernel programming based courses.
This lecture video is essential for those who are doing Linux kernel programming for the first time.
So first of all, you need to install Ubuntu as a virtual machine using any virtualization software.
The virtualization software could be VMware Workstation or VirtualBox.
Right.
Currently I'm using VMware workstation.
If you are experienced Linux kernel programming and you are already using your favorite Linux distribution,
that's absolutely okay.
The reason for running Linux distribution as a virtual machine using virtualization software is that
that your virtual machine may freeze if the kernel crash.
We will be writing a Linux kernel module, which is a kernel code and if there is any segmentation fault
happening in the kernel code, your entire Linux operating system will freeze.
Right.
So if you are running your Linux operating system as a virtual machine, then you just need to reboot
the virtual machine, which is a way faster than rebooting your entire PC.
If you are running your Linux as a natively installed operating system on your machine.
Right.
For debugging the Linux kernel code, you are actually not very lucky.
The printer, which is the printer version of the Linux kernel, is your rescue.
So we will use the Stone age technique that is to insert printf's in our code to see what is going on.
Now for absolute beginners who will be writing kernel code for the first time, they are advised to
install exactly the same version of ubuntu which I am running.
The reason being is that the code which we will be discussing in this course will also have no compilation
errors when you will be compiling it on your machine.
Right?
Because you will be running the same linux distribution as mine.
There will be no unnecessary head scratching and time waste.
We will be in sync and on the same page.
My course will run on your machine and your course will run on mine.
Right.
Another reason for using ubuntu as an operating system is that that there is a lot of help present on
internet, especially for ubuntu.
Right.
So we shall be looking at the same kernel source code if you install the same version of operating system
as mine.
So in the next lecture video I will share you a couple of URLs using which you can download the same
Linux distribution which I am running.
Otherwise, if you happen to use any other Linux distribution, then it could be possible that the kernel
version that will come with that Linux distribution could be different from what we are using in this
course.
And it could be possible that the code which we will be discussing in this course may give compilation
errors when you will try to compile on your machine.
So just to get rid of all these headaches and unnecessary time waste activities, absolute beginners
are advised to install the same version of ubuntu which am running in the next lecture video.
I will share the URLs.
Tools used in this course is already come with the linux distribution.
That is, we will be using GCC compiler and you are advised to use GitHub as a version control system
to save all your codes for the lifetime.
So if you have not yet created the GitHub account, please create one now.
Otherwise it won't be possible for you to browse the source code which I will be discussing in this
course.
Right.
You will have to fork my GitHub repository to navigate around the source code.