কার্নেল (কম্পিউটার বিজ্ঞান): সংশোধিত সংস্করণের মধ্যে পার্থক্য

বিষয়বস্তু বিয়োগ হয়েছে বিষয়বস্তু যোগ হয়েছে
Baundulle shekhar (আলোচনা | অবদান)
কার্নেল
Baundulle shekhar-এর সম্পাদিত সংস্করণ হতে EmausBot-এর সম্পাদিত সর্বশেষ সংস্করণে ফেরত
৪ নং লাইন:
 
কার্ণেলের ডিজাইন ও প্রয়োগের ভিত্তিতে অপারেটিং সিস্টেমের কাজগুলো বিভিন্নভাবে সংগঠিত হয়। মনোলিথিক কার্ণেলগুলো যেখানে অপারেটিং সিস্টেমের কর্মক্ষমতা বৃদ্ধির জন্য অপারেটিং সিস্টেমের সকল কোড একই এড্রেস স্পেসে সম্পাদনা করে সেখানে মাইক্রোকার্ণেলগুলো বেশিরভাগ অপারেটিং সিস্টেমে সার্ভারের মত ইউজার স্পেসে কোডগুলো সম্পাদনা করে যাতে করে অপারেটিং সিস্টেমের নিয়ন্ত্রন ক্ষমতা এবং ভিন্নতা বাড়ানো যায়।
 
 
 
 
 
 
 
অন্য ব্যবহারের জন্য, কার্নেল ( দ্ব্যর্থতা নিরসন ) দেখুন.
 
 
একটি কার্নেল একটি কম্পিউটারের হার্ডওয়্যার থেকে অ্যাপ্লিকেশন সফ্টওয়্যার সংযোগ করে
কম্পিউটিং ইন, কার্নেল সফ্টওয়্যার থেকে ইনপুট / আউটপুট অনুরোধ পরিচালনা করে এবং সেন্ট্রাল প্রসেসিং ইউনিট এবং একটি কম্পিউটার অন্যান্য ইলেকট্রনিক উপাদান জন্য ডেটা প্রসেসিং নির্দেশাবলী সেগুলি অনূদিত করে একটি কম্পিউটার প্রোগ্রাম. কার্নেল একটি আধুনিক কম্পিউটারের অপারেটিং সিস্টেমের একটি মৌলিক অংশ. [1]
একটি কম্পিউটার প্রোগ্রাম (এই ক্ষেত্রে একটি প্রক্রিয়া বলা ) কার্নেল এর অনুরোধ করে তোলে , তখন অনুরোধে একটি সিস্টেম কল বলা হয়. বিভিন্ন কার্নেল ডিজাইন তারা সিস্টেম কল ( সময় ভাগ ) এবং সম্পদ পরিচালনা কিভাবে পার্থক্য. উদাহরণস্বরূপ, একটি একশিলা কার্নেল সিস্টেমের কর্ম ক্ষমতায় উন্নতি একই ঠিকানা স্থান সব অপারেটিং সিস্টেম নির্দেশ executes . একটি microkernel [ 2 ] সুতরাং, বজায় রাখার সহজ অপারেটিং সিস্টেম আরো মডুলার করা এবং করতে , ব্যবহারকারী স্থান অপারেটিং সিস্টেম এর ব্যাকগ্রাউন্ড প্রসেস সবচেয়ে চালানো হয়. [3]
কম্পিউটার প্রোগ্রামারদের জন্য, কার্নেল এর ইন্টারফেস একটি নিম্ন স্তরের বিমূর্ততা স্তর.
সূচিপত্র [ চামড়া ]
1 কার্নেল মৌলিক সুবিধার
1.1 স্মৃতি ব্যবস্থাপনা
1.2 ডিভাইস ব্যবস্থাপনা
1.3 সিস্টেম কল
2 কার্নেল নকশা সিদ্ধান্ত
সুরক্ষার জন্য কার্নেল সমর্থন 2.1 সমস্যা
2.1.1 হার্ডওয়্যার ভিত্তিক সুরক্ষা বা ভাষা ভিত্তিক সুরক্ষা
2.2 প্রসেস সহযোগিতা
2.3 / আউটপুট ডিভাইস ব্যবস্থাপনা
3 কার্নেল ব্যাপী নকশা পন্থা
3.1 একশিলা কার্নেলের
3.2 Microkernels
Microkernels বনাম 3.3 একশিলা কার্নেলের
3.3.1 পারফরমেন্স
3.4 হাইব্রীড (বা ) মডুলার কার্নেলের
3.5 Nanokernels
3.6 Exokernels
কার্নেল উন্নয়নের 4 ইতিহাস
4.1 প্রারম্ভিক অপারেটিং সিস্টেমের কার্নেল
4.2 সময় ভাগ অপারেটিং সিস্টেম
4.3 আমিগা
4.4 ইউনিক্স
4.5 ম্যাক OS
4.6 মাইক্রোসফট উইন্ডোজ
Microkernels এর 4.7 ডেভেলপমেন্ট
5 আরও দেখুন
6 নোট
7 তথ্যসূত্র
8 আরও পড়ার
9 বহিঃসংযোগ
কার্নেল মৌলিক সুবিধা [সম্পাদনা]
 
. কার্নেল এর প্রধান ফাংশন কম্পিউটারের হার্ডওয়্যার এবং সম্পদ ও পরিচালনা করুন এবং এই সম্পদের চালানো এবং ব্যবহার অন্যান্য প্রোগ্রামের অনুমতি দিতে হয় [1] সাধারণত, সম্পদ দ্বারা গঠিত :
সেন্ট্রাল প্রসেসিং ইউনিট . এই প্রোগ্রাম চালানো বা নির্বাহ করার জন্য দায়ী একটি কম্পিউটার সিস্টেমের সবচেয়ে কেন্দ্রিয় অংশ , হয় . কার্নেল ( যা প্রতিটি সাধারণত একটি সময়ে শুধুমাত্র একটি প্রোগ্রাম চালাতে পারেন ) প্রসেসর বা প্রসেসরের জন্য বরাদ্দ করা উচিত অনেক চলমান প্রোগ্রাম যা যে কোনো সময়ে সিদ্ধান্ত নেওয়ার জন্য দায়িত্ব নেয়
কম্পিউটার এর মেমরি . স্মৃতি প্রোগ্রাম নির্দেশাবলী এবং তথ্য উভয় সংরক্ষণ করতে ব্যবহৃত হয়. সাধারণত, উভয় চালানো একটি প্রোগ্রামের জন্য যাতে মেমরি উপস্থিত হতে হবে. প্রায়শই একাধিক প্রোগ্রাম প্রায়ই কম্পিউটারে উপলব্ধ আছে বেশী মেমরি দাবি , মেমরি অ্যাক্সেস চান. কার্নেল প্রতিটি প্রক্রিয়া ব্যবহার করতে পারেন যা মেমরির সিদ্ধান্ত , এবং না যথেষ্ট উপলব্ধ হলে কি করতে হবে তা নির্ধারণের জন্য দায়ী.
কোনো ইনপুট / আউটপুট ধরনের কীবোর্ড হিসাবে কম্পিউটার, উপস্থিত ( ইনপুট / আউটপুট ) ডিভাইস, মাউস, ডিস্ক ড্রাইভ , ইউএসবি ডিভাইস, প্রিন্টার, প্রদর্শন, নেটওয়ার্ক অ্যাডাপ্টার , ইত্যাদি কার্নেল একটি উপযুক্ত করতে ইনপুট / আউটপুট সঞ্চালন অ্যাপ্লিকেশন থেকে অনুরোধ বরাদ্দ ডিভাইস (একটি প্রদর্শন একটি ডিস্ক বা উইন্ডোজ ফাইল ক্ষেত্রে একটি ডিভাইস বা উপধারা , ) এবং (সাধারণত আবেদন ডিভাইস বাস্তবায়ন বিবরণ জানতে হবে না বিন্দু যেখানে আনমনা ) ডিভাইস ব্যবহারের জন্য সুবিধাজনক পদ্ধতি প্রদান করে .
সম্পদ ব্যবস্থাপনায় প্রয়োজনীয় বিশেষ বিশেষ দিক একটি মৃত্যুদন্ড ডোমেইন (ঠিকানা স্থান ) সংজ্ঞা এবং একটি ডোমেইনের মধ্যে সম্পদ ব্যবহারের মধ্যস্থতা করতে ব্যবহৃত সুরক্ষা প্রক্রিয়া . [1]
কার্নেলের এছাড়াও সাধারণত সুসংগতি এবং আন্ত প্রক্রিয়ার যোগাযোগ ( IPC ) নামক প্রসেসের মধ্যে যোগাযোগ জন্য পদ্ধতি প্রদান .
এই ক্ষেত্রে এটি প্রসেস একে অপরের দ্বারা উপলব্ধ সুবিধা অ্যাক্সেস করতে অনুমতি IPC কিছু অর্থ প্রদান করা আবশ্যক , যদিও একটি কার্নেল , এই বৈশিষ্ট্য নিজেই বাস্তবায়ন , অথবা এটি অন্যান্য প্রসেস করার সুবিধা প্রদান করে সঞ্চালিত প্রসেস কিছু নির্ভর করতে পারেন.
অবশেষে, একটি কার্নেল এই সুবিধা অ্যাক্সেস করতে অনুরোধ করা একটি পদ্ধতি সঙ্গে চলমান প্রোগ্রাম প্রদান আবশ্যক.
স্মৃতি ব্যবস্থাপনা [সম্পাদনা]
কার্নেল সিস্টেম এর মেমরি পূর্ণ প্রবেশাধিকার আছে এবং তারা এটি প্রয়োজন হিসাবে প্রসেস নিরাপদে এই মেমরি অ্যাক্সেস করার অনুমতি প্রদান করা আবশ্যক . প্রায়শই এই করছেন প্রথম ধাপে সাধারণত পেজিং এবং / অথবা সেগমেন্টেশন দ্বারা অর্জন , অ্যাড্রেসিং ভার্চুয়াল হয় . ভার্চুয়াল অ্যাড্রেসিং কার্নেল একটি প্রদত্ত প্রকৃত ঠিকানা অন্য ঠিকানা , ভার্চুয়াল ঠিকানা প্রদর্শিত করতে পারবেন. ভার্চুয়াল ঠিকানা শূণ্যস্থান বিভিন্ন প্রসেসের জন্য আলাদা হতে পারে; এক প্রক্রিয়া একটি নির্দিষ্ট ( ভার্চুয়াল ) ঠিকানায় ব্যবহারের যে মেমরি অন্য প্রক্রিয়া একই ঠিকানায় ব্যবহারের কি থেকে বিভিন্ন মেমরি হতে পারে. এই এটা ( সরাইয়া কার্নেল থেকে ) চলমান শুধুমাত্র এক এবং এইভাবে একে অপরের বিপর্যয় থেকে অ্যাপ্লিকেশন বাধা হিসাবে যদি প্রতি প্রোগ্রাম আচরণ করা যাবে. [4]
অনেক সিস্টেমে, একটি প্রোগ্রাম এর ভার্চুয়াল ঠিকানা মেমরির মধ্যে বর্তমানে নয় যা তথ্য উল্লেখ করতে পারে . অ্যাড্রেসিং ভার্চুয়াল দ্বারা উপলব্ধ অপ্রত্যক্ষ্যতার লেয়ার অপারেটিং সিস্টেম অন্যথায় প্রধান মেমরি (RAM ) থাকা হবে কি সংরক্ষণ করতে , একটি হার্ড ড্রাইভ মত , অন্যান্য তথ্য সঞ্চয় ব্যবহার করতে পারবেন. এর ফলে, অপারেটিং সিস্টেম প্রোগ্রাম সিস্টেম শারীরিকভাবে নেওয়া হয়েছে বেশী মেমরি ব্যবহার করার অনুমতি দিতে পারেন. একটি প্রোগ্রাম উপস্থিত RAM-র মধ্যে বর্তমানে নয় যা তথ্য প্রয়োজন হলে, এই ঘটেছে করেনি , এবং কার্নেল ( প্রয়োজন হলে ) ডিস্কের মধ্যে একটি নিষ্ক্রিয় মেমরি ব্লক বিষয়বস্তু লেখার এবং অনুরোধ তথ্য দিয়ে প্রতিস্থাপন করে সাড়া যে কার্নেল থেকে CPU-র সংকেত প্রোগ্রাম . প্রোগ্রাম তারপর এটি থামিয়ে যেখানে বিন্দু থেকে পুনরায় শুরু করা যেতে পারে. এই প্রকল্প সাধারণত চাহিদা পেজিং হিসাবে পরিচিত হয়.
অ্যাড্রেসিং ভার্চুয়াল এছাড়াও পারবেন দুই অসংলগ্ন এলাকাসমূহ, কার্নেল ( কার্নেল স্থান ) এবং অ্যাপ্লিকেশন ( ব্যবহারকারীর স্থান ) জন্য অন্যান্য জন্য সংরক্ষিত হচ্ছে একটিতে মেমরি ভার্চুয়াল পার্টিশন নির্মাণ . অ্যাপ্লিকেশন এইভাবে চলমান কার্নেলের ক্ষতি থেকে একটি আবেদন প্রতিরোধ কার্নেল মেমরি ঠিকানা প্রসেসর দ্বারা অনুমোদিত না হয় . কিছু গবেষণা কার্নেলের (যেমন একতা ) অন্যান্য পন্থা নিতে , যদিও মেমরি স্থান এই মৌলিক বিভাজন , প্রকৃত সাধারণ উদ্দেশ্য কার্নেলের বর্তমান ডিজাইন করার অনেক অবদান এবং এই ধরনের সিস্টেমের মধ্যে প্রায় সার্বজনীন হয়েছে .
ডিভাইস ব্যবস্থাপনা [সম্পাদনা]
দরকারী ফাংশন সম্পাদন করতে, প্রসেস ডিভাইস ড্রাইভার মাধ্যমে কার্নেল দ্বারা নিয়ন্ত্রণ করা হয়, যা কম্পিউটার, সংযুক্ত যন্ত্রানুষঙ্গ অ্যাক্সেস প্রয়োজন. একটি ডিভাইস ড্রাইভার একটি হার্ডওয়্যার ডিভাইসের সাথে যোগাযোগ করার জন্য অপারেটিং সিস্টেম সক্ষম এমন একটি কম্পিউটার প্রোগ্রাম. এটি নিয়ন্ত্রণ এবং হার্ডওয়্যার নির্দিষ্ট স্থানের সাথে যোগাযোগের জন্য কিভাবে তথ্য দিয়ে অপারেটিং সিস্টেম উপলব্ধ করা হয়. ড্রাইভার একটি প্রোগ্রাম অ্যাপ্লিকেশনে একটি গুরুত্বপূর্ণ এবং অত্যাবশ্যক টুকরা. ড্রাইভার নকশা লক্ষ্য বিমূর্ততা হয় ; ড্রাইভারের ফাংশন ডিভাইস নির্দিষ্ট কল মধ্যে ওএস্ - বাধ্যতামূলক ফাংশন কল ( প্রোগ্রামিং কল ) অনুবাদ করতে হয় . তত্ত্ব, ডিভাইসটি উপযুক্ত ড্রাইভারের সাথে সঠিকভাবে কাজ করা উচিত. ডিভাইস ড্রাইভার ভিডিও কার্ড, সাউন্ড কার্ড, প্রিন্টার, স্ক্যানার , মোডেম , এবং ল্যান কার্ড বিষয়গুলো জন্য ব্যবহার করা হয়. ডিভাইস ড্রাইভার বিমূর্ততা সাধারণ মাত্রা হল:
1 . হার্ডওয়্যার দিকে :
সরাসরি পোশাকের .
একটি উচ্চ পর্যায়ের ইন্টারফেস ( ভিডিও BIOS- ) ব্যবহার করে .
একটি নিম্ন স্তরের ডিভাইস ড্রাইভার ( ডিস্ক ড্রাইভার ব্যবহার করে ফাইলটি ড্রাইভার ) ব্যবহার করে .
সম্পূর্ণরূপে ভিন্ন কিছু করছেন যখন , হার্ডওয়্যার সঙ্গে কাজ simulating .
2. সফটওয়্যার দিকে :
হার্ডওয়্যার রিসোর্স অপারেটিং সিস্টেম সরাসরি প্রবেশাধিকার অনুমতি .
শুধুমাত্র প্রিমিটিভের প্রবর্তনকারী .
অ ড্রাইভার সফ্টওয়্যার ( : TWAIN উদাহরণ ) জন্য একটি ইন্টারফেস প্রবর্তনকারী .
একটি ভাষা , কখনও কখনও উচ্চ পর্যায়ের ( উদাহরণ পোস্টস্ক্রিপ্ট ) প্রবর্তনকারী .
উদাহরণস্বরূপ, পর্দায় ব্যবহারকারী কিছু দেখাতে , একটি অ্যাপ্লিকেশন আসলে চরিত্র / পিক্সেল অঙ্কন জন্য তাহলে দায়ী যা তার ডিসপ্লে ড্রাইভার, করতে অনুরোধ ফরওয়ার্ড হবে , কার্নেল একটি অনুরোধ করতে হবে . [4]
একটি কার্নেল উপলব্ধ ডিভাইসের একটি তালিকা বজায় রাখা আবশ্যক . এই তালিকা অথবা দ্বারা সনাক্ত (আরও পুরনো পিসি এবং ব্যক্তিগত ব্যবহারের জন্য নির্মিত না হয় সিস্টেমে সাধারণত ) ব্যবহারকারী দ্বারা কনফিগার করা , ( উপলব্ধ হার্ডওয়ার পরিবর্তন যদি কার্নেল পুনর্লিখিত করা হবে যেখানে একটি এমবেডেড সিস্টেমের মধ্যে যেমন ) অগ্রিম পরিচিত হতে পারে চালানোর সময় এ অপারেটিং সিস্টেম ( সাধারণত প্লাগ এবং খেলা বলা হয়) . একটি প্লাগ এবং সিস্টেম খেলতে , একটি ডিভাইস ম্যানেজার প্রথম উপযুক্ত ড্রাইভারের জন্য অনুসন্ধান করে , তারপর ইনস্টল ডিভাইস সনাক্ত করতে , যেমন পেরিফেরাল কম্পোনেন্ট Interconnect ( PCI ) বা ইউনিভার্সাল সিরিয়াল বাস ( ইউএসবি ) হিসাবে , বিভিন্ন হার্ডওয়্যার বাস একটি স্ক্যান সঞ্চালিত হবে.
ডিভাইস ব্যবস্থাপনা একটি খুব ওএস্ নির্দিষ্ট বিষয় হিসাবে, এই ড্রাইভার কার্নেল ডিজাইন প্রতিটি ধরনের দ্বারা ভিন্নভাবে পরিচালনা করা হয় , কিন্তু প্রতি ক্ষেত্রে, কার্নেল ড্রাইভার শারীরিকভাবে কিছু পোর্ট অথবা মেমরি মাধ্যমে তাদের ডিভাইসের অ্যাক্সেস করতে অনুমতি / আউটপুট প্রদান করতে হবে অবস্থান . অত্যন্ত গুরুত্বপূর্ণ সিদ্ধান্ত কিছু নকশার হিসাবে , ডিভাইস ম্যানেজমেন্ট সিস্টেম নকশা যখন তৈরি করা আছে খুবই CPU-র নিবিড় অপারেশন তৈরীর এবং সহজে একটি উল্লেখযোগ্য পারফরম্যান্স মাথার উপরে , যার ফলে কনটেক্সট সুইচ থাকতে পারে ব্যবহারের. [তলব প্রয়োজন]
সিস্টেম কল [সম্পাদনা]
কম্পিউটিং , একটি সিস্টেম কল একটি প্রোগ্রাম এটি সাধারণত চালানোর অনুমতি নেই যে একটি অপারেটিং সিস্টেম এর কার্নেল থেকে একটি সেবা অনুরোধ না. সিস্টেম কল একটি প্রক্রিয়া এবং অপারেটিং সিস্টেমের মধ্যে ইন্টারফেস প্রদান . সিস্টেমের সাথে আলাপচারিতার সর্বাধিক অপারেশন যেমন, একটি ব্যবহারকারী স্তর প্রক্রিয়া করার অনুমতি পাওয়া যায় না প্রয়োজন ইনপুট / আউটপুট সিস্টেম , বা অন্যান্য প্রসেসের সাথে যোগাযোগের কোন ফর্ম উপস্থিত একটি ডিভাইসের সাথে সঞ্চালিত সিস্টেম কল ব্যবহার করা আবশ্যক .
একটি সিস্টেম কল অপারেটিং সিস্টেম থেকে একটি সেবা অনুরোধ করতে অ্যাপ্লিকেশান প্রোগ্রাম দ্বারা ব্যবহার করা হয় যে একটি প্রক্রিয়া. তারা প্রসেসর মোড পরিবর্তন ঘটায় এমন একটি মেশিন কোড নির্দেশ ব্যবহার. একটি উদাহরণ সুপারভাইজার মোড থেকে রক্ষা মোড হবে. অপারেটিং সিস্টেমের হার্ডওয়্যার ডিভাইস বা মেমরি ম্যানেজমেন্ট ইউনিট অ্যাক্সেস মত কর্ম সঞ্চালিত হবে এই যেখানে . সাধারণত অপারেটিং সিস্টেম অপারেটিং সিস্টেম এবং স্বাভাবিক প্রোগ্রামের মধ্যে sits একটি লাইব্রেরি উপলব্ধ করা হয়. সাধারণত এটা যেমন glibc বা উইন্ডোজ এপিআই হিসেবে একটি সি লাইব্রেরি. গ্রন্থাগারের কার্নেল তথ্য ক্ষণস্থায়ী এবং সুপারভাইজার মোড সুইচিং এর নিম্নস্তরের বিবরণ পরিচালনা. সিস্টেম কল অপেক্ষা করুন এবং লিখুন , বন্ধ খোলা , পড়া অন্তর্ভুক্ত.
আসলে দরকারী কাজ সম্পাদন করার জন্য একটি প্রক্রিয়া কার্নেল দ্বারা উপলব্ধ পরিষেবা অ্যাক্সেস করতে সক্ষম হতে হবে. এই প্রতিটি কার্নেল দ্বারা ভিন্নভাবে প্রয়োগ , কিন্তু অধিকাংশ একটি সি লাইব্রেরী বা ঘুরে সম্পর্কিত কার্নেল ফাংশন নিয়ে আসে , যা একটি এপিআই , প্রদান করা হয়. [5]
কার্নেল ফাংশন invoking পদ্ধতি কার্নেল থেকে কার্নেলের সাথে পরিবর্তিত হয়. মেমরি বিচ্ছিন্নতা ব্যবহারে যদি যে প্রসেসর এর এক্সেস কন্ট্রোল নিয়ম লঙ্ঘন হবে , কারণ এটা সরাসরি কার্নেল ফোন করতে একটি ব্যবহারকারী প্রক্রিয়ার জন্য অসম্ভব. কয়েকটি সম্ভাবনার হল:
একটি সফ্টওয়্যার - কৃত্রিম ইন্টারাপ্ট ব্যবহার করে . এই পদ্ধতি সবচেয়ে হার্ডওয়্যার পাওয়া যায় , এবং সেইজন্য খুব সাধারণ.
একটি কল গেট ব্যবহার . একটি কল গেট প্রসেসর পরিচিত একটি অবস্থানে কার্নেল মেমরি একটি তালিকা মধ্যে কার্নেল দ্বারা সংরক্ষিত একটি বিশেষ ঠিকানা. প্রসেসর যে ঠিকানায় একটি কল সনাক্ত করা হলে, পরিবর্তে একটি এক্সেস লঙ্ঘন ঘটাচ্ছে ছাড়া টার্গেটের অবস্থান থেকে পুননির্দেশনা . এই হার্ডওয়্যার সমর্থন প্রয়োজন, কিন্তু এটি জন্য হার্ডওয়্যার বেশ সাধারণ.
একটি বিশেষ সিস্টেম কল নির্দেশ ব্যবহার . এই পদ্ধতিতে সাধারণ আর্কিটেকচার ( এর মধ্যে উল্লেখযোগ্য হল , এক্স 86 ) অভাব হতে পারে , যা বিশেষ হার্ডওয়্যার সমর্থন, প্রয়োজন. সিস্টেম কল নির্দেশাবলী তবে, এক্স 86 প্রসেসর সাম্প্রতিক মডেলের যোগ করা হয়েছে , এবং উপলব্ধ যখন পিসি জন্য কিছু অপারেটিং সিস্টেমের তাদের ব্যবহার করতে.
একটি মেমরি ভিত্তিক কিউ ব্যবহার করে . অনুরোধ বৃহৎ সংখ্যক তোলে কিন্তু প্রতিটি ফলাফলের জন্য অপেক্ষা করার দরকার হয় না যে একটি আবেদন কার্নেল পর্যায়ক্রমে অনুরোধ খুঁজে স্ক্যান যে মেমরি একটি অঞ্চল থেকে অনুরোধের বিবরণ যোগ করতে পারেন.
কার্নেল নকশা সিদ্ধান্ত [সম্পাদনা]
 
সুরক্ষার জন্য কার্নেল সমর্থন সমস্যা [সম্পাদনা]
একটি কার্নেল নকশা একটি গুরুত্বপূর্ণ বিবেচনা এটি ফল্ট ( ফল্ট সহনশীলতা ) থেকে রক্ষার জন্য ও বিদ্বেষপূর্ণ আচরণ ( নিরাপত্তা ) থেকে উপলব্ধ সমর্থন করে. এই দুটি দিক সাধারণত পরিষ্কারভাবে আলাদা করা হয় না , এবং কার্নেল নকশা এই পার্থক্য গ্রহণ সুরক্ষার জন্য একটি হায়ারারকিকাল কাঠামো প্রত্যাখ্যান বাড়ে. [1]
(তারা সন্তুষ্ট সুরক্ষা নীতি অনুসারে ; অগ্রক্রয়াধিকার - সংক্রান্ত বা পোস্ট সনাক্তকরণ ; স্ট্যাটিক ( কম্পাইল সময়ে প্রয়োগ ) বা ( রান সময়ে প্রয়োগ ) গতিশীল : কার্নেল দ্বারা উপলব্ধ মেকানিজম বা নীতি সহ বেশ কিছু মানদণ্ড অনুযায়ী শ্রেণীবদ্ধ করা যায় অর্থাত্ Denning [6] [7] ); তারা হার্ডওয়্যার সমর্থিত বা ভাষা ভিত্তিক কিনা ; তারা আরো একটি খোলা প্রক্রিয়া বা একটি বাঁধাই নীতি কিনা ; এবং আরো অনেক .
হায়ারারকিকাল সুরক্ষা ডোমেইন জন্য সমর্থন [8] সাধারণত যে CPU-র মোড রয়েছে. ক্ষমতা হার্ডওয়্যার সমর্থন উপলব্ধ করার একটি কার্যকরী ও সহজ উপায় MMU প্রতি মেমোরি এক্সেস , ক্ষমতা ভিত্তিক অ্যাড্রেসিং নামক কোনো প্রক্রিয়া জন্য এক্সেস - অধিকার চেক দায়িত্ব অর্পণ করা হয়. [9] অধিকাংশ বাণিজ্যিক কম্পিউটার আর্কিটেকচার ক্ষমতা জন্য MMU সমর্থনের অভাব. একটি বিকল্প পদ্ধতির সাধারণত সমর্থিত হায়ারারকিকাল ডোমেইন ব্যবহার করে ক্ষমতা অনুকরণ হয় ; এই পদ্ধতির মধ্যে , প্রতিটি সুরক্ষিত বস্তু অ্যাপ্লিকেশন অ্যাক্সেস নেই যে একটি ঠিকানা স্থান রক্ষিত হবে; কার্নেল যেমন মেমরি ক্ষমতা একটি তালিকা রক্ষণাবেক্ষণ করে. একটি অ্যাপ্লিকেশন একটি ক্ষমতা দ্বারা সুরক্ষিত একটি বস্তু অ্যাক্সেস প্রয়োজন , এটি একটি সিস্টেম কল সঞ্চালিত হবে এবং কার্নেল এটি জন্য এক্সেস সঞ্চালিত হবে. ঠিকানা স্থান সুইচিং কর্মক্ষমতা খরচ বস্তুর মধ্যে জটিল পারস্পরিক ক্রিয়ার সঙ্গে সিস্টেমের মধ্যে এই পদ্ধতির বাস্তবতা সীমিত , কিন্তু এটি প্রায়ই ব্যবহার করা হয় না বা দ্রুত সঞ্চালন প্রত্যাশিত নয় এমন বস্তুর জন্য বর্তমান অপারেটিং সিস্টেম ব্যবহার করা হয়. [10] [11 সুরক্ষা ব্যবস্থা ফার্মওয়্যার সমর্থিত কিন্তু না যেখানে ] পন্থা পরিবর্তে (যেমন সরাসরি সমর্থন নেই যে হার্ডওয়্যার নেভিগেশন পাতা সারণী সাধিত দ্বারা ক্ষমতা simulating ) উচ্চতর পর্যায়ে কৃত্রিম , সম্ভব , কিন্তু কর্মক্ষমতা প্রভাব আছে. [12] হার্ডওয়্যার সমর্থনের অভাব ভাষা ভিত্তিক সুরক্ষা ব্যবহার করতে পছন্দ করে নিন যে সিস্টেমের জন্য , তবে, একটি বিষয় নাও হতে পারে. [13]
একটি গুরুত্বপূর্ণ কার্নেল নকশা সিদ্ধান্ত নিরাপত্তা প্রক্রিয়া এবং নীতি প্রয়োগ করা উচিত যেখানে বিমূর্ততা মাত্রা পছন্দ. কার্নেল নিরাপত্তা মেকানিজম [9] . উচ্চতর পর্যায়ে নিরাপত্তা সমর্থনকারী একটি গুরুত্বপূর্ণ ভূমিকা পালন করে [14] [15] [16] [17]
এক পদ্ধতির ফার্মওয়্যার এবং ফল্ট সহনশীলতা জন্য কার্নেল সমর্থন ( উপরে দেখুন) ব্যবহার, এবং কম্পাইলার কিছু দায়িত্ব delegating , ( যেমন যেখানে প্রয়োজন ক্রিপ্টোগ্রাফি মেকানিজম হিসাবে বৈশিষ্ট্য যুক্ত ) যে উপরে বিদ্বেষপূর্ণ আচরণের জন্য নিরাপত্তা নীতিমালা নির্মাণ হয়. কম্পাইলার এবং / অথবা অ্যাপ্লিকেশনের স্তরে নিরাপত্তা নীতির প্রতিনিধি প্রয়োগকারী প্রায়ই ভাষা ভিত্তিক সিকিউরিটি বলা হয় যে পন্থা .
বর্তমান মূলধারার অপারেটিং সিস্টেম এ অনেকগুলি জটিল সুরক্ষা প্রক্রিয়া অভাব আবেদন বিমূর্ততা পর্যায়ে পর্যাপ্ত নিরাপত্তা নীতিমালা বাস্তবায়ন impedes . [14] বস্তুত, কম্পিউটার নিরাপত্তার মধ্যে একটি সাধারণ ভুল ধারণা কোনো নিরাপত্তা নীতি নির্বিশেষে একটি অ্যাপ্লিকেশন প্রয়োগ করা সম্ভব নয় কার্নেল সমর্থন. [14]
হার্ডওয়্যার ভিত্তিক সুরক্ষা বা ভাষা ভিত্তিক সুরক্ষা [সম্পাদনা]
বৈশিষ্টসূচক কম্পিউটার সিস্টেম আজ প্রোগ্রাম কি তথ্য অ্যাক্সেস করতে অনুমতি দেওয়া হয় সে সম্পর্কে হার্ডওয়্যার জারি নিয়ম ব্যবহার. প্রসেসর মৃত্যুদন্ড নিরীক্ষণ করা হয় ও একটি নিয়ম (যেমন, পড়তে বা মেমরি kernel লিখতে সম্পর্কে যে একটি ব্যবহারকারী প্রক্রিয়া , ইত্যাদি ) লঙ্ঘন করে একটি প্রোগ্রাম স্টপ. ক্ষমতা জন্য সমর্থন অভাব যে সিস্টেমের মধ্যে, প্রসেস পৃথক ঠিকানা স্পেস ব্যবহার করে একে অপরের থেকে বিচ্ছিন্ন করা হয়. [18] উপরে বর্ণিত সিস্টেম কল একটি পদ্ধতির ব্যবহার করতে তাদের প্রয়োজন দ্বারা নিয়ন্ত্রিত হয় কার্নেল মধ্যে ব্যবহারকারীর প্রসেস থেকে কল .
একটি বিকল্প পদ্ধতির ভাষা ভিত্তিক সুরক্ষা ব্যবহার হয়. একটি ভাষা ভিত্তিক সুরক্ষা ব্যবস্থার মধ্যে, কার্নেল শুধুমাত্র কোড যে বিশ্বস্ত ভাষা কম্পাইলার দ্বারা উত্পাদিত হয়েছে নির্বাহ করার অনুমতি দেবে. ভাষা তারপর প্রোগ্রামার একটি নিরাপত্তা প্রয়োজন অমান্য করবে কিছু করতে এটি নির্দেশ করার জন্য এটা অসম্ভব যে ধরনের পরিকল্পনা করা যেতে পারে. [13]
এই পদ্ধতির সুবিধা হল:
পৃথক ঠিকানা শূণ্যস্থান জন্য প্রয়োজন নেই. ঠিকানা স্পেস মধ্যে পালটে যাওয়া মাথার উপরে প্রচুর উৎপন্নকারী একটি ধীর অপারেশন , এবং অপ্টিমাইজেশান কাজ অনেক বর্তমানে বর্তমান অপারেটিং সিস্টেমের মধ্যে অপ্রয়োজনীয় সুইচ রোধ করার জন্য সঞ্চালিত হয়. সব কোড নিরাপদে একই ঠিকানা জায়গায় কাজ করতে পারে হিসাবে পালটানোর , একটি ভাষা ভিত্তিক সুরক্ষা ব্যবস্থায় সম্পূর্ণ অপ্রয়োজনীয়.
নমনীয়তার . একটি প্রোগ্রামিং ভাষা মাধ্যমে প্রকাশ করা পরিকল্পিত করা যেতে পারে যে কোন সুরক্ষা প্রকল্প এই পদ্ধতি ব্যবহার করে প্রয়োগ করা যেতে পারে. (একটি ক্ষমতা ভিত্তিক এক একটি হায়ারারকিকাল সিস্টেম থেকে যেমন ) সুরক্ষা প্রকল্প সংক্রান্ত পরিবর্তন নতুন হার্ডওয়্যার প্রয়োজন বোধ করেন না .
অসুবিধেও মধ্যে রয়েছে:
আর আবেদনের সময় শুরু . তারা সঠিক কম্পাইলার দ্বারা কম্পাইল করা হয়েছে, বা সোর্স কোড থেকে বা বাইটকোড থেকে হয় recompiling প্রয়োজন হতে পারে তা নিশ্চিত করার জন্য শুরু হয় যখন অ্যাপ্লিকেশন দ্বারা যাচাই করা আবশ্যক.
অনমনীয় ধরনের সিস্টেম . প্রথাগত সিস্টেমে, অ্যাপ্লিকেশন ঘন ঘন নিরাপদ টাইপ করা হয় না যে অপারেশন সম্পাদন . এই ধরনের অপারেশন অ্যাপ্লিকেশন পুনরায় লেখা হবে এবং , কিছু ক্ষেত্রে, কর্মক্ষমতা হারাতে পারেন প্রয়োজন হতে পারে , যার মানে একটি ভাষা ভিত্তিক সুরক্ষা সিস্টেম, মধ্যে অনুমোদিত করা যাবে না.
ভাষা ভিত্তিক সুরক্ষা সঙ্গে সিস্টেমের উদাহরণ JX এবং মাইক্রোসফট এর একতা অন্তর্ভুক্ত.
প্রক্রিয়া সহযোগিতার [সম্পাদনা]
Edsger Dijkstra প্রমানিত যে একটি দৃশ্য লজিক্যাল বিন্দু, পারমাণবিক লক এবং বাইনারি Semaphores নেভিগেশন অপারেটিং অপারেশন প্রক্রিয়া সহযোগিতার কোনো কার্যকারিতা প্রকাশ করতে যথেষ্ট প্রিমিটিভের হয় আনলক. [19] তবে এই পদ্ধতির সাধারণত নিরাপত্তা এবং দক্ষতা শর্তাবলী উদাসীন হতে অনুষ্ঠিত হয় , থেকে পদ্ধতির ক্ষণস্থায়ী একটি বার্তা আরো নমনীয় , যেহেতু . [20] অন্যান্য পন্থা ( কম বা উচ্চ স্তরের ) একটি সংখ্যা অনেক আধুনিক কার্নেলের যেমন শেয়ার করা মেমরি এবং দূরবর্তী পদ্ধতি কল হিসাবে সিস্টেমের জন্য সমর্থন ব্যবস্থা উপলব্ধ সঙ্গে , যেমন পাওয়া যায়.
ইনপুট / আউটপুট ডিভাইস ব্যবস্থাপনা [সম্পাদনা]
একটি কার্নেল ধারণা যেখানে ইনপুট / আউটপুট সমান্তরাল সহ - অপারেটিং প্রক্রিয়া , প্রথম প্রস্তাব এবং Brinch হ্যানসেন দ্বারা বাস্তবায়িত হয় হিসাবে ডিভাইস, অন্যান্য প্রসেসের সাথে অবিশেষে পরিচালনা করা হয় (অনুরূপ ধারণা 1967 সালে প্রস্তাবিত হয় , যদিও [21] [22] ) . ইনপুট / আউটপুট ডিভাইস বহিরাগত প্রক্রিয়া বলা হয় , যখন এই হ্যানসেন এর বর্ণনা ইন, " সাধারণ " প্রসেস, অভ্যন্তরীণ প্রসেস বলা হয়. [20]
নিয়ামক পোর্ট এবং নিবন্ধনের , যার ফলে প্রকৃত মেমরি অনুরূপ অ্যাপ্লিকেশনের সরাসরি এক্সেস বিপর্যস্ত ঠিকঠাক , অথবা সিস্টেমের নিয়ামক হতে পারে. এই সঙ্গে, ডিভাইস জটিলতা উপর নির্ভর করে কয়েকটি ডিভাইসের প্রোগ্রাম আশ্চর্যজনক জটিল পেতে, এবং বিভিন্ন কন্ট্রোলার ব্যবহার করতে পারেন. এই কারণে, ডিভাইস পরিচালনার জন্য আরো একটি বিমূর্ত ইন্টারফেস প্রদান করে গুরুত্বপূর্ণ. এই ইন্টারফেস সাধারণত একটি ডিভাইস ড্রাইভার বা হার্ডওয়্যার Abstraction লেয়ার করা হয়. প্রায়শই , অ্যাপ্লিকেশন এই ধরনের ডিভাইসের অ্যাক্সেস করা প্রয়োজন. কার্নেল কিছু উপায় তাদের জন্য সিস্টেম অনুসন্ধান করে এই ডিভাইসের তালিকা বজায় রাখা আবশ্যক . এই BIOS-র মাধ্যমে , অথবা ( যেমন , PCI / PCIE , অথবা USB হিসেবে ) বিভিন্ন সিস্টেম বাস এক মাধ্যমে এটি করা যাবে . একটি অ্যাপ্লিকেশন ( যেমন একটি অক্ষর প্রদর্শন হিসাবে ) একটি ডিভাইসে একটি অপারেশন অনুরোধ করা হলে কার্নেল বর্তমান সক্রিয় ভিডিও ড্রাইভার এই অনুরোধ পাঠাতে হবে. ভিডিও ড্রাইভার, ঘুরে, এই অনুরোধ চালায় প্রয়োজন. এই আন্তঃ প্রসেস যোগাযোগ ( IPC ) এর একটি উদাহরণ.
কার্নেল ব্যাপী নকশা পন্থা [সম্পাদনা]
 
স্বাভাবিকভাবেই, উপরে তালিকাভুক্ত কর্ম এবং বৈশিষ্ট্য নকশা ও বাস্তবায়ন একে অপরের থেকে পৃথক যে নানাভাবে প্রদান করা যাবে.
প্রক্রিয়া ও নীতির বিচ্ছেদ নীতিকে মাইক্রো ও একশিলা কার্নেলের দর্শনের মধ্যে উল্লেখযোগ্য পার্থক্য. [23] [24] একটি নীতি একটি নির্দিষ্ট "মোড যখন এখানে একটি প্রক্রিয়া , বিভিন্ন নীতি বাস্তবায়ন পারবেন সমর্থন করে অপারেশন " . উদাহরণস্বরূপ, একটি প্রক্রিয়া অধিকার প্রদান করা হবে কিনা তা নির্ধারণ করার অনুমোদন সার্ভার কল ইউজার লগ ইন প্রচেষ্টা জন্য প্রদান করতে পারে ; অনুমোদন সার্ভার একটি পাসওয়ার্ড অনুরোধ এবং একটি ডাটাবেসের মধ্যে সংরক্ষিত একটি এনক্রিপ্ট করা পাসওয়ার্ড বিরুদ্ধে এটি পরীক্ষা করার জন্য একটি নীতি হতে পারে. প্রক্রিয়া জেনেরিক কারণ , নীতি আরও সহজে প্রক্রিয়া এবং নীতি একই মডিউল অন্তর্ভুক্ত করা হয়েছে কিনা চেয়ে ( একটি নিরাপত্তা টোকেন ব্যবহার প্রয়োজন দ্বারা যেমন ) পরিবর্তন করা যায়নি .
সংক্ষিপ্ত microkernel ইন না কিছু কিছু খুব মৌলিক নীতি, অন্তর্ভুক্ত , [24] এবং এর মেকানিজম মেমরি ব্যবস্থাপনা হিসাবে ( দত্তক গ্রহণ করা যা নীতি সিদ্ধান্ত ( অপারেটিং সিস্টেম এবং অন্যান্য অ্যাপ্লিকেশন অবশিষ্ট অংশ ) কার্নেল উপরে চালানো সম্ভব কি পারবেন হয় উচ্চ পর্যায়ের প্রক্রিয়া সিডিউলিং , ফাইল সিস্টেম ব্যবস্থাপনা , ইত্যাদি) . [1 ] [ 20 ] একটি একশিলা কার্নেল পরিবর্তে অতএব তাদের উপর নির্ভর করতে সিস্টেমের বাকি সীমাবদ্ধ , অনেক নীতি অন্তর্ভুক্ত থাকে.
প্রতি Brinch হ্যানসেন প্রক্রিয়া ও নীতির বিচ্ছেদ পক্ষে যুক্তি উপস্থাপন করেন. [1 ] [ 20] সঠিকভাবে এই বিচ্ছেদ পূরণ করার ব্যর্থতা বিদ্যমান অপারেটিং সিস্টেমের মধ্যে উল্লেখযোগ্য নতুনত্ব অভাবের প্রধান কারণ এক, [1] একটি সমস্যা সাধারণ কম্পিউটার আর্কিটেকচার মধ্যে [25] [26] [27] একশিলা নকশা " কার্নেল মোড" প্রচলিত বাণিজ্যিক সিস্টেমের খুবই সাধারণ বিষয় যা / " ইউজার মোড" ( টেকনিক্যালি হায়ারারকিকাল সুরক্ষা ডোমেইন বলা ) সুরক্ষা করার স্থাপত্য পদ্ধতির দ্বারা প্রবর্তিত হয় ; . [ 28] বস্তুত, প্রত্যেক মডিউল প্রয়োজন সুরক্ষা অতএব বিশেষ কার্নেলের মধ্যে অন্তর্ভুক্ত করা হয় [28] একশিলা নকশা এবং " তৈরী মোড" মধ্যে এই লিঙ্ক প্রক্রিয়া - নিতীমালা বিচ্ছেদ মূল সমস্যাটি reconducted করা যাবে; . [1] আসলে " প্রধান বিকল্প স্থাপত্য পদ্ধতির , সামর্থ্য ভিত্তিক অ্যাড্রেসিং , পরিষ্কারভাবে [1] ( সুরক্ষা এবং নিরাপত্তার বিচ্ছেদ দেখতে ) একটি microkernel নকশা থেকে স্বাভাবিকভাবেই নেতৃস্থানীয় , দুই মধ্যে আলাদা করে তৈরী মোড " স্থাপত্য পদ্ধতির , নিরাপত্তা নীতি সুরক্ষা প্রক্রিয়া একসাথে গলে .
একশিলা কার্নেলের একই ঠিকানা স্থান ( কার্নেল স্থান ) তাদের কোড সব চালানো যদিও microkernels codebase এর Maintainability এবং modularity উন্নত নিশানা , ব্যবহারকারী স্থান তাদের সেবা সবচেয়ে চালানোর চেষ্টা . [3] সবচেয়ে কার্নেলের মধ্যে ঠিক উপযুক্ত নয় এই শ্রেণীর , বরং এই দুটি ডিজাইন মধ্যে পাওয়া যায়. এই সংকর কার্নেলের বলা হয়. যেমন nanokernels এবং exokernels হিসাবে আরো বহিরাগত ডিজাইন পাওয়া যায় , কিন্তু কদাপি উত্পাদন সিস্টেমের জন্য ব্যবহার করা হয়. Xen হাইপারভাইসরের , উদাহরণস্বরূপ, একটি exokernel হয় .
একশিলা কার্নেলের [সম্পাদনা]
মূল নিবন্ধ: একশিলা কার্নেল
 
 
একটি একশিলা কার্নেল এর চিত্র
একটি একশিলা কার্নেলের মধ্যে, মূল কার্নেল থ্রেড বরাবর চালানো সব ওএস পরিষেবা, এইভাবে একই মেমরি এলাকায় বসবাস . এই পদ্ধতির সমৃদ্ধ এবং শক্তিশালী হার্ডওয়্যার সুবিধা উপলব্ধ করা হয় . যেমন ইউনিক্স্ ডেভেলপার কেন থম্পসন হিসাবে কিছু কিছু ডেভেলপার, , microkernels তুলনায় এটি " একটি একশিলা কার্নেল বাস্তবায়ন সহজ " যে [29] বজায় রাখা. একটি ডিভাইস ড্রাইভার একটি বাগ সম্পূর্ণ সিস্টেম ক্র্যাশ করতে পারে - - এবং বড় কার্নেলের বজায় রাখার জন্য খুব কঠিন হয়ে যাবে যে একশিলা কার্নেলের প্রধান অসুবিধেও সিস্টেম উপাদান মধ্যে নির্ভরতা রয়েছে.
ঐতিহ্যগতভাবে ইউনিক্স মত অপারেটিং সিস্টেমের দ্বারা ব্যবহৃত হয়েছে যা একশিলা কার্নেলের , , সব অপারেটিং সিস্টেমের কোর ফাংশন এবং ডিভাইস ড্রাইভার ( অপারেটিং সিস্টেম যেমন ডিস্ক ড্রাইভ , ভিডিও কার্ড এবং প্রিন্টার হিসাবে হার্ডওয়্যার ডিভাইস, সঙ্গে যোগাযোগ করার অনুমতি দেয় যে ছোট প্রোগ্রাম ) ধারণ . এই ইউনিক্স্ সিস্টেমের চিরাচরিত নকশা. একটি একশিলা কার্নেল প্রয়োজনীয় কোড সব প্রতি কার্নেল সংক্রান্ত কাজ ধারণকারী একটি প্রোগ্রাম. একটি লাইব্রেরি স্থাপন করা যাবে না , যা অধিকাংশ প্রোগ্রাম দ্বারা ব্যবহার করা হয় যার প্রতিটি অংশ কার্নেল স্পেসের মধ্যে : ডিভাইস ড্রাইভার, নির্ধারণকারী , মেমরি হ্যান্ডলিং , ফাইল সিস্টেম , নেটওয়ার্ক stacks . অনেক সিস্টেম কল তাদের ঐ সমস্ত পরিষেবা অ্যাক্সেস করতে অনুমতি দেয় , অ্যাপ্লিকেশনের জন্য প্রদান করা হয়. প্রাথমিকভাবে প্রয়োজন হতে পারে না যে সাব লোড করার সময় একটি একশিলা কার্নেল , , এটি দ্রুত হিসাবে হিসাবে অথবা বিশেষভাবে হার্ডওয়্যার জন্য পরিকল্পনা করা হয়েছিল এক যে তুলনায় দ্রুততর একটি বিন্দু যেখানে টিউন করা যাবে একটি সাধারণ অর্থে আরও যদিও . কমান সাহায্য করার সময়ে যেমন ইউনিক্স মত অপারেটিং সিস্টেমের শ্রেণীর অন্তর্গত উভয় যা লিনাক্স ও FreeBSD 'র ঐ , , হিসাবে আধুনিক একশিলা কার্নেলের , , হিসাবে প্রয়োজন যার ফলে কার্নেল এর ক্ষমতা সহজ এক্সটেনশন যার ফলে রানটাইমে মডিউল লোড করার ক্ষমতা বৈশিষ্ট্য কার্নেল স্থান চলমান কোড পরিমাণ . একশিলা কার্নেল , কিছু সুবিধাও এই পয়েন্ট নেভিগেশন কবজা :
জড়িত কম সফ্টওয়্যার আছে যেহেতু এটি দ্রুততর.
এটা সফ্টওয়্যার একটি একক টুকরা হিসাবে এটি সোর্স এবং কম্পাইল ফর্ম উভয় ছোট হতে হবে.
কম কোড সাধারণত কম নিরাপত্তার সমস্যা অনুবাদ করতে পারেন , যা তার চেয়ে কম বাগ মানে.
একশিলা কার্নেল এ সর্বাধিক কাজ সিস্টেম কলের মাধ্যমে সম্পন্ন করা হয়. এই যেমন ডিস্কের অপারেশন হিসাবে কার্নেলের মধ্যে কিছু সাব অ্যাক্সেস যে সাধারণত একটি ট্যাবুলার গঠন রাখা ইন্টারফেস , , হয় . মূলত কল প্রোগ্রামের মধ্যে তৈরি হয় এবং অনুরোধের একটি চেক কপি সিস্টেম কল মাধ্যমে গৃহীত হয়. তাই, এ পর্যন্ত এ সব ভ্রমণ না . একশিলা লিনাক্স কার্নেল কারণ পরিবর্তনশীল মডিউল লোড করার তার ক্ষমতা কিন্তু কারণ স্বনির্ধারণ তার কর্মের মধ্যে না শুধুমাত্র অত্যন্ত ছোট করা যেতে পারে. আসলে, ইউটিলিটি এবং একটি ফ্লপি ডিস্কে অন্যান্য প্রোগ্রাম সংখ্যক সঙ্গে একসঙ্গে মাপসই এবং এখনও একটি সম্পূর্ণ ক্রিয়ামূলক অপারেটিং সিস্টেম ( muLinux যা জনপ্রিয় এক ) প্রদান করার জন্য যথেষ্ট ছোট যে কিছু সংস্করণে আছে. তার কার্নেল miniaturize করতে এই ক্ষমতা এছাড়াও এমবেডেড সিস্টেম লিনাক্স ব্যবহারের একটি দ্রুত বৃদ্ধি নেতৃত্বাধীন হয়েছে.
কার্নেলের এই ধরণের অপারেটিং সিস্টেম এর মূল ফাংশন এবং রানটাইম এ মডিউল লোড করার ক্ষমতা ডিভাইস ড্রাইভার দ্বারা গঠিত. তারা অন্তর্নিহিত হার্ডওয়্যার সমৃদ্ধ এবং শক্তিশালী abstractions প্রদান . তারা আরও কার্যকারিতা প্রদান সার্ভার বলা সহজ হার্ডওয়্যার abstractions এবং ব্যবহার অ্যাপ্লিকেশন একটি ছোট সেট প্রদান . এই বিশেষ পদ্ধতির ব্যবস্থা একটি সেট দিয়ে , হার্ডওয়্যার উপর একটি উচ্চ পর্যায়ের ভার্চুয়াল ইন্টারফেস সংজ্ঞায়িত সুপারভাইজার মোডে চালানোর জন্য বিভিন্ন মডিউল যেমন প্রক্রিয়া ব্যবস্থাপনা, concurrency এবং মেমরি ব্যবস্থাপনা হিসাবে অপারেটিং সিস্টেম সেবা বাস্তবায়নের আহ্বান জানাচ্ছে. এই নকশা কয়েক সংক্রান্ত ত্রুটিগুলি এবং সীমাবদ্ধতা উপস্থিত রয়েছে :
এক GDB মত একটি উৎস পর্যায়ের ডিবাগার ব্যবহার করা প্রয়োজন , কারণ এক ( একটি সম্পূর্ণ বৈশিষ্ট্যযুক্ত libc মত ) সাধারণ লাইব্রেরি ব্যবহার করে, এবং পারে না, কারণ কার্নেলে কোডিং অংশ, চ্যালেঞ্জিং হতে পারে . কম্পিউটার পুনরায় বুট প্রায়ই প্রয়োজন হয়. এই ডেভেলপারদের করার সুবিধার্থে শুধু সমস্যা হয় না . ডিবাগ যখন কঠিন , এবং অসুবিধা শক্তিশালী হয়ে হিসাবে, এটি কোড " buggier " হবে সম্ভবত হয়.
কার্নেল এক অংশে বাগ শক্তিশালী পার্শ্বপ্রতিক্রিয়া আছে; কার্নেলে প্রতিটি ফাংশন সব অধিকার , এক ফাংশন একটি বাগ আছে , যেহেতু অন্য দুর্নীতিগ্রস্ত ডাটা স্ট্রাকচার , কার্নেল এর সম্পূর্ণ সম্পর্কহীন অংশ , বা কোনো চলমান প্রোগ্রামের পারেন .
কার্নেলের প্রায়ই খুব বড় এবং বজায় রাখা কঠিন হয়ে.
এই অপারেশন সার্ভিসিং মডিউল সমগ্র থেকে আলাদা হয় , এমনকি যদি কোড ইন্টিগ্রেশন সঠিকভাবে কাজ করতে শক্ত এবং কঠিন.
মডিউল একই ঠিকানা স্থান চালানো থেকে, একটি বাগ সমগ্র সিস্টেমের নিচে আনতে পারেন.
একশিলা কার্নেলের পোর্টেবল না; অতএব, তারা অপারেটিং সিস্টেমে ব্যবহার করা হবে যে প্রতিটি নতুন আর্কিটেকচারের জন্য পুনর্লিখিত করা আবশ্যক.
 
 
Microkernel পদ্ধতির মধ্যে, কার্নেল নিজেই শুধুমাত্র সার্ভার কার্যকর , যেমন ডিভাইস ড্রাইভার , গ্রাফিক্যাল ইউজার ইন্টারফেস সার্ভার, হিসাবে সাবেক কার্নেল ফাংশন ধরে নিই যে পৃথক প্রোগ্রাম, পারবেন মৌলিক কার্যকারিতা উপলব্ধ করা হয়
Microkernels [সম্পাদনা]
মূল নিবন্ধ: Microkernel
Microkernel (এছাড়াও সংক্ষিপ্ত μK বা UK) ব্যবস্থার কার্যকারিতা একটি "সংক্ষিপ্ত " কার্নেলের মাধ্যমে যোগাযোগ করে " সার্ভার " একটি সেট করে , প্রথাগত " কার্নেল " থেকে স্থানান্তরিত করা হয় যার দ্বারা অপারেটিং সিস্টেম ডিজাইন করার একটি পন্থা বর্ণনা শব্দ , "সিস্টেমের স্থান " এবং " ব্যবহারকারীর স্থান " মধ্যে যতদূর সম্ভব মধ্যে যতটা সম্ভব সামান্য যাব . একটি নির্দিষ্ট প্ল্যাটফর্ম বা ডিভাইসের জন্য ডিজাইন করা হয়েছে যে একটি microkernel শুধুমাত্র কখনও এটা কাজ কি প্রয়োজন আছে যাচ্ছে . Microkernel পদ্ধতির প্রিমিটিভের বা সিস্টেম একটি সেট যেমন মেমরি ব্যবস্থাপনা, multitasking , এবং আন্ত প্রক্রিয়ার যোগাযোগ হিসাবে ন্যূনতম ওএস্ সেবা বাস্তবায়নের আহ্বান সাথে , হার্ডওয়্যার উপর একটি সহজ বিমূর্ততা সংজ্ঞা নিয়ে গঠিত. যেমন নেটওয়ার্কিং হিসাবে সাধারণত কার্নেল দ্বারা উপলব্ধ যারা ​​, , ব্যবহারকারী স্থান কর্মসূচী বাস্তবায়িত হয় সহ অন্যান্য সেবা, , সার্ভার হিসাবে উল্লেখ করা . Microkernels একশিলা কার্নেলের তুলনায় বজায় রাখা সহজ , কিন্তু তারা সাধারণত প্লেইন ফাংশন কল বেশী মাথার উপরে উৎপন্ন কারণ সিস্টেম কল এবং কনটেক্সট সুইচ সংখ্যক সিস্টেম মন্দীভূত পারে .
সত্যিই একটি ছবি তৈরী মোডে হচ্ছে প্রয়োজন যা শুধুমাত্র অংশে কার্নেল স্থান হল: IPC ( আন্তঃ প্রসেস যোগাযোগ ), বেসিক নির্ধারণকারী , অথবা সিডিউলিং প্রিমিটিভের , বেসিক মেমরি হ্যান্ডলিং , বেসিক ইনপুট / আউটপুট প্রিমিটিভের . অনেকগুলি জটিল অংশ এখন ব্যবহারকারী স্থান দৌড়াচ্ছে : সম্পূর্ণ নির্ধারণকারী, মেমরি হ্যান্ডলিং , ফাইল সিস্টেম ও নেটওয়ার্ক stacks . মাইক্রো কার্নেলের সব সিস্টেমের কার্যকারিতা প্রসেসরের একটি বিশেষ " সিস্টেম " মোডে একটি এক স্ট্যাটিক প্রোগ্রাম চলমান রাখা ছিল যদ্দ্বারা প্রথাগত " একশিলা " কার্নেল ডিজাইন, একটি প্রতিক্রিয়া হিসাবে উদ্ভাবিত হয়. Microkernel , শুধুমাত্র কাজগুলো অধিকাংশ মৌলিক যেমন , হার্ডওয়্যার কিছু ( না অগত্যা সব ) অ্যাক্সেস মেমরি পরিচালনা ও প্রসেসের মধ্যে ক্ষণস্থায়ী বার্তা সমন্বয় সাধন করতে পারবেন হিসাবে সঞ্চালিত হয়. মাইক্রো কার্নেলের ব্যবহারকারী কিছু সিস্টেমের QNX এবং Hurd হয় . এটা বলা হয় হিসাবে QNX এবং Hurd ক্ষেত্রে ব্যবহারকারী সেশন সিস্টেম নিজেই বা মতামত সমগ্র স্ন্যাপশট হতে পারে. Microkernel স্থাপত্যের খুব সারমর্ম এর সুবিধাগুলো কিছু প্রকাশ :
রক্ষণাবেক্ষণ সাধারণত সহজ.
প্যাচ একটি পৃথক ইনস্ট্যান্সের মধ্যে পরীক্ষা করুন, এবং তারপর একটি উত্পাদন উদাহরণস্বরূপ নিতে মধ্যে অদলবদল করা যাবে .
দ্রুত উন্নয়ন সময় এবং নতুন সফ্টওয়্যার কার্নেল পুনরায় বুট না করেও পরীক্ষা করা যাবে.
এক ইনস্ট্যান্সের খড় - টেলিগ্রাম যায় যদি সাধারণ আরো অধ্যবসায় , , এটি একটি কর্মক্ষম মিরর সঙ্গে এটি প্রতিস্থাপন করতে প্রায়ই সম্ভব.
সর্বাধিক মাইক্রো কার্নেলের অন্য এক সার্ভার থেকে অনুরোধ হ্যান্ডেল কিছু ধরণের একটি বার্তা পাশ করার সিস্টেম ব্যবহার. বার্তা পাশ করার সিস্টেম সাধারণত microkernel সঙ্গে একটি পোর্ট ভিত্তিতে কাজ করে. আরো মেমরি জন্য একটি অনুরোধ পাঠানো হয় যদি একটি উদাহরণ হিসাবে, , একটি পোর্ট microkernel দিয়ে খোলা এবং অনুরোধের মাধ্যমে পাঠানো হয়. একবার microkernel মধ্যে, ধাপ সিস্টেম কল করার অনুরূপ. যুক্তিপূর্ণ এটি একটি ক্লিনার সিস্টেম, ডিবাগ বা পরিবর্তনশীল সংশোধন করতে সহজ , ব্যবহারকারীদের চাহিদা স্বনির্ধারিত , এবং আরো সম্পাদন ফলস্বরূপ ঘটা হবে , যা সিস্টেমের আর্কিটেকচারের modularity আনতে হবে না. তারা AIX , BeOS , Hurd , মাপক , ম্যাক OS X মানুষকে চুরি QNX মত অপারেটিং সিস্টেমের অংশ. ইত্যাদি মাইক্রো কার্নেলের তারা একশিলা কার্নেলের তুলনায় প্রায়ই বড় , আসলে, হয় সব তাদের প্রয়োজনীয় অক্জিলিয়ারী কোড সঙ্গে একযোগে , নিজেরাই খুব ছোট হলেও . একশিলা কার্নেলের সমর্থনকারীরা এছাড়াও অপারেটিং সিস্টেমের সবচেয়ে হার্ডওয়্যার সাথে সরাসরি যোগাযোগ করে না যা microkernel সিস্টেমের দুই টায়ার্ড গঠন, , সিস্টেম দক্ষতা পরিপ্রেক্ষিতে একটি তুচ্ছ না ব্যয় সৃষ্টি করে যে বাতলান . কার্নেলের এই ধরণের সাধারণত যেমন মেমরি ঠিকানা স্পেস, আন্তঃ প্রসেস যোগাযোগ ( IPC ) এবং প্রক্রিয়া ব্যবস্থাপনা সংজ্ঞা হিসাবে শুধুমাত্র ন্যূনতম সেবা প্রদান . যেমন হার্ডওয়্যার প্রক্রিয়া চলমান হিসাবে অন্যান্য কার্যাবলী মাইক্রো কার্নেলের দ্বারা সরাসরি পরিচালিত হয় না. মাইক্রো কার্নেলের প্রবক্তারা যারা ​​একশিলা কার্নেলের kernel-র মধ্যে একটি ত্রুটি সম্পূর্ণ সিস্টেম বিপর্যস্ত হতে পারে যে অসুবিধা আছে বাতলান .
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
==তথ্যসূত্র==