ویژگیهای کلیدی
درایورهای دستگاه لینوکس با ویژگیهای غنی و سفارشی را برای هر دستگاه کاراکتری، SPI و I2C بنویسید.
درک عمیقی از قفل کردن اولیهها، مدیریت IRQ، مدیریت حافظه، DMA و غیره ایجاد کنید.
تجربه عملی در سمت تعبیهشده لینوکس با استفاده از GPIO، IIO و زیرسیستمهای ورودی کسب کنید.
شرح کتاب
لینوکس تاکنون پرکاربردترین هسته در سیستمهای تعبیهشده است. به لطف زیرسیستمهایش، هسته لینوکس تقریباً از همه زمینههای کاربردی در دنیای صنعت پشتیبانی میکند. این ویرایش دوم بهروز شده از توسعه درایور دستگاه لینوکس، مقدمهای جامع بر دنیای هسته لینوکس و زیرسیستمهای مختلفی است که از آن ساخته شده است و برای توسعهدهندگان سیستمهای تعبیهشده از هر رشتهای مفید خواهد بود.
شما یاد خواهید گرفت که چگونه هسته لینوکس را پیکربندی، تنظیم و بسازید. این کتاب که مملو از مثالهای دنیای واقعی است، هر یک از زیرسیستمهای پرکاربرد در حوزههای تعبیهشده مانند GPIO، دسترسی مستقیم به حافظه، مدیریت وقفه و درایورهای دستگاه I2C/SPI را پوشش میدهد. این کتاب به شما نشان میدهد که چگونه لینوکس هر دستگاه را از دیدگاه سختافزاری خلاصه میکند و چگونه یک دستگاه به درایور(های) خود متصل است. همچنین خواهید دید که چگونه وقفهها در سیستم منتشر میشوند، زیرا این کتاب مکانیسمهای پردازش وقفه را به طور عمیق پوشش میدهد و هر ساختار هسته و API مربوطه را شرح میدهد. این ویرایش جدید همچنین به چگونگی ننوشتن درایورهای دستگاه با استفاده از کتابخانههای فضای کاربر برای کلاینتهای GPIO، درایورهای I2C و SPI میپردازد.
در پایان این کتاب لینوکس، شما قادر خواهید بود درایورهای دستگاه را برای اکثر دستگاههای تعبیهشده موجود بنویسید.
آنچه خواهید آموخت
دانلود، پیکربندی، ساخت و سفارشیسازی هسته لینوکس
توصیف سختافزار با استفاده از درخت دستگاه
نوشتن درایورهای پلتفرم با ویژگیهای غنی و استفاده از گذرگاههای I2C و SPI
بهرهگیری حداکثری از زیرساخت جدید صف کاری مدیریتشده همزمان
درک مکانیسم زمانبندی هسته لینوکس و استفاده از APIهای مرتبط با زمان
استفاده از چارچوب regmap برای فاکتورگیری کد و عمومیسازی آن
حذف بار CPU برای کپیهای حافظه با استفاده از DMA
تعامل با دنیای واقعی با استفاده از زیرسیستمهای GPIO، IIO و ورودی
این کتاب برای چه کسانی مناسب است؟
این کتاب سیستم عامل لینوکس برای علاقهمندان/توسعهدهندگان سیستمهای توکار و لینوکس توکار است که میخواهند توسعه هسته لینوکس را آغاز کنند و از زیرسیستمهای آن بهره ببرند. هکرهای الکترونیکی و علاقهمندان به توسعه هسته لینوکس و همچنین هر کسی که به دنبال تعامل با پلتفرم با استفاده از GPIO، IIO و زیرسیستمهای ورودی است، این کتاب را مفید خواهند یافت.
فهرست مطالب
مقدمهای بر توسعه هسته
درک مفاهیم اولیه ماژول هسته لینوکس
کار با کمککنندههای هسته هسته هسته
نوشتن درایورهای دستگاه کاراکتری
درک و استفاده از درخت دستگاه
مقدمهای بر دستگاهها، درایورها و انتزاع پلتفرم
درک مفهوم دستگاهها و درایورهای پلتفرم
نوشتن درایورهای دستگاه I2C
نوشتن درایورهای دستگاه SPI
درک تخصیص حافظه هسته لینوکس
پیادهسازی پشتیبانی از دسترسی مستقیم به حافظه (DMA)
انتزاع دسترسی به حافظه – مقدمهای بر API Regmap: انتزاع نقشه ثبات
رفع ابهام در چارچوب IRQ هسته
مقدمهای بر مدل دستگاه لینوکس
بررسی عمیق چارچوب IIO
بهرهگیری حداکثری از زیرسیستمهای کنترلکننده پین و GPIO
بهرهگیری از زیرسیستم ورودی هسته لینوکس






























