ویژگیهای کلیدی
به طور کامل نحوه استفاده از ابزارها و تکنیکهای مختلف اشکالزدایی هسته و ماژول را با استفاده از مثالها درک کنید.
یاد بگیرید که چگونه به طور تخصصی یک هسته را تفسیر کنید. Oops و نقص(های) اساسی را شناسایی کنید.
از جداول آسان برای جستجو و توضیحات واضح در مورد نقصهای سطح هسته برای آسان کردن این موضوع پیچیده استفاده کنید.
شرح کتاب
هسته لینوکس در هسته اصلی بهترین سیستم عامل با کیفیت تولید در جهان قرار دارد. با این حال، اشکالزدایی آن میتواند یک تلاش پیچیده باشد.
اشکالزدایی هسته لینوکس یک راهنمای جامع برای یادگیری همه چیز در مورد اشکالزدایی پیشرفته هسته است. این کتاب بسیاری از زمینهها را به طور عمیق پوشش میدهد، مانند تکنیکهای اشکالزدایی مبتنی بر ابزار دقیق (printk و چارچوب اشکالزدایی پویا)، و نحوه استفاده از Kprobes را به شما نشان میدهد. اشکالات مربوط به حافظه معمولاً یک کابوس هستند – دو فصل مملو از ابزارها و تکنیکهایی است که به اشکالزدایی آنها اختصاص داده شده است. وقتی هسته به شما یک Oops میدهد، دقیقاً چگونه آن را تفسیر میکنید تا بتوانید مشکل اساسی را اشکالزدایی کنید؟ ما شما را پوشش میدهیم. همزمانی ذاتاً موضوعی پیچیده است، بنابراین فصلی در مورد اشکالزدایی قفل به شما کمک میکند تا دقیقاً یاد بگیرید که مسابقات داده چیست، از جمله استفاده از KCSAN برای تشخیص آنها. برخی از مشکلات پیچیده، چه از نظر اشکالزدایی و چه از نظر عملکرد، نیاز به ردیابی دقیق در سطح هسته دارند. شما یاد خواهید گرفت که از قدرت چشمگیر Ftrace و frontend های آن استفاده کنید. همچنین نحوه مدیریت قفل شدن هسته، هنگ کردن و وحشت هسته وحشتناک را کشف خواهید کرد، و همچنین از ابزار GDB محترم درون هسته (KGDB) به همراه موارد بسیار دیگر استفاده خواهید کرد.
در پایان این کتاب، طیف گستردهای از ابزارها و تکنیکهای قدرتمند اشکالزدایی هسته را در اختیار خواهید داشت، به همراه درک دقیقی از زمان استفاده از هر کدام.
آنچه خواهید آموخت
بررسی printk مبتنی بر ابزار دقیق به همراه چارچوب اشکالزدایی پویای قدرتمند
استفاده از Kprobe های ایستا و پویا برای به دام انداختن توابع هسته/ماژول
دریافت نقصهای حافظه هسته با KASAN، UBSAN، اشکالزدایی SLUB و kmemleak
تفسیر عمیق یک Oops و شناسایی دقیق محل منبع آن
درک رقابتهای داده و استفاده از KCSAN برای شناسایی نقصهای همزمانی evasive
استفاده از Ftrace و trace-cmd برای ردیابی جریان هسته با جزئیات کامل
نوشتن یک کنترلکننده هراس هسته سفارشی و تشخیص قفلها و هنگهای هسته
استفاده از KGDB برای اشکالزدایی تک مرحلهای و کد منبع هسته/ماژول
این کتاب برای چه کسانی مناسب است؟
این کتاب برای توسعهدهندگان هسته لینوکس، نویسندگان ماژول/درایور و آزمایشکنندگانی است که علاقهمند به اشکالزدایی و بهبود سیستمهای لینوکس خود در سطح هسته هستند. مدیران سیستمی که میخواهند زیرساخت داخلی هستههای لینوکس خود را درک و اشکالزدایی کنند، نیز این کتاب را مفید خواهند یافت. تسلط کافی بر برنامهنویسی C و خط فرمان لینوکس ضروری است. کمی تجربه در توسعه هسته (ماژول) به شما کمک میکند تا در ادامه مطلب همراه ما باشید.
فهرست مطالب
مقدمهای کلی بر نرمافزار اشکالزدایی
رویکردهایی برای اشکالزدایی هسته
اشکالزدایی از طریق ابزار دقیق – printk و دوستان
اشکالزدایی از طریق ابزار دقیق – Kprobes
اشکالزدایی مشکلات حافظه هسته – بخش 1
اشکالزدایی مشکلات حافظه هسته – بخش 2
اوپس! تفسیر تشخیص اشکال هسته
اشکالزدایی قفل
ردیابی جریان هسته
هراس هسته، قفل شدن و هنگ کردن
استفاده از GDB هسته (KGDB)
چند رویکرد دیگر اشکالزدایی هسته






























