CSEPracticals - System Programming and Networking Development Courses

Only Projects and Courses - No DS/ALGO/CP !


Linux Timers Implementation and Design in C

Data Structure and Algorithm to schedule future events, Linux System Programming, Operating Systems, C/C++ Programming

Rating 4.5 (83)      1431 students

Last Updated : 3/2021

Created by : Abhishek Sagar, Shivani Nigam, Ekta

image


What Will you Learn ?

  • Design and Implementing Timers

  • Solve concurrency problem with Timers, Develop Timer Library

  • Schedule and Trigger events in Future

  • Develop Scalable and hierarchical Timers


Requirement

  • C coding language, Linux Operating System only

  • You should familiar with basic data structures such as linked list and function pointers.

  • Basics of Multi-threading - to start a thread

  • Must know Callbacks (function pointers)


Who is the Audience ?

  • Beginners, Intermediates and Professionals

  • Those who want to grow as Champ Developers

  • Ace interview Design Questions


Description 

O Ghosh !! I just cannot shout-out more how important TIMERS are in almost all applications or projects. Timers are used to schedule events to be triggered or fired in future. How have you been doing this till now ?


Timers Use case Scenarios :

1. Firing One time future Event : Delete something after 100 seconds

2. Firing Repeated Regular future Events : Send packet to machine X after every 5 seconds

3. Periodic Waits : Try something 5 times at an interval of 3 seconds


How would you design a timer ?   PET Question for interview. So better prepare for it.


About this Course This is short project based course, yet important course to cover Data Structures and Algorithms involved in designing efficient timers.  We shall be using C as a programming language, but you are free to use your favorite programming language. This course is Programming language agnostic.

Course Pre-requisite

If you can code in any programming language, that suffice.

You should familiar with basic data structures such as linked list and function pointers.

Basics of Multi-threading

Also, Please just do not sit and watch my codes. Write your own codes, even if it is same as mine !


No Third Party libraries

Whatever logic you implement, you need to implement it from scratch. This course do not suggest taking help of any third party library to get the jobs done. Use of external libraries completely defeats the purpose of the course. However, it is recommended to use third party libraries for commonly used data structures such as linked lists/Trees/Queues etc which saves a lot of time implementing these data structures.


Table of Contents

No chapter found in this course