درایورهای دستگاه لینوکس قطعات مهمی از نرم افزار هستند که به سیستم عامل شما اجازه می دهند با سخت افزارهایی مانند صفحه کلید، چاپگر و سایر لوازم جانبی ارتباط برقرار کند. توسعه این درایورها یک مهارت بسیار تخصصی است که بینش عمیقی در مورد روش عملکرد سیستم عامل لینوکس در سطح پایین ارائه می دهد. درک روش ارتباط درایورها با هسته، تعامل با تماس های سیستم و مدیریت منابع سخت افزاری فرصت های جدیدی را برای برنامه نویسی و توسعه سیستم پیشرفته باز می کند.

ما فقط یک دوره را منتشر کردیم روی کانال YouTube freeCodeCamp.org که همه چیز را در مورد توسعه درایورهای دستگاه لینوکس به شما آموزش می دهد. این دوره یک دستon رویکردی برای تسلط بر توسعه درایور، که شما را در هر مرحله هدایت می کند. پیوش ایتانکار این دوره را ایجاد کرد. پیوش یک مهندس سیستم های جاسازی شده در گوگل است.

تفکیک دوره:

  • ما کی هستیم و رسالت ما: با تیم پشت دوره آشنا شوید و در مورد ماموریت آنها برای دسترسی به موضوعات پیچیده مانند توسعه درایور دستگاه برای همه آشنا شوید.

  • معرفی و چیدمان دوره: یک نمای کلی از آنچه در دوره پوشش داده خواهد شد و روش ساخت هر بخش دریافت کنید روی آخرین موردی که درک شما از درایورهای لینوکس را عمیق تر می کند.

  • محیط سندباکس برای آزمایش: روش راه‌اندازی یک محیط امن و کنترل‌شده را بیابید که در آن می‌توانید بدون تأثیرگذاری روی سیستم اصلی خود، توسعه درایور را آزمایش کنید.

  • راه اندازی برای مک، لینوکس و ویندوز: روش پیکربندی محیط توسعه خود را بیاموزید روی هر سیستم عامل، از جمله مک، لینوکس، و ویندوز، بنابراین شما می توانید بدون توجه به پلت فرمی که استفاده می کنید شروع به کار کنید.

  • کرنل، سیستم و راه‌اندازی لینوکس: درباره هسته لینوکس، فرآیندهای بوت سیستم و روش ایفای نقش درایورها در مراحل اولیه راه اندازی سیستم بیشتر بیاموزید.

  • فضای کاربر، فضای هسته، تماس های سیستم و درایورهای دستگاه: تفاوت بین فضای کاربر و فضای هسته را بررسی کنید و اینکه چگونه فراخوانی های سیستم به عنوان پل ارتباطی بین این دو عمل می کنند – دانش کلیدی برای نوشتن درایورهای کارآمد.

  • عملیات فایل در درایورهای دستگاه: درک روش تعامل درایورها با سیستم فایل لینوکس، به ویژه در رابطه با مدیریت عملیات فایل خاص دستگاه.

  • اولین ماژول قابل بارگیری ما: با ایجاد یک ماژول قابل بارگیری، اولین قدم های خود را برای توسعه درایور عملی بردارید، که درایوری است که می تواند بدون راه اندازی مجدد سیستم اضافه و از هسته حذف شود.

  • Deep Dive – ساخت و ایجاد فایل: روش استفاده را بیاموزید make و makefile برای کامپایل درایورهای خود و اطمینان از گردش کار توسعه روان.

  • ابزارهای مدیریت ماژول هسته: به ابزارهای ضروری لینوکس مانند lsmod، insmod، و rmmod، که برای بارگذاری، درج و حذف ماژول های هسته استفاده می شود.

  • کاوش در سیستم فایل /proc: کشف کنید که چگونه /proc فایل سیستم کار می کند و چگونه می توان از آن برای نظارت و مدیریت فعالیت های درایور در زمان واقعی استفاده کرد.

  • پیاده سازی عملیات خواندن و ارسال داده ها: مهارت‌هایی را در اجرای عملیات خواندن برای درایور خود توسعه دهید و یاد بگیرید که چگونه داده‌ها را بین فضای هسته و فضای کاربر منتقل کنید – بخشی ضروری از هر درایور.

  • برنامه ها و چالش های فضای کاربر: دانش خود را با ساختن برنامه های کاربردی فضای کاربری که با درایورهای شما تعامل دارند و چالش ها را برای تقویت یادگیری شما حل می کنند، به کار ببندید.

پیشنهاد می‌کنیم بخوانید:  چه کسی اتریوم را ایجاد کرد؟

این دوره آموزشی برای هر کسی که می‌خواهد درک عمیق‌تری از روش کار درایورهای دستگاه لینوکس و روش توسعه آن‌ها از ابتدا کسب کند، عالی است. دوره کامل را تماشا کنید روی کانال YouTube freeCodeCamp.org (5 ساعت تماشا).