উত্তর:
এটা নির্ভর করে. আপনার যদি অল্প পরিমাণে মেমরি থাকে তবে মডিউলগুলির ব্যবহার প্রতিবার পুনরায় লোড করা না হওয়ায় তারা পুনরায় জীবনবৃত্তির উন্নতি করতে পারে (আমি এটি 2 গিগাবাইট র্যামের উপর তাত্পর্যপূর্ণ হার্ডড্রাইভের উপর 4 জিবি নয় তবে তা গুরুত্বপূর্ণ বলে মনে করেছি)। এটি বিশেষত সত্য যখন ব্যাটারি মডিউলটিতে কিছু ত্রুটির কারণে (সংকলনযুক্ত বা মডিউল হিসাবে নির্বিশেষে) শুরু হওয়ার জন্য (বেশ কয়েক মিনিট) খুব বেশি সময় লেগেছিল। এমনকি বিন্দুতে বাগ না দিয়েই আমি systemd-analysis
স্থিতিশীলভাবে সংকলিত কার্নেল থেকে মডিউলগুলিতে পরিবর্তিত হয়ে 33 থেকে 18 এর দশকের সময় কমিয়ে আউট করতে পেরেছি - 'আশ্চর্যজনকভাবে' কার্নেলের শুরুটি 9s থেকে 1.5 এ পরিবর্তিত হয়েছে।
এছাড়াও, আপনি কী হার্ডওয়্যার ব্যবহার করতে চলেছেন তা যখন জানেন না, মডিউলগুলি স্পষ্টভাবে উপকারী।
পুনশ্চ. আপনি এমনকি চালকগুলিকে মডিউল হিসাবে যতক্ষণ না ডিআরডি অন্তর্ভুক্ত করেন ততক্ষণ তা সংকলন করতে পারেন। উদাহরণস্বরূপ, ডিস্ট্রসগুলি / চালকগুলির হার্ডড্রাইভ ইত্যাদির ড্রাইভার সিস্টেমের ইনস্টলেশন সংক্রান্ত আরম্ভের অন্তর্ভুক্ত করবে।
আমি যতদূর জানি, গতির কোনও পার্থক্য নেই।
আমি মনে করি আপনি কার্নেল মেমরির কয়েক কেবি অর্জন করবেন কারণ বরাদ্দকরণের গ্রানুলারিটি এক পৃষ্ঠায়, তাই আদর্শ স্থাপত্যে প্রতিটি মডিউল গড় মডিউল প্রতি প্রায় 2 কেবি (½ পৃষ্ঠা) অপচয় করে। এমনকি এম্বেড থাকা সিস্টেমে, এটি খুব কমই গুরুত্বপূর্ণ। মডিউলগুলি কার্নেলের মতো একইভাবে সংকোচিত করা যায় বলে আপনি কিছুটা ডিস্কের স্থানও অর্জন করেছেন; এটি সামান্য স্টোরেজ সহ এম্বেড থাকা সিস্টেমে আরও প্রাসঙ্গিক হতে পারে।
আপনি যদি মডিউলগুলি পুরোপুরি সরবরাহ করতে পারেন তবে আপনি কিছুটা কার্নেল মেমরি (মডিউল লোডারের প্রয়োজন নেই), ডিস্ক স্পেস (মডিউল ইউটিলিটির প্রয়োজন নেই) এবং সিস্টেম জটিলতা (আপনার বিতরণে কোনও বৈশিষ্ট্য হিসাবে মডিউল লোড অন্তর্ভুক্ত করার প্রয়োজন নেই) সংরক্ষণ করুন )। এই এম্বেডেড ডিজাইনগুলিতে এই পয়েন্টগুলি বেশ আকর্ষণীয় যেখানে হার্ডওয়ারটি এক্সটেনসিবল নয়।
একটি দম্পতি সম্ভাব্য সুবিধা। পারফরম্যান্স একটি তর্কযোগ্য। আপনি ডায়নামিক লোডারটির সাথে যুক্ত কিছু রানটাইম ওভারহেড এড়াতে চাইবেন তবে আমি সন্দেহ করি যে আপনি যদি রিয়েল-টাইম শিডিয়ুলারের উপর নির্ভরশীল না হন তবে এটি একটি বড় বিষয়।
যদি আপনি আপনার সিস্টেমে বড় পৃষ্ঠাগুলির সুবিধা নিচ্ছেন তবে সম্ভবত একটি বৃহত্তর স্ট্যাটিক কার্নেল চিত্র তৈরি করার অর্থ আপনি পৃষ্ঠা বর্ণনাকারী ক্যাশেটির আরও দক্ষ ব্যবহার করা। কিছু সিস্টেম কার্নেলকে 'খাঁচা' করবে যাতে এটি একটি মেমরির লোকেশনে শক্তভাবে প্যাক করে, যা কিছুটা বিলম্বকে অপ্রাপ্ত করতে পারে, যা সামান্য এবং সম্ভবত প্রধান ত্রুটির কারণে ঘটে।
ওয়ান বিগ ইমেজ সরবরাহ করার জন্য এটি স্থাপত্যিকভাবে আপনার পক্ষে উপযুক্ত হতে পারে, যুক্তিযুক্ত যে কম স্বতন্ত্র মডিউলগুলি বজায় রাখা সহজ এবং নমনীয়তা হ্রাস গুরুত্বপূর্ণ নয়। শৈলী এবং অনুশীলনের বিষয়গুলিতে প্রচুর যুক্তিযুক্ত উদ্যোগ।
কখনও কখনও এটি প্রয়োজনীয়। আপনি যদি মডিউল হিসাবে কিছু অত্যাবশ্যক ড্রাইভার (যেমন এসসিএসআই ড্রাইভার) সংকলন করেন তবে আপনার সিস্টেম বুট করবে না।
মডিউল হিসাবে সংকলন না করার জন্য আরেকটি দুর্দান্ত প্রার্থী হ'ল রুট পার্টিশনের ফাইল সিস্টেম। কার্নেল যদি ext3
পড়তে না বুঝতে পারে /lib/modules/
তবে এটি কীভাবে এটি থেকে মডিউলগুলি লোড করবে?
এটি সম্পর্কে এইভাবে ভাবুন: মডিউলগুলি ব্যবহার করতে কার্নেলের মডিউলগুলি পড়তে এবং লোড করার জন্য আপনার সিস্টেম সম্পর্কে কার্নেলের যথেষ্ট পরিমাণ জানতে হবে। এটি এবং বিচার এবং ত্রুটিটি ব্যবহার করুন :-)
আমি কার্নেলের অভ্যন্তরে অন্তর্নির্মিত হার্ডওয়ারের জন্য প্রতিটি ড্রাইভারকে স্থিতিশীলভাবে সংকলন করি। ব্যতিক্রম হ'ল এমন হার্ডওয়্যার যা স্থায়ী নয় (উদাহরণস্বরূপ ইউএসবি সংযুক্ত হার্ডওয়্যার)।
যেহেতু আমার হার্ডওয়্যার কনফিগারেশনটি শীঘ্রই যে কোনও সময় পরিবর্তিত হওয়ার সম্ভাবনা নেই, তাই আমি মডিউলগুলি নিয়ে বিরক্ত করি না।