কেন লিনাক্স বিভিন্ন হার্ডওয়্যার প্ল্যাটফর্মগুলিতে এত ভাল স্কেল করে?


22

ডেস্কটপ, ল্যাপটপ, সার্ভার, এমবেডেড ডিভাইস, মোবাইল ফোন ইত্যাদি - কেন লিনাক্স বিভিন্ন ধরণের মেশিনে ভালভাবে চালায়? এটি কি মূলত সিস্টেমটি উন্মুক্ত থাকার কারণে, তাই এর কোনও অংশকে বিভিন্ন পরিবেশে কাজ করার জন্য পরিবর্তন করা যেতে পারে? অথবা লিনাক্স কার্নেল এবং / অথবা সিস্টেমের এমন আরও কিছু বৈশিষ্ট্য রয়েছে যা এই ওএসের পক্ষে এত বিস্তৃত প্ল্যাটফর্মে কাজ করা সহজ করে?


7
আমি মনে করি আপনার কাছে ইতিমধ্যে উত্তরটির একটি অংশ রয়েছে - খোলামেলাতা বিভিন্ন গোষ্ঠী বা ব্যবসা প্রতিষ্ঠানের পক্ষে এটি তাদের প্রয়োজনীয়তার সাথে খাপ খাইয়ে নেওয়া সহজ করে তোলে। যেহেতু কর্নেল একচেটিয়া হিসাবে সমালোচিত হয়েছিল আমি নিশ্চিত নই যে এটির প্রাথমিক নকশাটি ইচ্ছাকৃতভাবে কোনওভাবেই স্কেলাবিলিটির জন্য অনুকূলিত করা হয়েছিল। আমি অনুমান করব যে অন্যান্য অপারেটিং সিস্টেমের তুলনায় বিপুল সংখ্যক লোক লিনাক্সের মূল ভিত্তিতে কাজ করেছে - এবং সম্ভবত এটি মূল রক্ষণাবেক্ষণকারীদের কোডটিকে পরিষ্কার ইন্টারফেসের সাথে টুকরো টুকরো করার ক্ষেত্রে যত্ন নিতে বাধ্য করেছে? অন্যদিকে BSD এর কিছু ভেরিয়েন্টের সুস্পষ্ট লক্ষ্য হিসাবে বহনযোগ্যতা রয়েছে।
রেডগ্রিটিব্রিক

@ রেড: এটি একটি মাইক্রো কার্নেলের পরিবর্তে একশব্দ কার্নেল হওয়ার কারণে সমালোচিত হয়েছিল - যদিও এটির নকশাটির সাথে কিছুই করার নেই। এটি ব্যবহার করে যে কতগুলি কার্নেল ইউজারস্পেসে চলে এবং কার্নেলস্পেসে কতটা চালায়। উইন্ডোজ এনটি-র কার্নেল (উদাহরণস্বরূপ) খুব মডুলার, তবে এটি এখনও প্রযুক্তিগতভাবে একঘেয়েমিযুক্ত কারণ বেশিরভাগ পরিষেবা (যেমন ফাইল সিস্টেম) ব্যবহারকারী মোডের পরিবর্তে কার্নেল মোডে চলে run
বিলি ওনিল

@ বিলি: উইন্ডোজ এনটি প্রযুক্তিগতভাবে একটি হাইব্রিড কার্নেল। আমি বিশ্বাস করি মাইক্রোসফ্ট এখনও মেসেজ পাসিং ব্যবহার করে সাবসিস্টেমগুলি বজায় রাখে এবং পছন্দমতো টুকরোটি ব্যবহারকারী-স্পেসে স্থানান্তরিত করার ক্ষমতা রাখে। ভিস্টায় গ্রাফিক্স সিস্টেমের সাহায্যে তারা এটি করেছে: এনটি 4.0 এর পরে কার্নেল-স্পেস থাকার পরে এটি এখন ব্যবহারকারী-স্পেসে রয়েছে
জ্যান লিনেক্স

2
@ জ্যান: আমি "হাইব্রিড কার্নেল" হিসাবে মর্যাদাকে বিতর্কিত করেছিলাম বলে আমার ধারণা ছিল । অতএব আমি বললাম "একঘেয়ে" এনটি-তে অবশ্যই একচেটিয়া বৈশিষ্ট্য রয়েছে যদিও এটি গ্রন্থাগার-এস্কো টুকরোতে বিভক্ত হয়।
বিলি ওনিল

@ বিলি: এটি আমার কাছে মনে হয়েছে যে যদি আপনার কার্নেলটি কেবল কয়েকটি বিকল্প পরিবর্তন করে এবং পুনর্নির্মাণের মাধ্যমে মাইক্রো কার্নেল হিসাবে রূপান্তরিত করা যায়, তবে এটি বেশিরভাগ ক্ষেত্রে ব্যবহৃত বাইনারি বিল্ডগুলি কার্নেলের ঠিকানার জায়গায় সমস্ত কিছু রাখে এমনকী এটি মনোলিথিক ছাড়াও অন্য কিছু।
জ্যান লিংস

উত্তর:


31

যদিও খোলামেলাতা অবশ্যই এটির একটি অংশ, আমি মনে করি মূল কারণটি লিনাস টরভাল্ডের অবিরত জেদ হ'ল যতক্ষণ না এটি ভালভাবে সম্পন্ন হয় ততক্ষণ লিনাক্স কর্নেলের মূল কাজটি একটি প্রধান স্থান রয়েছে in যদি তিনি কোনও স্থানে কোনও লাইন আঁকতে এবং "ঠিক আছে, সেই অভিনব সুপার কম্পিউটারের হার্ডওয়্যারটির জন্য আমাদের একটি কাঁটাচামচ প্রয়োজন" বলে সিদ্ধান্ত নিয়েছিলেন, তবে সম্পূর্ণ পৃথকভাবে উচ্চ-প্রান্ত এবং ছোট-সিস্টেমের রূপগুলি বিকাশ করতে পারে। যেমনটি হ'ল, পরিবর্তে লোকেরা এগুলিকে তুলনামূলকভাবে ভাল করে তোলার জন্য কঠোর কাজ করেছে।

এবং, এমন কাদামাটিগুলি যা অন্যগুলির ক্ষতির দিকে এক দিককে সক্ষম করে, সাধারণত - এগুলিকে অনুমতি দেওয়া হয় না - আবার মানুষকে আরও শক্ত কিন্তু আরও সঠিক উপায়ে সমাধান করতে বাধ্য করে, যা সাধারণত এখান থেকে এগিয়ে যাওয়া সহজ হয় to একবারে যা প্রয়োজন তা ক্লডজ একটি historicalতিহাসিক পাদটীকা হয়ে যায়।

বেশ কয়েক বছর আগে একটি সাক্ষাত্কার থেকে :

প্রশ্ন: লিনাক্স একটি বহুমুখী সিস্টেম। এটি পিসি, বিশাল সার্ভার, মোবাইল এবং দশ বা আরও দশটি ডিভাইস সরবরাহ করে। আপনার সুবিধাপ্রাপ্ত অবস্থান থেকে, কোন সেক্টরটি এমন এক হবে যেখানে লিনাক্স সর্বোচ্চ সম্ভাবনা প্রকাশ করবে?

উত্তর: আমার মনে হয় লিনাক্সের আসল শক্তি হ'ল এটি একটি কুলুঙ্গি নয়। প্রত্যেকেই খেলতে পায় এবং বিভিন্ন ব্যক্তি এবং বিভিন্ন সংস্থার কাছে তাদের পক্ষে কী গুরুত্বপূর্ণ তা নিয়ে সম্পূর্ণ আলাদা প্রেরণা এবং বিশ্বাস থাকে। সুতরাং আমি কোনও একটি বিশেষ ক্ষেত্রেও আগ্রহী নই।


18
এবং ছোট সিস্টেম এবং বিশাল সিস্টেমের সংজ্ঞাগুলি সর্বদা স্থানান্তরিত করে চলেছে, তাই এটি ভাল ক্লাদেজ এড়ানো হয়েছে। বহু বছর আগে স্মার্ট ফোনগুলি বহু বছর আগে করা সমস্ত সুপার কম্পিউটারের কাজ থেকে উপকৃত হতে পারে।
Zan Lynx

4

লিনাক্স বিভিন্ন ধরণের হার্ডওয়্যারকে স্কেল করে কারণ:

  • এটি খুব কনফিগারযোগ্য
  • উত্সটি অবাধে উপলভ্য, এবং সি সি সংকলক উপলব্ধ যে কোনও সিপিইউর জন্য তৈরি করা যেতে পারে
  • এম্বেডড ডিভাইস এবং মোবাইল ফোনে প্রসেসরের প্রাথমিক 386 মেশিনের তুলনায় কমপক্ষে একই স্তরের বা আরও বেশি শক্তি রয়েছে লিনাক্স বিকাশের কাজটি চালানো হয়েছিল এবং শক্তি অর্জন অবিরত রয়েছে
  • এটি একটি নেটওয়ার্ক ছাড়া কিছুই না, কিছুটা ডিস্ক বা ডিস্কের মতো ডিভাইস এবং সিরিয়াল বন্দর দিয়ে কাজ করে

ঠিক আছে, টার্গেট প্ল্যাটফর্মের জন্য কাউকে ন্যূনতম পরিমাণে বুটস্ট্র্যাপ কোড এবং সি রানটাইম লিখতে হবে। ওহ, এবং এটি ভার্চুয়াল মেমরি সমর্থন করতে হবে। তবে অন্যথায় সত্য :)
বিলি ওনিল

1
@ বিলি নামমু সিস্টেমে পোর্ট রয়েছে: ইউক্লিনাক্স, ইউকলিনাক্স / এআরএম, এবং মন্টাভিস্টা লিনাক্স।
টুবু

@ তোবু: হুম .. কিভাবে হতে পারে তা আমি বুঝতে পারি না। একাধিক প্রক্রিয়ার পুরো "ইউনিক্স দর্শন" ধারনাটি রয়েছে যে এর মতো forkকিছু সম্ভব, এবং forkভার্চুয়াল নন মেমরি সিস্টেমে যুক্তিসঙ্গত দক্ষতার সাথে করা যায় না। যদিও নির্দেশিত পোর্টগুলি সম্ভবত লিনাক্স কার্নেলের কিছু অংশ ব্যবহার করে এবং কিছু লিনাক্স সফ্টওয়্যার চালাতে পারে, বেশিরভাগ অংশে এটি প্রদর্শিত হয় যে এই পোর্টগুলির দ্বারা প্রকাশিত API গুলি সাধারণ লিনাক্স কার্নেলের চেয়ে পৃথক। (উদাহরণ: মেমরি ম্যাপিং - যা স্পষ্টতই ভার্চুয়াল মেমরির প্রয়োজন)
বিলি ওনিল

লিনাক্সজার্নাল / আর্টিকেল / 1478১৪ : বলেছেন যে ইউসিএলিনাক্স কাঁটাচামচ () সমর্থন করে না, তবে ভিফোর্ক () নামে একটি ব্লকিং ভেরিয়েন্ট, ইউসিএলিনাক্সের অধীনে অ্যাপ্লিকেশনগুলিকে ভিফোর্ক বা থ্রেড ব্যবহার করতে আবার লিখতে হবে।
লরেন্স

4

লিনাক্স কার্নেলটি ভালভাবে স্কেল করে কারণ এটি এটি। মূল কার্নেল তুলনামূলকভাবে ছোট এবং এটি করার প্রয়োজন যা করে। ডিভাইস ড্রাইভারগুলি alচ্ছিক এবং ছোট সিস্টেমে কার্নেলের বাইরে রেখে দেওয়া যায়। সর্বনিম্ন কার্নেলের প্রয়োজনীয়তার বাইরেও বেশিরভাগ কার্যকারিতা alচ্ছিক বৈশিষ্ট্য হিসাবে প্রয়োগ করা হয়।

বেশিরভাগ কার্নেলের পাশে ইনস্টল করা কনফিগারেশন ফাইলটি একবার দেখুন। এটিতে চালিত সমস্ত বৈশিষ্ট্য এবং সেইসাথে কোন ড্রাইভার সমর্থিত তা তালিকাভুক্ত করবে।

ড্রাইভারগুলি কার্নেলের মধ্যে এম্বেড করা বা লোডযোগ্য মডিউল হিসাবে সমর্থিত। এটি যে কার্নেলটি চলমান রয়েছে সেগুলিতে গতিসম্পন্নভাবে কনফিগার করার অনুমতি দেয়। এটি অনেক বিতরণ দ্বারা ব্যবহৃত পদ্ধতির।

সংকলনের সরঞ্জামগুলি ব্যতীত নতুন হার্ডওয়্যারের জন্য কার্নেল পরিবর্তন করা তুলনামূলক সহজ simple নতুন প্রসেসরের জন্য কেবলমাত্র সম্পর্কিত কোডটি বিদ্যমান কার্যকারিতাটির পরিবর্তন হিসাবে প্রয়োগ করতে হবে। নতুন ডিভাইসগুলিতে কেবল প্রাসঙ্গিক হুক সহ একটি নতুন ড্রাইভারের প্রয়োজন। নতুন ফাইল সিস্টেমগুলি একইভাবে অপেক্ষাকৃত তুচ্ছ পরিবর্তনগুলি।

বাহ্যিক কাঁটাচামচ না করে এই নমনীয়তাটি রাখতে কোড বেসটি ভালভাবে বজায় রাখা হয়েছে। শর্তসাপেক্ষ সংকলন একটি খুব নমনীয় কার্নেল ড্রাইভ করে যা যতটা সম্ভব ন্যূনতম রাখা হয়।


1

এই উত্তরের ব্যাক আপ করার জন্য আমার কাছে বিশদ প্রযুক্তিগত দক্ষতার অভাব রয়েছে, তবে আমার অভিজ্ঞতা থেকে জানা যায় যে আমি প্রায়শই ব্যবহার করা অন্যান্য অপারেটিং সিস্টেমের তুলনায় লিনাক্স ভালভাবে স্কেল করে (মূলত উইন্ডোজ)। সুতরাং সম্ভবত প্রশ্নটি হল কেন উইন্ডোজ লিনাক্সের পাশাপাশি স্কেল করে না।

যদি সেইভাবে পুনরায় প্রশ্নটি পুনঃস্থাপন করা আপনার পক্ষে কার্যকর হয় তবে আমি পরামর্শ দেব যে বাজারের বাহিনী মাইক্রোসফ্টকে সর্বশেষ এবং সর্বাধিক সক্ষম হার্ডওয়ারের তুলনায় বৈশিষ্ট্য এবং কার্যকারিতা যুক্ত করতে উত্সাহিত করবে, কারণ তারা যখন প্রাথমিকভাবে ব্যবহারকারীরা নতুন সিস্টেম কিনে তখন অপারেটিং সিস্টেমের আরও কপি বিক্রি করে । সুতরাং, সময়ে যে কোনও মুহুর্তে, আমি দেখতে পেয়েছি যে উইন্ডোজটির সর্বশেষ প্রকাশটি পুরানো, কম দক্ষ হার্ডওয়ারের উপর খারাপ অভিনয় করে।

যদি তা আপনার প্রশ্নের চেয়ে বেশি বোঝায় তবে আমাকে ক্ষমা করুন।


দেখে মনে হচ্ছে আপনি ওএস নিয়ে কথা বলছেন, যখন লোকটি কার্নেলের কথা বলছে। ঠিক আছে, যদি না আপনি উইন্ডোজ কার্নেলটি স্ফীত হয় তা নিশ্চিতভাবে না জানেন।
tshepang

@ শেপাপাং: সুবিচার করতে, প্রশ্নগুলি "লিনাক্স কার্নেল এবং / অথবা সিস্টেম" সম্পর্কে জিজ্ঞাসা করে। উইন্ডোজ 7 এবং উইন্ডোজ ফোন 7 কোনও কর্নেল ভাগ করে? আমি যে সামান্য পড়েছি তা বোঝায় যে তাদের কার্নেলগুলিতে উবুন্টু সার্ভার এবং অ্যান্ড্রয়েডের কার্নেলের চেয়ে কম কোড থাকতে পারে।
রেডগ্রিটিব্রিক

ধন্যবাদ, তবে প্রশ্নটি আসলে লিনাক্স সম্পর্কে ছিল এবং অন্য কোনও ওএস নয়। সেখানে আরও অনেকগুলি রয়েছেন: en.wikedia.org/wiki/List_of_operating_s সিস্টেমে
জাস্টিন এথিয়ের

এনটি কার্নেলটি আসলে খুব দক্ষ, তবে এটি চারপাশের স্তরগুলির বিশাল সংখ্যা যা তৈরি করে
LawrenceC
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.