- عنوان کتاب: Embedded Linux Development Using Yocto Project Build production-grade embedded Linux products with the Yocto Project 6.0
- نویسنده: Daiane Angolini, Otavio Salvador
- حوزه: سیستمعامل توکار
- تعداد صفحه: 346
- زبان اصلی: انگلیسی
- نوع فایل: pdf
- حجم فایل: 9.09 مگابایت
یک محصول لینوکس تعبیهشده هرگز فقط یک هسته لینوکس و یک سیستم فایل ریشه نیست. این یک مجموعه خاص از بستهها است که با یک زنجیره ابزار خاص، برای یک قطعه سختافزار خاص، تحت شرایط مجوزی که باید بتوانید آن را در نظر بگیرید، ساخته شده است. مونتاژ دستی آن یک بار کار میکند. در یک خط تولید دوام نمیآورد و روزی که یک اصلاحیه امنیتی ارائه میشود و کل تصویر باید دقیقاً همانطور که هجده ماه قبل ساخته شده بود، بازسازی شود، دوام نمیآورد. پروژه یاکتو وجود دارد تا این را تکرارپذیر کند. این یک توزیع لینوکس نیست و تصاویری را که نصب میکنید، ارسال نمیکند. این مجموعهای از ابزارها، فرادادهها و رویههای جامعه است که به شما امکان میدهد سیستمی را که میخواهید توصیف کنید و سپس هر بار آن را برای سختافزاری که روی آن ارسال میکنید، به همان روش بسازید. در میان سیستمهای ساخت متنباز موجود برای کارهای تعبیهشده، چند ویژگی آن را به سیستمی تبدیل میکند که بیشتر تیمهای محصول روی آن توافق میکنند: – همه چیز از منبع ساخته شده است، بنابراین زنجیره ابزار، پرچمهای کامپایلر، انتخاب بسته و شرایط مجوز آنچه ارسال میکنید، همگی به تصمیم و حسابرسی شما بستگی دارد. – فراداده لایهبندی شده است که پشتیبانی سختافزار، سیاست توزیع و دستور العملهای برنامه شما را در مخازن جداگانهای نگه میدارد که میتوانند به طور مستقل نسخهبندی و ارتقا یابند. – نسخههای پشتیبانی بلندمدت به مدت چهار سال نگهداری میشوند، که به اندازه کافی نزدیک به عمر مفید یک محصول تعبیهشده معمولی است تا بتوان در مورد آن برنامهریزی کرد. – خروجی ساخت قابل تکرار است، بنابراین یک همکار، یک سرور ساخت و یک مهندس پشتیبانی مشتری که در حال بررسی یک خرابی میدانی است، همگی میتوانند یک تصویر مشابه را بازسازی کنند. این کتاب مسیری را که یک مهندس هنگام اتخاذ پروژه Yocto طی میکند، دنبال میکند. با چیستی پروژه، چه کسی آن را تولید میکند و چگونه نسخههای آن سازماندهی میشوند، شروع میشود، سپس یک میزبان ساخت را آماده میکند و اولین تصویر قابل بوت را با bitbake‑setup تولید میکند. از آنجا، به خود BitBake میپردازیم: اینکه چگونه متادیتا را پیدا میکند، آن را تجزیه میکند، نمودار وابستگی را رسم میکند، کد منبع را دریافت میکند و وظایفی را که آن منبع را به یک بسته تبدیل میکنند، زمانبندی میکند. بخش میانی کتاب به مصنوعاتی که یک ساخت از خود به جا میگذارد و متادیتایی که برای شکلدهی به آنها مینویسید، میپردازد. این یعنی دایرکتوری ساخت موقت با کارهای هر دستور و درختهای sysroot آن، پشتیبانی از بستهبندی که خروجی ساخت را به بستههای قابل نصب، تصاویر سیستم فایل ریشه و فیدهای بسته تبدیل میکند، و خود سینتکس متادیتا: عملگرهای انتساب و بسط، افزودن و حذف، مکانیسم لغو، توابع پایتون و پوسته و وراثت کلاس. پس از این فصلها، ابزارهایی که روی یک ساخت در حال کار استفاده میکنید، آمده است.
An embedded Linux product is never only a Linux kernel and a root filesystem. It is a particular set of packages, built with a particular toolchain, for a particular piece of hardware, under license terms you have to be able to account for. Assembling that by hand works once. It does not survive a product line, and it does not survive the day a security fix lands and the whole image has to be rebuilt exactly as it was built eighteen months earlier. The Yocto Project exists to make that repeatable. It is not a Linux distribution and it does not ship images you install. It is a set of tools, metadata, and community practice that lets you describe the system you want and then build it the same way every time for the hardware you ship on. Among the open-source build systems available for embedded work, a few properties make it the one most product teams settle on: -Everything is built from source, so the toolchain, the compiler flags, the package selection, and the license terms of what you ship are all yours to decide and to audit -The metadata is layered, which keeps hardware support, distribution policy, and your own application recipes in separate repositories that can be versioned and upgraded independently -Long-term support releases are maintained for four years, which is close enough to the service life of a typical embedded product to plan around -The build output is reproducible, so a colleague, a build server, and a customer support engineer investigating a field failure can all reconstruct the same image. This book follows the path an engineer actually walks when adopting the Yocto Project. It opens with what the project is, who produces it, and how its releases are organized, then prepares a build host and produces a first bootable image with bitbake‑setup. From there, it turns to BitBake itself: how it locates metadata, parses it, works out the dependency graph, fetches source code, and schedules the tasks that turn that source into a package. The middle of the book covers the artifacts a build leaves behind and the metadata you write to shape them. That means the temporary build directory with its per-recipe work and sysroot trees, the packaging support that turns build output into installable packages, root filesystem images, and package feeds, and the metadata syntax itself: assignment and expansion operators, appends and removals, the override mechanism, Python and shell functions, and class inheritance. Those chapters are followed by the tooling you use on top of a working build,
این کتاب را میتوانید از لینک زیر بصورت رایگان دانلود کنید:
Download: Embedded Linux Development





نظرات کاربران