Linux Device Drivers Weekend Course Syllabus

Linux Device Driver Programming
===========================================

Prerequisites
Should be proficient in Linux System programming
Should have a Linux Machine on your PC/Laptop

Course Highlights
More practical with lot of examples after each topic
Quiz at the end of the session to revise/overview of the class
Notes plus examples codes used in the session will be shared
Linux Tips and Tricks used by professionals in career
No travelling/traffic as classes are online
Recorded lectures will be provided if you miss any session
Clarify your doubts in the session and afterwards.



1. Introduction
What is Device Driver?
Types of Device Drivers?
Configuring, Compiling and Installing the latest kernel
Commands: dmesg, insmod, modprobe, rmmod.

2. Character Device Drivers
Major and Minor Numbers
Registering Character Driver
File operations: open, read, write, release, seek, ioctl
Basic Character Device Driver

3. Advanced Character Driver
Blocking I/O
poll and select

4. Concurrency and Race Conditions
Semaphores
Mutex
Spinlocks
Completions

5. Communication with Hardware
I/O Ports and I/O Memory
Example Driver Code

6. Timing in Kernel
Measuring Time Lapses
Knowing the current time
Kernel Timers
Tasklets
Workqueues

7. Interrupt Handling
Registering an interrupt handler
Implementing an interrupt handler
Top and Bottom Halves

8. Linux Data Types
Use of Standard C Types
Portability Issues
Linked Lists

9. Virtual File system
Creating an entry in procfs
Creating an entry in sysfs
Creating an entry in debugfs

Comments

  1. I have attended this course and only one word to sum it up about: Thorough/In-depth.
    Every aspect of the topic in discussion is dealt neatly with ample of examples and best practices in designing our drivers/kernel modules. Though a topic is abstracted in kernel and presented to kernel developers in superficial form, trainer went in-depth into kernel sources and gave us details about its implementation. Trainer has good knowledge and enough homework done on each of the topic. Every topic has good examples and kernel versions dependent changes are also clearly pointed out. Architecture independent/kernel version independent coding techniques of certain relevant topics are also thought in the training sessions. I can confidently suggest the course by this trainer to freshers and experienced folks to get good hands on the LDDs. BTW, the course is offered at very competitive and low price in comparison to the market and I could say it is “paisa vasool”.
    There is a saying “practice makes man perfect”. Trainer ensured that we practice on our end and get our hands dirty by giving assignments and programming challenges during the course. At the end of session a quiz about the topic in discussion is also dealt, which sums up and recaps the day’s topic. Also, recorded video and notes/examples covered in session are emailed for our reference and future access.

    ReplyDelete
  2. I am attending this course and till now I am hugely satisfied with the trainer. He has a deep understanding of the subject and explains with very well written notes and example codes. The trainer is open to any kind of doubts and suggestions. The benefit of the course being online is that you can attend it according to your schedule. Even if you miss the sessions, the trainer is open to share the recorded sessions which is very helpful, if we want to revisit. I would definitely recommend this course to anyone who would like to have an understanding of Linux kernel and device drivers.

    ReplyDelete
  3. The course is well design for deep learning the linux drivers. i learnt so many new things. It was very helpful for my project as well.

    ReplyDelete
  4. I am attending this course and it has been very useful. All the concepts are very well explained. The trainer has included practical examples for each topic, so you will understand everything clearly. The notes and examples are also provided so you can learn anytime at your own pace. The implementation of the kernel code is also explained in some cases so you get a clear understanding of what is going on behind the scenes. The contents are well arranged. You can ask any doubts any time, the trainer will clarify all the doubts. Definitely worth it.

    ReplyDelete
  5. The course is very well designed and the way trainer explained with real time example that was superb.

    ReplyDelete
  6. Been attending this class over a course of 2-3 months and it was very satisfying that I could learn so much about the Linux in these short span. The course objective and the abstraction are very-well structured which is very much useful for a trainee like me. It makes the learning interesting and I know what the things that I am gonna grab. The good part about this program is the 'Interactive' live sessions where as a trainee we could ask questions and also, answer the questions that the trainer asks. At end of each session, there will be Q/A part which is like revision of what happened in that particular session.

    The most important for a programmer or any individual who is interested in learning any good stuff is 'practice'. Practice is what makes the learning more interesting, pushes us to thrive for in-depth knowledge. This session has that too where we get the Assignments in any week and get our hands-on-experience in the Linux.

    I would recommend this one to any fresher/experience individual who is interested in learning Device Drivers. All you need is your small amount of packet money and huge amount of interest :)

    ReplyDelete
  7. I have been part of linux system programming course as well as linux device driver course.Course is well design and more importantly it is based on more practical rather than theory.

    The course provide lots of example to practice for each topic in detail and provide some assignment to do it yourself.The trainer also provide link to study if you miss the class or you want to re-learn topic which is good about this course. You can ask any doubts any time, the trainer will clarify all the doubts.The trainer will cover all the topics that given in the course as well as some more outside topic if required to understand in depth knowledge.

    ReplyDelete
  8. Hi Sir

    Im interested in this course, how much charges?

    ReplyDelete
  9. Replies
    1. Please contact linuxweekendtraining@gmail.com

      Delete
  10. How can i get this course? Is there any charges for this course??

    ReplyDelete
  11. Hi,
    I am interested to learn. How can I enroll the course, I want to know the course details and training fees.

    ReplyDelete
  12. Nice Blog…!! Thanks for sharing this article. If you want to be a laptop expert and are searching for the best institute. Check Now Best Institute For Chip Level Laptop Repairing Course In Delhi, India.

    ReplyDelete
  13. I feel very grateful that I read this. It is very helpful and very informative and I really learned a lot from it.
    Red hat linux training in chennai

    ReplyDelete

Post a Comment

Popular posts from this blog

Linux System Programming Weekend Course Syllabus