কার্নেল কি একটি প্রক্রিয়া?


30
  1. লিনাক্সে আমরা সর্বদা প্রথম প্রক্রিয়াটি init(পিড == 1) বলি । তবে কেন কার্নেল (স্টার্টআপ) নয় যা সিস্টেম সেটআপ করে initপ্রক্রিয়া তৈরি করে । কার্নেল কি একটি প্রক্রিয়া?
  2. আমরা জানি যে সমস্ত ব্যবহারকারীর স্পেস থ্রেডগুলি আরম্ভ প্রক্রিয়াতে নিবিষ্ট। তাহলে মেমরি পরিচালনার মতো শিডিয়ুলার এবং অন্যান্য কার্নেল স্টাফগুলির কী হবে?

মূলত, যা আমাকে বিভ্রান্ত করে তা হ'ল কার্নেলের কাঠামো। যদি এটি একটি প্রক্রিয়া হয় তবে এটি কি একটি একক প্রক্রিয়া, বা এটি একাধিক প্রক্রিয়া নিয়ে গঠিত?

উত্তর:


19

ছোট উত্তর:

  1. না, এটি কোনও প্রক্রিয়া নয়
  2. ব্যবহারকারীর থ্রেডগুলি init এ মূল হয় না।

ইনিশ হ'ল প্রথম প্রক্রিয়া; এটি কোনও উপার্জন বা থ্রেড পরিচালনা করে না। এটি কার্নেল সিস্কলগুলি কাঁটাচামচ () এবং এক্সিকিউট ব্যবহার করে কিছু তৈরি করে।

আমি মনে করি একটি প্রক্রিয়া কী তা সম্পর্কে আপনার মনে জঞ্জাল ধারণা রয়েছে। এটি কেবল কোড প্রয়োগকারীকে কিছুটা বোঝায় না। হ্যাঁ, কার্নেল আরম্ভের আগে চালিত করে (এবং তার আগে বুট লোডার)। তবে একটি 'প্রক্রিয়া' এর একটি নির্দিষ্ট সংজ্ঞা রয়েছে:

  • ব্যবহারকারীর স্পেসে চলে
  • একটি প্রসেস আইডি দিয়ে চলছে
  • অনেকগুলি ইন্টারঅ্যাকশনগুলি কার্নেলের মধ্য দিয়ে যেতে হবে
  • সমস্ত সংস্থান কার্নেল থেকে আসা প্রয়োজন
  • কার্নেল দ্বারা নির্ধারিত হওয়া প্রয়োজন

সুতরাং, একবার কার্নেলটি আরম্ভ হয়ে গেলে এটি আরম্ভ করে, যা তার কনফিগারেশনটিতে যা বলে অন্য প্রক্রিয়াগুলিকে তৈরি করে।

যতক্ষণ না # 2 যায় ততক্ষণ কার্নেলের সমস্ত কর্নেল স্টাফ থাকে। কোডের একটি বৃহত অঞ্চল হিসাবে কার্নেলটিকে ভাবুন। আবার, কোনও প্রক্রিয়া নয়, একটি বৃহত কোড ব্লব। কার্নেলের অংশগুলি মেমরি পরিচালনার সাথে অংশীদার করে, এর কিছু অংশ নিজেই নির্ধারিত অংশগুলির সাথে (যেমন চালক ইত্যাদির) এবং এর অংশগুলি নির্ধারিত প্রক্রিয়াগুলির সাথে ডিল করে।


3
আমি ভাবছি ওপি যদি মাইক্রো কার্নেল দ্বারা তার মন ফুটিয়ে তুলতে যথেষ্ট জানে? আমি এটিকে আমার সম্পাদনাটি অন্তর্ভুক্ত করি নি কারণ আমি ভেবেছিলাম এটি যে কোনও হারে বিভ্রান্তিকর হবে।
new123456

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

15

কার্নেল আসলেই কোনও প্রক্রিয়াটির মতো আচরণ করে না। এটি নির্ধারিত হয় না, এটি হয় কোনও প্রক্রিয়ার পক্ষে চালিত হয় (তথাকথিত প্রক্রিয়া-প্রসঙ্গ বা ব্যবহারকারী-প্রসঙ্গে), বা বাধা বা ব্যতিক্রম (তথাকথিত বিঘ্নিত-প্রসঙ্গ) এর ফলস্বরূপ চলে।

এটি বলেছিল যে লিনাক্স কার্নেল কিছু কাজ সম্পাদন করতে, বা খুব দীর্ঘ সময়ের জন্য বাধা প্রসঙ্গে কিছু চালানো এড়াতে কর্নেল থ্রেড তৈরি করে (যেটি কিএসফটিআরকিডি থ্রেড করে, অত্যধিক বিলম্বকে এড়িয়ে যা উদাহরণস্বরূপ: অডিওকে বাদ দেওয়া, ...) ।

আপনি psকমান্ডের আউটপুটে কার্নেল থ্রেড দেখতে পাবেন । এগুলি সহজেই সনাক্ত করা যায়: তাদের নাম বন্ধনীগুলির মধ্যে। তাদের মধ্যে কয়েকটি সিপিইউতে একটি উদাহরণ চালায়, সিপিইউ একটি স্ল্যাশের পরে একটি সংখ্যার সাথে চিহ্নিত হয়, সুতরাং [ksoftirqd / 0] সিপিইউ 0-তে ksoftirqd এর উদাহরণ।


1

মাইক্রো-কার্নেলগুলিতে এমন ধারণা রয়েছে যেখানে কর্নেলের বিভিন্ন অংশগুলি প্রাথমিক প্রেরণাদির সাথে প্রক্রিয়াজাত হয় কেবল বেশিরভাগই কেবল আইপিসি পরিচালনা করে।

লিনাক্স - আরও ভাল বা খারাপ - কোনও মাইক্রো কার্নেল সিস্টেম নয়।


1

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

এটিকে বাদ দিয়ে, কার্নেল মূলত প্রক্রিয়াগুলির মধ্যে সম্পাদন করে / স্যুইচ করে। স্পষ্টতই এমন কিছু যা প্রকৃতপক্ষে প্রক্রিয়াগুলি চালায় সেগুলি নিজেই একটি প্রক্রিয়া হবে না।

(tl; dr। 1. না। কার্নেল / এর প্রসারণের অংশ)


0

নিনজালজ লিখেছেন: "কার্নেল আসলেই কোনও প্রক্রিয়ার মতো আচরণ করে না। এটি নির্ধারিত হয় না,"

ঠিক আছে, অলস প্রক্রিয়াটি রয়েছে (মূলত পিড 0, যদিও এটি কোথাও প্রদর্শিত হয় না) যা নির্ধারিত এবং সর্বদা চলমান অবস্থায় থাকে।


0

প্রসঙ্গ স্যুইচিং

❖ প্রসেসগুলি কার্নেল নামে পরিচিত ওএস কোডের ভাগ করা অংশ দ্বারা পরিচালিত হয়

▪ The kernel is not a separate process, but rather runs as part of a user process

Te প্রসঙ্গে সুইচ একটি প্রক্রিয়া থেকে অন্য প্রক্রিয়াতে নিয়ন্ত্রণ প্রবাহকে পাস করে এবং কার্নেল কোড ব্যবহার করে সম্পাদিত হয়

সূত্র: https://courses.cs.washington.edu/courses/cse351/19su/lectures/18/CSE351-L18-processes_19su.pdf , পৃষ্ঠা 36

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