Timing Subsystem in deep
Timing Subsystem in deep, available at $59.99, has an average rating of 4.5, with 98 lectures, based on 15 reviews, and has 479 subscribers.
You will learn about Programming timing in user space Timing Hardware Jiffies Low resolution & High resolution timers POSIX Clocks This course is ideal for individuals who are Linux Kernel Developers interested in gaining deep knowledge about timing subsystem It is particularly useful for Linux Kernel Developers interested in gaining deep knowledge about timing subsystem.
Enroll now: Timing Subsystem in deep
Summary
Title: Timing Subsystem in deep
Price: $59.99
Average Rating: 4.5
Number of Lectures: 98
Number of Published Lectures: 98
Number of Curriculum Items: 98
Number of Published Curriculum Objects: 98
Original Price: $119.99
Quality Status: approved
Status: Live
What You Will Learn
- Programming timing in user space
- Timing Hardware
- Jiffies
- Low resolution & High resolution timers
- POSIX Clocks
Who Should Attend
- Linux Kernel Developers interested in gaining deep knowledge about timing subsystem
Target Audiences
- Linux Kernel Developers interested in gaining deep knowledge about timing subsystem
Timing Measurements in Linux Kernel
Many computer activities are based on timing measurements.
E.g. Your Computer display is turned off, if you have not pressed a key or moved your mouse for a particular time.
Linux timing subsystem mainly handles two types of timing activities
1. Keeping the current time and date
a. time() , gettimeofday() and clock_gettime()
b. Time stamps for files and network packets
2. Maintaining Timers
a. Mechanisms to notify kernel and user space (ex. alarm()) that a certain interval of time has elapsed.
Hardware Devices
Linux depends on hardware devices to maintain time. These devices can be basically classified into two types:
1. Clocks/Counters: provide precise time measurements
Used to keep track of current time of day
2. Timers: Issue interrupts at fixed, predefined frequency.
Used for implementing software timers
What will you learn from this course?
-
Various timing commands: date, uptime
-
POSIX Clocks: CLOCK_BOOTTIME, CLOCK_MONOTONIC_RAW, CLOCK_REALTIME, CLOCK_PROCESS_CPUTIME_ID, CLOCK_THREAD_CPUTIME_ID
-
Timing System calls: ctime, gettimeofday, clock_gettime, clock_settime, clock_getres, times, getrusage
-
Setting time from userspace
-
How to measure time for a particular instruction
-
Hardware Devices used in timing measurement: RTC, TSC, Programmable Interval Timer, APIC, High Precision Event Timer
-
Jiffies
-
Low Resolution and High Resolution Timers
This course comes with a 30 day money back guaranteed!.If you are not satisfied with the course, you’ll get your money back
So what are you waiting for, enroll now and take the next step in learning Timing subsystem in Linux Kernel
Course Curriculum
Chapter 1: Programming timing in user space
Lecture 1: date command
Lecture 2: uptime command
Lecture 3: Epoch time
Lecture 4: ctime
Lecture 5: gettimeofday
Lecture 6: Can gettimeofday() be used for measured elapsed time
Lecture 7: Monotonic clock
Lecture 8: CLOCK_BOOTTIME
Lecture 9: CLOCK_MONOTONIC_RAW
Lecture 10: CLOCK_REALTIME
Lecture 11: CLOCK_PROCESS_CPUTIME_ID
Lecture 12: Example to calculate time taken to increment
Lecture 13: Another Example using clock_gettime
Lecture 14: CLOCK_MONOTONIC vs CLOCK_PROCESS_CPUTIME_ID
Lecture 15: CLOCK_THREAD_CPUTIME_ID
Lecture 16: clock_settime
Lecture 17: clock_getres
Lecture 18: times
Lecture 19: getrusage
Chapter 2: Hardware devices used in timing measurement
Lecture 1: Timing Measurements in Linux Kernel
Lecture 2: RTC
Lecture 3: Kernel module example reading RTC
Lecture 4: RTC Interrupts
Lecture 5: RTC IOCTL Interface
Lecture 6: RTC Periodic Interrupts
Lecture 7: RTC Alarm Interrupt
Lecture 8: Why RTC is not used after computer is powered on
Lecture 9: TSC
Lecture 10: Reading TSC from kernel space
Lecture 11: RDTSCP
Lecture 12: Issues using TSC with multiprocessor systems
Lecture 13: Kernel functions for TSC
Lecture 14: Programmable Interval Timer
Lecture 15: Local APIC
Lecture 16: High Precision Event Timer
Lecture 17: Linux Abstraction
Chapter 3: Jiffies
Lecture 1: HZ
Lecture 2: jiffies
Lecture 3: What is the size of jiffies
Lecture 4: Why is jiffies not declared as 64-bit on x86
Lecture 5: Jiffies Wraparound
Lecture 6: What is the initial value of jiffies on boot
Lecture 7: INITIAL_JIFFIES
Lecture 8: Why double casting is needed for INITIAL_JIFFIES macro
Lecture 9: Convert jiffies to seconds milliseconds
Lecture 10: Measuring module loaded time using jiffies
Lecture 11: Can we update jiffies
Lecture 12: Timer Interrupt processing
Lecture 13: Busy looping using jiffies
Lecture 14: Jiffies conversions
Lecture 15: How are busy loops implemented
Lecture 16: What is disadvantage of having periodic interrupts in Linux Kernel
Lecture 17: Configuration of clock interrupts
Chapter 4: Low Resolution TImers
Lecture 1: Introduction to timers
Lecture 2: Implementation of low resolution timers
Lecture 3: Specifying an expiration time
Lecture 4: Which context timer handler runs
Lecture 5: Timer implementation
Lecture 6: Are interrupts disabled while running timer handler
Lecture 7: Whether timer handler runs in softirq or hardirq
Lecture 8: Whether kernel checks all timer entries on each raise softirq
Lecture 9: Deactivate a timer
Lecture 10: del_timer_sync
Lecture 11: timer_pending
Lecture 12: Periodic timers
Lecture 13: Synchronize between process context and timer handler
Lecture 14: Run timer handler every one second
Lecture 15: Timer Flags
Lecture 16: How schedule_timeout works
Lecture 17: Problems with low resolution timers
Chapter 5: ktime_t
Lecture 1: Introduction to high resolution timers
Lecture 2: ktime_t
Lecture 3: Macros and functions for ktime_t
Lecture 4: Macros and functions for add sub ktime_t
Lecture 5: ktime_t conversion functions
Lecture 6: Example of conversion functions
Lecture 7: ktime accessors
Lecture 8: ktime accessors part 2
Lecture 9: ktime accessors part 3
Lecture 10: nanosecond output
Lecture 11: timespec output
Lecture 12: seconds output
Lecture 13: How uptime is implemented
Lecture 14: How gettimeofday is implemented
Lecture 15: How clock_gettime is implemented
Lecture 16: coarse variants
Lecture 17: Why are coarse variants faster
Chapter 6: HRTimers
Lecture 1: Introduction
Lecture 2: Cancel a timer
Lecture 3: Return value of callback timer
Lecture 4: hrtimer_forward_now
Lecture 5: Measuring clock cycles
Lecture 6: Examples of clocks and modes
Lecture 7: hrtimer_callback_running
Instructors
-
Linux Trainer
Trainer at Linux Weekend Learning
Rating Distribution
- 1 stars: 0 votes
- 2 stars: 0 votes
- 3 stars: 1 votes
- 4 stars: 8 votes
- 5 stars: 6 votes
Frequently Asked Questions
How long do I have access to the course materials?
You can view and review the lecture materials indefinitely, like an on-demand channel.
Can I take my courses with me wherever I go?
Definitely! If you have an internet connection, courses on Udemy are available on any device at any time. If you don’t have an internet connection, some instructors also let their students download course lectures. That’s up to the instructor though, so make sure you get on their good side!
You may also like
- Top 10 Language Learning Courses to Learn in November 2024
- Top 10 Video Editing Courses to Learn in November 2024
- Top 10 Music Production Courses to Learn in November 2024
- Top 10 Animation Courses to Learn in November 2024
- Top 10 Digital Illustration Courses to Learn in November 2024
- Top 10 Renewable Energy Courses to Learn in November 2024
- Top 10 Sustainable Living Courses to Learn in November 2024
- Top 10 Ethical AI Courses to Learn in November 2024
- Top 10 Cybersecurity Fundamentals Courses to Learn in November 2024
- Top 10 Smart Home Technology Courses to Learn in November 2024
- Top 10 Holistic Health Courses to Learn in November 2024
- Top 10 Nutrition And Diet Planning Courses to Learn in November 2024
- Top 10 Yoga Instruction Courses to Learn in November 2024
- Top 10 Stress Management Courses to Learn in November 2024
- Top 10 Mindfulness Meditation Courses to Learn in November 2024
- Top 10 Life Coaching Courses to Learn in November 2024
- Top 10 Career Development Courses to Learn in November 2024
- Top 10 Relationship Building Courses to Learn in November 2024
- Top 10 Parenting Skills Courses to Learn in November 2024
- Top 10 Home Improvement Courses to Learn in November 2024