Click Here & Join Our Exclusive Dev Club Now!

Linux Kernel Programming for Embedded Systems Course

קורס Linux Kernel Programming for Embedded System מקצועי, מקיף ומעשי שנולד בהייטק עבור מפתחים!

 

Linux Kernel Programming for Embedded Systems Course

Sale!

קורס Linux Kernel Programming for Embedded System מקצועי, מקיף ומעשי שנולד בהייטק עבור מפתחים!

 

4 in stock

Description

🏅 מה תקבלו מהקורס?

  • ✅ הבנה מעמיקה של עקרונות הקרנל בלינוקס למערכות Embedded
  • ✅ דוגמאות מעשיות להמחשת תהליכי הפיתוח
  • ✅ ניתוח וניהול מתקדם של תהליכים, זיכרון ותקשורת בין ה User Space לקרנל
  • ✅ פיתוח שירותים ויישומים מתקדמים באמצעות כלי Cross-compilation
  • ✅ כתיבת והטמעת מודולים ב-Linux Kernel וניהול קבצים בצורה יעילה

📅 פרטי הקורס

שעות: 19:30 – 21:30

יום בשבוע: חמישי

פלטפורמה: Zoom

תאריכים: 8.5.2025 | 15.5.2025 | 22.5.2025 | 29.5.2025 | 5.6.2025 | 12.6.2025 | 19.6.2025 | 26.6.2025 | 3.7.2025 | 10.7.2025

סה”כ: 10 מפגשים של שעתיים

יצירת קשר ב- WhatsApp

חלוקה לתשלומים | מענה אנושי מהיר

סילבוס הקורס

Lesson 0: Introduction and Environment Setup

  • Instructor Introduction
  • Course objectives and overview
  • Setting up the development environment
  • Cross-compilation toolchain
  • Virtual machines and emulators
  • Required software packages
  • General-purpose OS vs Real-time OS fundamentals
  • Linux in embedded systems: history and use cases
  • Introduction to the Linux Kernel
  • Getting Started with the Kernel

Lesson 1: Kernel Basics and Process Management

  • Understanding the kernel architecture
  • Linux kernel subsystems overview
  • Process fundamentals
  • Process descriptor and task structure
  • Process states and lifecycle
  • Process scheduling
  • Scheduling classes and policies
  • Priority management
  • Building and configuring the kernel
  • Menuconfig and defconfig
  • Cross-compilation for embedded targets

Lesson 2: System Calls and Kernel/User Space Communication

  • System call mechanism
  • Implementation and registration
  • Parameter passing
  • Kernel ABI considerations
  • procfs and sysfs interfaces
  • Creating kernel interfaces
  • Reading/writing kernel parameters
  • Communication with the user space
  • Ioctl communication
  • Lab: Implementing custom system calls

Lesson 3: Synchronization Mechanisms

  • Critical sections and race conditions
  • Kernel synchronization primitives
  • Spin locks
  • Semaphores and mutexes
  • Reader-writer locks
  • Avoiding deadlocks and livelocks
  • Practical synchronization patterns
  • Kernel Data Structures
  • Linked Lists
  • The Linux Kernel’s Implementation
  • Queues
  • Maps
  • Binary Trees
  • Binary Search Trees
  • Lab: Implementing thread-safe kernel modules

Lesson 4: Interrupts and Bottom Halves

  • Interrupt handling fundamentals
  • IRQ management
  • Registering interrupt handlers
  • Top-half vs bottom-half processing
  • Deferring work mechanisms
  • Softirqs
  • Tasklets
  • Work queues
  • Interrupt context restrictions
  • Lab: Implementing efficient interrupt handlers

Lesson 5: Timers and Time Management

  • Kernel notion of time
  • Jiffies and timevals
  • High-resolution timers
  • Timer implementation
  • Creating and using timers
  • Timer callbacks
  • Delayed execution techniques
  • Sleep and wait queues
  • schedule_timeout()
  • Real-time considerations
  • Deterministic timing
  • Minimizing latency

Lesson 6: Memory Management

  • Memory management fundamentals
  • Virtual memory concepts
  • Page tables and address spaces
  • Kernel memory allocation techniques
  • kmalloc vs vmalloc
  • Slab allocator
  • Low-level memory operations
  • Atomic operations
  • Memory barriers
  • Memory considerations for embedded systems
  • Working with limited resources
  • Memory optimization techniques
  • The Virtual Filesystem
  • Common Filesystem Interface
  • The Superblock Object
  • File Operations

Lesson 7: The Block IO Layer

  • Anatomy of a Block Device
  • Buffers and Buffer Heads
  • The bio Structure
  • I/O vectors
  • I/O Schedulers
  • The Job of an I/O Scheduler
  • The Linus Elevator
  • The Deadline I/O Scheduler
  • The Complete Fair Queuing I/O Scheduler
  • The Noop I/O Scheduler
  • I/O Scheduler Selection
  • Virtual Memory Areas
  • VMA Flags
  • VMA Operations
  • Lists and Trees of Memory Areas
  • Memory Areas in Real Life
  • Manipulating Memory Areas

Lesson 8: Power Management & Process Management

  • Power management framework
  • Sleep states
  • Runtime PM
  • CPU frequency scaling
  • Dynamic power management
  • Device suspend/resume
  • System suspend
  • Battery-operated design considerations
  • Lab: Implementing power-aware kernel code

Lesson 9: Debugging and Profiling

  • Kernel debugging techniques
  • printk and log levels
  • KGDB and kernel debuggers
  • Tracing and profiling
  • Ftrace
  • Perf
  • SystemTap basics
  • Memory debugging
  • KASAN, UBSAN
  • Memory leak detection
  • Performance analysis
  • Identifying bottlenecks
  • Optimizing critical paths

יצירת קשר ב- WhatsApp

חלוקה לתשלומים | מענה אנושי מהיר

על המרצה

👨‍🏫 אור סולימני – מהנדס Embedded ומרצה בכיר באקדמיה בעל תואר במדעי המחשב, עם ניסיון של מעל 10 שנים בפיתוח Real-Time Embedded בסביבות High-Performance Multi-Process על לינוקס, פיתוח Firmware ופיתוח אוטומציה על מגוון רחב של MCUs. מרצה באקדמיה את קורסי ה- Embedded Linux וה- Bare Metal.

📽️ כל ההרצאות מוקלטות – ותינתן גישה מלאה לנרשמים.

💬 תמיכה וליווי – הנרשמים יצורפו לקבוצת וואטסאפ ייעודית עבור הקורס לצורך עזרה, תמיכה ושאלות.

🥇 למידה בקבוצות קטנות – לשמירה על יחס חניכה גבוה.

4 in stock

The course includes

What will you learn

Hands-On Embedded Linux

 1,599.00

4 in stock

Share

More Courses who might intrest you...

Screenshot 2025-03-12 114743
FreeRTOS Development on STM32 Microcontrollers

FreeRTOS Development on STM32 syllabus

קורס ייחודי, מקיף, מעשי ומעמיק שייקח אתכם לרמה הבאה בפיתוח על ST!

 
1499 NIS
643206_2ee7_9
Drivers Development on STM32 Microcontrollers

Drivers Development on STM32 Microcontrollers

קורס ייחודי, מקיף, מעשי ומעמיק שייקח אתכם לרמה הבאה בפיתוח Embedded עם ST!

 
1499 NIS
475753208_3507213479581548_1241788680724917731_n
C Programming on Bare-metal STM32 Microcontrollers - מחזור 2

C Programming on Bare-metal STM32 Microcontrollers

קורס מקיף, מעשי ומעמיק שייקח אתכם לרמה הבאה בפיתוח Embedded עם ST!

 
1499 NIS
Embedded-Linux-removebg-preview
Embedded Linux Course - Embedded Academy

קורס Embedded Linux מקצועי, מקיף ומעשי שנולד בהייטק עבור מפתחים!

 
1999 NIS
מנחם
Expert PCB Designer Course
Board Design course בואו ללמוד איך לתכנן נכון את המעגל החשמלי שלכם!
קורס כניסה לעולם המרתק והאין סופי של תחום החומרה והתיכנון של מעגלים חשמליים
1799 NIS
FPGA
Designing and Implementing FPGA Systems Course - מחזור 2
FPGA design and implementation, combining theoretical foundations with practical experience!
1999 NIS

Popular searches

Popular searches

Skip to content