ParsX.com
پذیرش پروژه از دانشجویی ... تا سازمانی 09376225339
 
   ProfileProfile   Log in to check your private messagesLog in to check your private messages  |  FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups Log inLog in   RegisterRegister 

کامپایل سورس کرنل لینولس kernel

 
Post new topic   Reply to topic    ParsX.com Forum Index -> مفاهيم اوليه سيستم عامل / Linux
View previous topic :: View next topic  
Author Message
vahid
بي تو هرگز


Joined: 26 Nov 2004
Posts: 3067
Location: Tehran

PostPosted: Tue Aug 30, 2011 3:14 pm    Post subject: کامپایل سورس کرنل لینولس kernel Reply with quote

www.Kernel.org سورس کرنل لینولس
کرنل بخشهای مختلف دارد –
bzip2 -d linux-2.6.38.6.tar.bz2 برای باز کردن فایل فشره که حدود 400 مگابایت است و کامپایل آن دو روز طول می کشد
tarxvf linux-2.6.38.6.tar باز کردن فایل
firmware نرم افزار هایی که در هنگام بالا آمدن سیستم برد ها را به روزرسانی می کند
Fs مربوط به file system ها است
Init
IpcمخففInter process communication
Kernel
هر نرم افزار یک فایل README با حرف بزرگ دارد که راهنمای آن نرم افزار است
Make config برای شروع کامپایل کرنل است
ابتدا کرنل را از حالت زیپ و آرشیو خارج می کنیم
سپس در شاخه مربوطه با زدن دستور make config می توانید به کامپایل کرنل بپردازید. در طول عملیات چندین هزار سوال از شما می پرسد که آیا این نرم افزار ها را می خواهید یا خیر .
در بعضی سوالات جای y/n از m/n استفاده می شود. M مخفف ماژول می باشد.
درواقع می توان بعضی نرم افزارها را کامپایل کنیم ولی داخل کرنل نیاوریم با انتخاب m این اتفاق می افتد. در واقع این عمل باعث می شود که کرنل حجیم نباشد.
حروفی که در سوال بصورت بزرگ هستند یعنی بصورت پیشفرض انتخاب می شوند.

Prompt for development and/or incomplete code/drivers (EXPERIMENTAL) [Y/n/?]

EXPERIMENTAL یعنی هنوز خوب تست نشده است
) [Y/n/?] آنی که با حرف بزرگ است پیش فرض است
؟ برای راهنما است
خروجی این کامند یک فایل است که حاوی انتخاب ها شما می باشد
Cross-compiler tool prefix (CROSS_COMPILE) [] (NEW) یعنی روی یک ماشین کامپایل و روی یک ماشین دیگر اجرا کنیم
[] (NEW یعنی جدید است
Local version - append to kernel release (LOCALVERSION)


در زیردایرکتوری /lib/modules اطلاعات با uname –a یکی است.
با زدن M در هنگام کامپایل کرنل ماژول ها به این دایرکتوری می روند
هرجا که اشتباها جواب سوالات در هنگام کامپایل کرنل می زنید باید ctrl c زده و از ابتدا شروع کنید.
اما با زدن دستور make menuconfig می توانید بصورت دسته بندی شده سوالات را ببینید
ضمنا در صورتی که بخواهید می توانید از دستور make xconfig استفاده کنید.
با روشن شدن کامپیوتر kudzu اجرا می شود. در واقع به کامپیوتر دستور می دهد تمام برد ها خودشان را معرفی کنند.
Back to top
vahid
بي تو هرگز


Joined: 26 Nov 2004
Posts: 3067
Location: Tehran

PostPosted: Tue Aug 30, 2011 3:17 pm    Post subject: Reply with quote

دستور /sbin/lspci تمام بردهای متصل به pci را لیست می کند
با زدن دستور lsusb می توانید ببینید چه چیزهایی به usb وصل است.
Bus 004 Device 001: ID 0000:0000                                               
Bus 003 Device 001: ID 0000:0000                                               
Bus 001 Device 004: ID 0951:1603 Kingston Technology DataTraveler 1GB/2GB Pen Drive                                                                             
Bus 001 Device 003: ID 125f:c81a A-DATA Technology Co., Ltd.                   
Bus 001 Device 001: ID 0000:0000                                               
Bus 002 Device 001: ID 0000:0000                                               
Bus 005 Device 001: ID 0000:0000                                               
Bus 005 Device 002: ID 0518:0001 EzKEY Corp. USB to PS2 Adaptor v1.09           

در خطوط فوق می بینید سه چیز به usb وصل شده است یک فلش kingston و a-data و کیبورد نیز از طریق usb متصل شده است.
makebzImage سورس را کامپایل می کند.
Make modules نیز ماژول ها را کامپایل می کند.
Back to top
Display posts from previous:   
Post new topic   Reply to topic    ParsX.com Forum Index -> مفاهيم اوليه سيستم عامل / Linux All times are GMT + 3.5 Hours
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum