ورود ثبت

وارد حساب کاربری خود شوید

نام کاربری *
رمز عبور *
مرا به خاطر بسپار

ایجاد یک حساب کاربری

تکمیل کردن تمام فیلدهای مشخص شده با (*) لازم است.
نام *
نام کاربری *
رمز عبور *
تایید رمز عبور *
ایمیل *
تایید ایمیل *
کد امنیتی *

دانلود کتاب

  

  

دانلود رایگان کتاب با لینک مستقیم

 کتاب، مقاله و مطلب خود را در 30000 عنوان کتاب، مقاله، مجله و ... سایت روبوک جستجو و با لینک مستقیم دانلود نمایید.

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

  

  

سفارش ترجمه و تایپ

سفارش ترجمه و تایپ

دوشنبه, 27 مرداد 1393 ساعت 15:30

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

نوشته شده توسط 
این مورد را ارزیابی کنید
(0 رای‌ها)

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

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

اولیــن سوالی کــه ممکن است به ذهن خواننده برسد این است که ماژول هسته دقیقا چیست؟ در پاسخ باید گفت که ماژول‌ها تـکه کدهایی هـستند که در حین اجرای هسته لینوکس می توانند وارد آن شده و یا از آن خارج شوند. این تکه کدها عملکرد هسته را بدون نیاز به راه اندازی دوباره کامپیوتر توسعه می‌دهند. به عنوان مثال یــک نــوع از مــاژول‌ها device driver ها هستند کـه به هسته امکان استفاده از قابلیت سخت افزار ها را می‌دهند. اگر ماژول‌ها وجود نداشتند، بـرای هر قابلیتی که می‌خواستیم بــه هسته اضافه کنیم یـا از آن کم کنیم، می‌بایستی یک بار هسته را کامپایل می‌کردیم و برای استفاده از ان قابلیت یا حذف آن یک بار سیستم را از نو راه اندازی می‌کردیم.

ماژول ها تکه کدهایی هستند که در حین اجرای هسته لینوکس می توانند وارد آن شده و یا از آن خارج شوند. این تکه کدها عملکرد هسته را بدون نیاز به راه اندازی دوباره کامپیوتر توسعه می دهند.
به عنوان مثال یک نوع از ماژول ها device driver ها هستند که به هسته امکان استفاده از قابلیت سخت افزار ها را می دهند.
اگر مازول ها وجود نداشتند، برای هر قابلیتی که میخواستیم به هسته اضافه کنیم یا از آن کم کنیم، می بایستی یک بار هسته را کامپایل می کردیم و بریا استفاده از آن قابلیت یا حذف آن یک بار سیستم را از نو راه اندازی می کردیم.
ماژول ها چگونه به هسته وارد می شوند؟
شما می توانید با اجرای دستور Ismod ماژول هایی که هم اکنون در هسته وارد شده اند را ببینید و از اطلاعات آنها باخبر شوید. این دستور اطلاعات خود را از فایل /proc/modules دریافت می کند.
هنگامی که هسته ، به امکان و عملکردی نیاز دارد که هم اکنون در آن نیست ، یکی از deamonهای آن به نام kmod دستور modprobe را اجرا می کند تا ماژول مربوطه که آن عملکرد را دارد وارد هسته شود.

هنگامی که modprobe اجرا می شود به آن یک رشته کاراکتر به دو صورت زیر داد می شود:

1) نام ماژول softdog یا ppp
2) یک مشخصه کلی مانند char-major-10-30

اگر حالت اول بــه modprobe داده شود، ایــن دستور بـه دنبال فایلی به نام softdog.ko یا ppp.ko با روشی که در ادامه می‌آید می‌گردد. ولی اگــر حــالـت دوم بــه modprobe داده شود، ایــن دستــور ابـــتدا بــه دنــبال رشتـه کاراکتر در فایل etc/modprobe.conf/ می گردد و اگر توانست alias یا مستعاری مانند:
alias char-major-10-30 softdog
پیدا کند، متوجه می‌شود کــه ایــن نــام کلی که در اینجا char-major-10-30 است به ماژول softdog اشاره می‌کــند که فایل ماژول آن softdof.ko می‌باشد. در مرحله بعد modprobe فایل lib/modules/version/modules.dep/ را باز کرده و به دنبال ماژول‌هایی می‌گــردد کـه باید قبل از ماژول مورد نظر به هسته وارد شوند. ایــن فــایل به وسیله دستور depmod -a ایجاد می‌شود و حــاوی وابستگی بین ماژول هاست.
به عنوان مثال اگر به دنبال مــاژول msdos.ko در ایــن فــایل بگردید خواهید دید که به ماژول دیگری به نام fat.ko وابسته است یعنی برای اینکه msdos.ko وارد هسته شود حتما باید قبل از ان fat.ko وارد شده باشد. ایــن مسـاله برای fat.ko نیز تــکــرار شده تــا بـه مرحله‌ای برسیم که دیگر وابستگی موجود نباشد. در نهایت modprobe دستور insmod را به کار می‌برد تا ابتدا وابستگی‌ها را به هسته وارد کرده و در نهایت ماژول مورد نظر ما به هسته وارد می‌شود.
پس modprobe وظــیـفه پـیـدا کــردن مــاژول، تعیین وابستگیهای آن و وارد کردن آن بــه هستــه بــه وسیــله صـدا کردن insmod را دارد در حالی که insmod فقط وظیفه وارد کردن آن ماژول به هسته را دارد.

قبل از شروع
قبل از اینکه وارد کد و کدزنی شویم چند نکته مهم را بررسی می‌کنیم:
۱) modversioning: یــک ماژول کـه برای یک هسته خاص کامپایل شده است بر روی هسته دیگر load نخواهد شد مگر اینکه شــما CONFIG_MODVERSIONS را در هسته فــعــال کنــیـد. در قـســمت‌های بـعــد بیشتر به این مقوله خواهیم پرداخت.
۲) ماژول‌ها نمی‌توانند چــیزی به غیر از خطاها و هشدارها را بر روی صفحه نمایش نـشان دهند. آنها بــرای نـشان دادن اطلاعات خود، آنها را در log فایلها می‌نویسند.
۳) مورد سوم که کاملا مورد قبول بنده نمی‌باشد این است که نویسنده می گوید:
«اغلب توزیع کنندگان لینوکس کد منبع هسته را که مورد Patch نیز قرار گرفته به طرز غیر استانداردی توزیع می‌کنند که ممکن است باعث ایجاد مشکلاتی شود. یکی از شایع ترین این مشکلات فایل های ناقص Header برای هسته لینوکس هستند. شما برای ماژول نویسی نیاز دارید که فایل های Header زیــادی را در کـــدهای خـود ضمیمه کـنـید و فایــلهای ناقص اغلب فایل هایی هستند که برای ماژول نویسی به کار می روند.» نویــسنده پیشنهاد می‌کند کـه برای جلوگیری از این مشکل هسته را برای خود کامپایل کنید.

نویسنده: سعید تقوی

در این بخش فایل آموزش ماژول نویسی برای هسته لینوکس به صورت پی دی اف در 56 صفحه برای شما عزیزان قرار گرفت.

شما می توانید به منظور بحث و بررسی آموزش ماژول نویسی برای هسته لینوکس به انجمن مهندسی کامپیوتر مراجعه نمایید.

از این به بعد فايل هايي که براي دانلود قرار می گیرند چندين بار قبل و بعد از قرار گرفتن بر روي سرور توسط تیم پوپول تست می گردد در نتيجه فايل ها کاملآ سالم هستند اما در برخي مواقع به دليل هاي مختلف فايل ها دچار مشکل مي شوند بدين صورت که پس از دانلود و استخراج فايل ها از سوي نرم افزار Winrar با اخطار CRC رو به رو ميشوند. اما جاي نگراني نيست چون فايل ها به گونه اي فشرده شده اند که داراي قابليت بازيابي هستند. به همين منظور کافيست که فايل معيوب را با استفاده از نرم افزار Winrar اجرا کنيد و سپس با انتخاب گزينه Repair اقدام به تعمير فايل فشرده نماييد.

تمامی فایل ها قابلیت ریکاوری تا 5% را دارند.

لینک دانلود مستقیم فایل

حجم فایل: 2.29  مگا بایت

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

لطفا درخواست ها، نظرها و انتقاد خود را برای پیشرفت هرچه سریعتر ما ارسال فرمایید.

بازدید 262 بار آخرین ویرایش در دوشنبه, 27 مرداد 1393 ساعت 15:30

نوشتن دیدگاه


تصویر امنیتی
تصویر امنیتی جدید

خبرنامه

آدرس ایمیل خود را در کادر زیر وارد نمایید تا از آخرین اخبار مطلع شوید.

تماس با ما

اطلاعات تماس گروه روبوک

  • شماره پیامکی: 50002853627180
  • شماره تماس : 09387137519 (9 صبح الی 4 بعدازظهر)
  • آدرس ایمیل : این آدرس ایمیل توسط spambots حفاظت می شود. برای دیدن شما نیاز به جاوا اسکریپت دارید

با ما در تماس باشید

ما را در صفحات اجتماعی دنبال نمایید...