קורס Linux Kernel and Device Drivers

 

מתאים לדורשי עבודה באישור התמת

מתאים לחילים משוחררים ע"ח פקדון

קורס Linux Kernel and Device Drivers

משך הקורס – סה"כ 90 שעות לימוד אקדמיות
לימוד מעשי על Evaluation Boards
ראשון לציוןתל אביבחיפה

פתיחת קורס בוקר:

פתיחת קורס ערב:

פתיחת קורס בוקר:

פתיחת קורס ערב:

פתיחת קורס בוקר:

פתיחת קורס ערב:

לחברות

מלאו פרטים לקבלת ייעוץ





אני מאשר קבלת מבצעים ועדכונים מחברת RT-GROUP בכפוף לprivacy

 


פרוייקיטים

 

אודות הקורס

 
לחץ להורדת הסילבוס
 

מה זה Linux Kernel

לינוקס קרנל, הליבה של מערכת ההפעלה לינוקס, תפקידה לאפשר לתוכנית ב User-Space את כל הכלים והשירותים הנדרשים בכדי שזאת תוכל לבצע את עבודתה במהירות ויעילות, בין השאר גישה יציבה ל "Kernel Blocks" חלקי הקרנל השונים כגון: File Systems, Networking Stacks, Scheduler,
, Kernel Device Drivers Kernel Entities \ Objects,וזאת באמצעות System Calls.
חלק מהפונקציונליות של לינוקס קרנל הנה השליטה על החומרה באמצעות מנהלי התקנים
(Linux Kernel Device Drivers), מנהלי התקנים אלו חייבים להיות יציבים ולעיתים אף לשמש כמודולים בעבור הליבה – LKMs) Loadable Kernel Modules).
משמעות הפיתוח בסביבת הKernel היא מלהיבה וייחודית, בשלבי הפיתוח יש להתחשב במספר רב של נושאים לרבות Kernel Processes נוספים , HW\SW Interrupts , Synchronization, ועוד.

לשם השוואה לפיתוח תכניות כ-Processes בסביבת User Space : במידה ולתוכנית יש באג או בעיה שלא זוהתה, אזי רק אותו ה- Process יושפע, כמובן שזה חמור מאוד אך סביר ההשפעה לא תגרום לקריסת המערכת הפעלה וסיום אותו Process יפתור את המערכת הפעלה מהבעיה.
לעומת זאת, באג בKernel ישפע מן הסתם על כל המערכת הפעלה – ובמקרה הטוב יגרום לקריסת כלל הProcesses ב Kernel.

 

תמונת אווירה לינוקס קרנל

 

מטרת הקורס

הקורס מתמקד בכל הנושאים הנדרשים לפיתוח מודלים ו מנהלי התקנים בסביבת Linux Kernel ,
הקורס אינו דורש ידע ראשוני בפיתוח Kernel.
מטרתו להעניק למהנדסים בתעשייה את הידע התאורטי והמעשי בתחום לרבות הכלים והממשקים הנדרשים, ניהול המשאבים שמעניקה מערכת ההפעלה, שימוש באובייקטים ושירותים, שימוש בכלי בדיקה (Debug Tools) פתרון תקלות בעבור הבעיות אופייניות, פיתוח Board Support Package (BSP) , ועוד .
לקראת סיום הקורס נקדיש פרק בעבור פיתוח Linux Kernel & User Space בסביבת YOCTO.

הקורס מתמקד בארכיטקטורות ARM ו- Intel, תוך שימוש בכרטיסי פיתוח מבוססי Cortex A-8 / i.MX-8 והוא מתמקד בפיענוח ה "Kernel Blocks", פיתוח נכון ואופטימלי של Kernel Device Drivers תוך שימוש עדכני של Linux Kernel APIs .
במהלך קורס זה ילמד הסטודנט:
Kernel Development Environment setup
Loadable Kernel Modules ,
Platform Device Drivers
Devices, drivers, and bus matching
Device tree mechanism
Delay and timer management
Kernel locking mechanism
לרשימת הנושאים המלאה בקורס לחץ כאן

 

תמונת אווירה לינוקס קרנל

תיאור הקורס

  • קורס זה הנו קורס מעשי הכולל הרצאות פרונטליות ותרגול מעשי.
  • משך הקורס הינו כ 90 שעות אקדמיות – 60 שעות מעשיות + 30 שעות תרגול במעבדה.
  • הקורס כולל :
  • לימוד Linux Kernel and Device Drivers תרגילים ופתרונות
  • תרגילי כיתה המלווים בהסברים, שיעורי בית ופתרונות באתר
  • חוברת קורס
  • סרטונים ומצגות באתר הקורס
  • שימוש בכרטיסי פיתוח לצורך עבודה ב Embedded Systems
  • הלימודים מתקיימים בקמפוס ראשל"צ.
  • לקראת סיום הקורס כל סטודנט יבצע פרויקט מעשי המסכם את הידע הנרכש במהלך הקורס.
  • ההרצאות מתקיימות פעם בשבוע בשעות הערב או בוקר.
נושאים
Linux Kernel overview- Main characteristics
Kernel Basic data structures
Scheduling in Linux
Developing Kernel Modules
Character Device Drivers as LKMs
Pin Control and GPIO Subsystem
Kernel object model
Sysfs Devices/buses/drivers/subsystems
Udev
Memory management
Platform Device Drivers
Linux Device Tree
I/O memory and ports
Wait Queues
Interrupts and Exceptions
Work deferring mechanism
Kernel Synchronization
I2C Client Drivers
SPI Device Drivers
IIC frame work
Network Device Drivers

סילבוס

לקבלת סילבוס מפורט ופרטים נוספים נא לבצע רישום, לביצוע רישום לחץ כאן.

קהל היעד

  • ארכיטקטים, מהנדסי תוכנה, מפתחים, מתכנתים המעונינים ללמוד פיתוח ב Kernel בשילוב עם פיתוח מנהלי התקנים (Device Drivers).
  • מהנדסי Embedded Bare-Board המעונינים ללמוד לפתח מנהלי התקנים תחת מערכת הפעלה לינוקס .
  • מהנדסי חומרה, תוכנה, מדעי המחשב המעונינים בידע מעשי בעולם ה לינוקס קרנל.

תנאי קדם

1. ידע וניסיון במערכות הפעלה לינוקס.
2. ידע וניסיון בתכנות User Mode Applications במערכות הפעלה לינוקס.
3. אנגלית ברמה גבוהה.
4. בעלי רקע ו/או ניסיון בפיתוח שפת C \C++ – (הכרחי עבור מסלול הסבה מקצועית).

קורסי המשך

מתוך מסלול

מאמרים

linuxkernellinux kernelמערכות משובצות מחשבלינוקס

אני מאשר קבלת מבצעים ועדכונים מחברת RT-GROUP בכפוף לתקנון

שליחת טופס למשרדים



אני מאשר קבלת מבצעים ועדכונים מחברת RT-GROUP בכפוף לתקנון