لینوکس Real-Time به عنوان یک RTOS: آموزش پچ preempt_rt - آخرین آپدیت

دانلود Real-Time Linux as an RTOS: the preempt_rt patch

نکته: ممکن هست محتوای این صفحه بروز نباشد ولی دانلود دوره آخرین آپدیت می باشد.
نمونه ویدیوها:
توضیحات دوره: بیاموزید چگونه لینوکس Real-Time را با استفاده از preempt_rt، ترد‌های RT و ابزارهایی مانند perf پچ کرده، پیکربندی و برنامه‌نویسی کنید. درک مفاهیم بنیادی محاسبات بلادرنگ (Real-Time) و چگونگی تطبیق لینوکس برای برآورده کردن الزامات Real-Time. راه‌اندازی، پیکربندی و بهینه‌سازی کرنل لینوکس Real-Time (با PREEMPT-RT) برای دستیابی به عملکرد قطعی (Deterministic). توسعه و عیب‌یابی برنامه‌های Real-Time در لینوکس با استفاده از Threadها، سیاست‌های زمان‌بندی (Scheduling) و مکانیسم‌های همگام‌سازی. تحلیل و اندازه‌گیری تأخیر سیستم (Latency) و جیتر (Jitter) با استفاده از ابزارهای استاندارد صنعتی و به‌کارگیری بهترین روش‌ها در پروژه‌های واقعی سیستم‌های نهفته و صنعتی. پیش نیازها: دانش پایه لینوکس (کار با ترمینال، ویرایش فایل‌ها، اجرای دستورات). آشنایی با برنامه‌نویسی C یا C++ (سینتکس پایه، کامپایل و دیباگ). یک کامپیوتر دارای لینوکس (اوبونتو، دبیان یا مشابه) یا توانایی راه‌اندازی ماشین مجازی.

سیستم‌های Real-Time را با لینوکس بسازید — از مفاهیم کرنل تا برنامه‌های قطعی و دقیق.

این دوره شما را در یک مسیر عملی برای یادگیری لینوکس Real-Time با استفاده از پچ PREEMPT_RT همراه می‌کند و دانش و ابزارهای لازم برای تبدیل یک کرنل استاندارد لینوکس به یک پلتفرم Real-Time با تأخیر کم و پیش‌بینی‌پذیر را در اختیار شما قرار می‌دهد.

چه برای اتوماسیون صنعتی، رباتیک، هوافضا یا سیستم‌های نهفته (Embedded) توسعه‌دهنده باشید، این دوره به شما کمک می‌کند درک کنید لینوکس چگونه به قطعیت (Determinism) دست می‌یابد و چگونه برنامه‌هایی طراحی کنید که محدودیت‌های زمانی سخت‌گیرانه را رعایت کنند.


آنچه خواهید آموخت:

  • مفاهیم اصلی محاسبات Real-Time و قطعیت (Determinism)

  • چگونگی تغییر کرنل لینوکس توسط PREEMPT_RT برای عملکرد بلادرنگ

  • ساخت و پیکربندی یک کرنل Real-Time (به عنوان مثال لینوکس 6.1)

  • اندازه‌گیری و تنظیم تأخیر سیستم (System Latency) با ابزارهایی مانند cyclictest

  • نوشتن برنامه‌های Real-Time به زبان C/C++ با استفاده از pthread، اولویت‌ها و CPU affinity

  • درک ارث‌بری اولویت (Priority Inheritance) و سیاست‌های زمان‌بندی (SCHED_FIFO, SCHED_RR, SCHED_DEADLINE)

  • جداسازی CPUها و بهینه‌سازی برای پیش‌بینی‌پذیری

تجربه عملی:

این دوره بر پیاده‌سازی عملی تأکید دارد:

  • ساخت یک کرنل Real-Time از سورس و اعمال پچ PREEMPT_RT

  • پیکربندی پارامترهای بوت و جداسازی CPU (CPU isolation)

  • پیاده‌سازی برنامه‌های Real-Time با استفاده از POSIX threads

این دوره برای چه کسانی است؟

  • مهندسان و توسعه‌دهندگان سیستم‌های نهفته (Embedded)

  • برنامه‌نویسان سیستم‌های لینوکسی

  • توسعه‌دهندگان رباتیک و اتوماسیون

  • هر کسی که به سیستم‌های با تأخیر کم و قطعی (Deterministic) علاقه‌مند است

پیش‌نیازها:

  • دانش پایه دستورات لینوکس و شل اسکریپتینگ

  • تجربه برنامه‌نویسی با C یا C++

  • محیط توسعه لینوکس (مانند Ubuntu، Debian یا مشابه)

چرا این دوره را بگذرانید؟

لینوکس در همه جا هست، اما لینوکس استاندارد قطعی (Deterministic) نیست.
با درک نحوه پیکربندی و برنامه‌نویسی یک سیستم لینوکس Real-Time، شما توانایی ساخت نرم‌افزارهای پاسخگو، قابل اعتماد و حساس به زمان را برای هر صنعتی به دست خواهید آورد.


سرفصل ها و درس ها

مقدمه Introduction

  • محاسبات Real-Time چیست؟ What is Real-Time Computing?

  • انواع سیستم‌های Real-Time Types of Real-Time Systems

  • چرا لینوکس برای Real-Time مناسب است؟ Why Linux for Real-Time?

  • معرفی کلی Introduction

نصب نرم‌افزارها Software Installation

  • نصب Virtual Box Virtual Box installation

مرور مفاهیم پایه لینوکس Linux Fundamentals Refresher

  • مبانی کرنل لینوکس - بخش اول Linux Kernel Basics

  • مبانی کرنل لینوکس - بخش دوم Linux Kernel Basics

  • پروسس‌ها، زمان‌بندی و اولویت‌ها - بخش اول Processes, Scheduling, and Priorities

  • پروسس‌ها، زمان‌بندی و اولویت‌ها - بخش دوم Processes, Scheduling, and Priorities

  • مقادیر Nice Nice values

  • ضروریات مدیریت حافظه Memory Management Essentials

  • مدیریت حافظه Memory Management

  • دستورات مدیریت حافظه Memory Management commands

  • اینترپت‌ها و System Callها - بخش اول Interrupts and System Calls

  • اینترپت‌ها و System Callها - بخش دوم Interrupts and System calls

مفاهیم لینوکس Real-Time Real-Time Linux Concepts

  • قطعیت در سیستم‌های عامل Determinism in Operating Systems

  • بررسی Determinism Determinism

  • سیاست‌های زمان‌بندی Real-Time: SCHED_FIFO Real-Time Scheduling Policies: SCHED_FIFO

  • تمرین: نوشتن برنامه C++ برای تنظیم سیاست SCHED_FIFO Praxis: Write C++ application to set scheduling policy to SCHED_FIFO

  • بررسی SCHED_FIFO در C++ SCHED_FIFO C++

  • سیاست‌های زمان‌بندی Real-Time: SCHED_RR Real-Time Scheduling Policies: SCHED_RR

  • تمرین: تنظیم سیاست SCHED_RR در برنامه C++ Praxis: Set scheduling policy to SCHED_RR in a C++ application

  • بررسی SCHED_RR در C++ SCHED_RR C++

  • سیاست‌های زمان‌بندی Real-Time: SCHED_DEADLINE Real-Time Scheduling Policies: SCHED_DEADLINE

  • تمرین: نوشتن برنامه C++ برای تنظیم سیاست SCHED_DEADLINE Praxis: Write C++ application to set scheduling policy to SCHED_DEADLINE

  • سیاست‌های زمان‌بندی Real-Time: بهترین روش‌ها و اشتباهات رایج Real Time Scheduling Policies: Best Practices and Pitfalls

  • تمرین: محدودیت‌های زمان‌بند Real-Time در لینوکس Praxis: Scheduler Real-Time limits in Linux

  • مرور سیاست‌های زمان‌بندی Real-Time Real-Time Scheduling policies

  • تأخیر اینترپت و جیتر (Latency & Jitter) - بخش اول Interrupt Latency & Jitter

  • تأخیر اینترپت و جیتر (Latency & Jitter) - بخش دوم Interrupt Latency & Jitter

  • مرور کلی پچ PREEMPT RT PREEMPT-RT Patch Overview

راه‌اندازی سیستم لینوکس Real-Time Setting Up a Real-Time Linux System

  • انتخاب نسخه مناسب کرنل Choosing the Right Kernel Version

  • اعمال و کامپایل PREEMPT RT Applying and Compiling PREEMPT-RT

  • پارامترهای بوت برای حالت Real-Time Boot Parameters for Real-Time

نوشتن برنامه‌های Real-Time (C/C++) برای لینوکس Writing Real-Time Applications (C/C++) for Linux

  • ساخت ترد Real-Time با استفاده از pthread Create a real time thread using pthread

  • تایمرهای با دقت بالا (High Resolution timers) High Resolution timers

  • تنظیم CPU affinity Set CPU affinity

  • ارث‌بری اولویت و Mutexها Priority Inheritance and mutexes

ابزارهای تحلیل Real-Time Tools for Real-Time Analysis

  • ابزار cyclictest و اندازه‌گیری تأخیر cyclictest and Latency Measurement

  • کار با cyclic test cyclic test

  • ردیابی با trace cmd Tracing with trace-cmd

  • استفاده از perf برای مانیتورینگ عملکرد Using perf for Performance Monitoring

جمع‌بندی Wrap-up

  • جمع‌بندی نهایی Wrap-up

نمایش نظرات

لینوکس Real-Time به عنوان یک RTOS: آموزش پچ preempt_rt
جزییات دوره
4.5 hours
30
Udemy (یودمی) Udemy (یودمی)
(آخرین آپدیت)
54
4.2 از 5
دارد
دارد
دارد
جهت دریافت آخرین اخبار و آپدیت ها در کانال تلگرام عضو شوید.

Google Chrome Browser

Internet Download Manager

Pot Player

Winrar

Haithem Jebali Haithem Jebali

مدرس، توسعه‌دهنده نرم‌افزار و مشاور