Distributed operating system
একটি ডিস্ট্রিবিউটেড অপারেটিং সিস্টেম হল স্বাধীন সফ্টওয়্যার, নেটওয়ার্কযুক্ত, যোগাযোগকারী এবং শারীরিকভাবে পৃথক গণনামূলক নোডের সংগ্রহের উপর সিস্টেম সফ্টওয়্যার। তারা এমন কাজ পরিচালনা করে যা একাধিক সিপিইউ দ্বারা পরিবেশন করা হয়। প্রতিটি পৃথক নোড বিশ্বব্যাপী সামগ্রিক অপারেটিং সিস্টেমের একটি নির্দিষ্ট সফ্টওয়্যার উপসেট ধারণ করে। প্রতিটি উপসেট দুটি স্বতন্ত্র পরিষেবা প্রদানকারীর সংমিশ্রণ। প্রথমটি হল সর্বব্যাপী ন্যূনতম কার্নেল বা মাইক্রোকার্নেল, যা সরাসরি সেই নোডের হার্ডওয়্যার নিয়ন্ত্রণ করে। দ্বিতীয়টি হল সিস্টেম ম্যানেজমেন্ট উপাদানগুলির একটি উচ্চ-স্তরের সংগ্রহ যা নোডের ব্যক্তিগত এবং সহযোগিতামূলক ক্রিয়াকলাপগুলিকে সমন্বয় করে। এই উপাদানগুলি মাইক্রোকার্নেল ফাংশনগুলিকে বিমূর্ত করে এবং ব্যবহারকারীর অ্যাপ্লিকেশনগুলিকে সমর্থন করে। মাইক্রোকার্নেল এবং পরিচালন উপাদান সংগ্রহ একসঙ্গে কাজ করে। তারা একটি দক্ষ এবং স্থিতিশীল সিস্টেমে একাধিক সম্পদ এবং প্রক্রিয়াকরণ কার্যকারিতা সংহত করার সিস্টেমের লক্ষ্যকে সমর্থন করে। একটি বৈশ্বিক সিস্টেমে পৃথক নোডের এই নির্বিঘ্ন সংহতকরণকে স্বচ্ছতা বা একক সিস্টেম ইমেজ হিসাবে উল্লেখ করা হয়; একক গণনামূলক সত্তা হিসাবে বৈশ্বিক সিস্টেমের চেহারা ব্যবহারকারীদের প্রদত্ত বিভ্রম বর্ণনা করে। একটি ডিস্ট্রিবিউটেড ওএস একটি ওএসের প্রয়োজনীয় পরিষেবা এবং কার্যকারিতা সরবরাহ করে তবে বর্ধিত স্কেল এবং প্রাপ্যতার মতো অতিরিক্ত প্রয়োজনীয়তাগুলি সমর্থন করার অনুমতি দেওয়ার জন্য বৈশিষ্ট্য এবং নির্দিষ্ট কনফিগারেশন যুক্ত করে। একজন ব্যবহারকারীর কাছে, একটি ডিস্ট্রিবিউটেড ওএস একটি একক-নোড, মনোলিথিক অপারেটিং সিস্টেমের মতো কাজ করে। অর্থাৎ, যদিও এটি একাধিক নোড নিয়ে গঠিত, এটি ব্যবহারকারী এবং অ্যাপ্লিকেশনগুলির কাছে একক নোড হিসাবে প্রদর্শিত হয়। অতিরিক্ত ব্যবহারকারী-স্তরের মডুলার পরিষেবাগুলি থেকে ন্যূনতম সিস্টেম-স্তরের কার্যকারিতা পৃথক করা একটি "প্রক্রিয়া এবং নীতির পৃথকীকরণ" প্রদান করে। প্রক্রিয়া এবং নীতিকে সহজভাবে ব্যাখ্যা করা যেতে পারে যথাক্রমে "কি কিছু করা হয়" বনাম "কিভাবে কিছু করা হয়"। এই পৃথকীকরণ নমনীয়তা এবং পরিমাপযোগ্যতা বৃদ্ধি করে। সংক্ষিপ্ত বিবরণ কার্নেল প্রতিটি লোকেইলে (সাধারণত একটি নোড), কার্নেল একটি নোডের অন্তর্নিহিত হার্ডওয়্যার এবং সংস্থানগুলি পরিচালনার জন্য প্রয়োজনীয় নোড-স্তরের উপযোগিতাগুলির একটি ন্যূনতম সম্পূর্ণ সেট সরবরাহ করে। এই প্রক্রিয়াগুলির মধ্যে রয়েছে নোডের সম্পদ, প্রক্রিয়া, যোগাযোগ এবং ইনপুট/আউটপুট ম্যানেজমেন্ট সাপোর্ট ফাংশনগুলির বরাদ্দ, পরিচালনা এবং স্বভাব। কার্নেলের মধ্যে, একটি ডিস্ট্রিবিউটেড ওএস-এর জন্য যোগাযোগ উপ-ব্যবস্থা সর্বাধিক গুরুত্বপূর্ণ। একটি ডিস্ট্রিবিউটেড ওএস-এ, কার্নেল প্রায়শই নিম্ন-স্তরের অ্যাড্রেস স্পেস ম্যানেজমেন্ট, থ্রেড ম্যানেজমেন্ট এবং ইন্টার-প্রসেস কমিউনিকেশন (আইপিসি) সহ ন্যূনতম ফাংশনগুলিকে সমর্থন করে। এই নকশার একটি কার্নেলকে মাইক্রোকার্নেল বলা হয়। এর মডুলার প্রকৃতি নির্ভরযোগ্যতা এবং নিরাপত্তা বৃদ্ধি করে, একটি বিতরণকৃত ওএসের জন্য প্রয়োজনীয় বৈশিষ্ট্য। সিস্টেম ম্যানেজমেন্ট সিস্টেম ম্যানেজমেন্ট উপাদানগুলি হল সফ্টওয়্যার প্রক্রিয়া যা নোডের নীতিগুলি সংজ্ঞায়িত করে। এই উপাদানগুলি কার্নেলের বাইরে ওএসের অংশ। এই উপাদানগুলি উচ্চ-স্তরের যোগাযোগ, প্রক্রিয়া এবং সম্পদ ব্যবস্থাপনা, নির্ভরযোগ্যতা, কর্মক্ষমতা এবং নিরাপত্তা প্রদান করে। উপাদানগুলি একটি একক-সত্তা ব্যবস্থার কার্যকারিতার সাথে মেলে, যা একটি বিতরণকৃত পরিবেশে প্রয়োজনীয় স্বচ্ছতা যোগ করে। ওএস-এর বিতরণকৃত প্রকৃতির জন্য বৈশ্বিক ব্যবস্থার প্রতি একটি নোডের দায়িত্বকে সমর্থন করার জন্য অতিরিক্ত পরিষেবার প্রয়োজন হয়। উপরন্তু, সিস্টেম পরিচালনার উপাদানগুলি নির্ভরযোগ্যতা, প্রাপ্যতা এবং অধ্যবসায়ের "প্রতিরক্ষামূলক" দায়িত্বগুলি গ্রহণ করে। এই দায়িত্বগুলি একে অপরের সঙ্গে দ্বন্দ্ব সৃষ্টি করতে পারে। একটি সামঞ্জস্যপূর্ণ দৃষ্টিভঙ্গি, ভারসাম্যপূর্ণ দৃষ্টিভঙ্গি এবং সামগ্রিক ব্যবস্থার গভীর বোঝাপড়া হ্রাসমান আয় সনাক্ত করতে সহায়তা করতে পারে। নীতি ও ব্যবস্থার পৃথকীকরণ এই ধরনের দ্বন্দ্বকে প্রশমিত করে। একটি অপারেটিং সিস্টেম হিসাবে একসঙ্গে কাজ করা একটি ডিস্ট্রিবিউটেড অপারেটিং সিস্টেমের স্থাপত্য এবং নকশাকে অবশ্যই পৃথক নোড এবং বিশ্বব্যাপী সিস্টেমের লক্ষ্য উভয়ই উপলব্ধি করতে হবে। স্থাপত্য ও নকশাকে অবশ্যই নীতি ও পদ্ধতির পৃথকীকরণের সঙ্গে সামঞ্জস্যপূর্ণ পদ্ধতিতে দেখতে হবে। এটি করার ক্ষেত্রে, একটি ডিস্ট্রিবিউটেড অপারেটিং সিস্টেম একটি দক্ষ এবং নির্ভরযোগ্য ডিস্ট্রিবিউটেড কম্পিউটিং কাঠামো সরবরাহ করার চেষ্টা করে যা অন্তর্নিহিত কমান্ড এবং নিয়ন্ত্রণ প্রচেষ্টা সম্পর্কে নিখুঁত ন্যূনতম ব্যবহারকারীর সচেতনতার অনুমতি দেয়। একটি কার্নেল এবং সিস্টেম ম্যানেজমেন্ট উপাদানগুলির মধ্যে বহু-স্তরের সহযোগিতা, এবং ফলস্বরূপ একটি ডিস্ট্রিবিউটেড অপারেটিং সিস্টেমে স্বতন্ত্র নোডগুলির মধ্যে বিতরণকৃত অপারেটিং সিস্টেমের কার্যকরী চ্যালেঞ্জ। ব্যবস্থার এই বিন্দুটি অবশ্যই উদ্দেশ্যের একটি নিখুঁত সামঞ্জস্য বজায় রাখতে হবে এবং একই সাথে বাস্তবায়ন থেকে অভিপ্রায়ের সম্পূর্ণ বিচ্ছিন্নতা বজায় রাখতে হবে। এই চ্যালেঞ্জটি একটি নির্ভরযোগ্য, দক্ষ, উপলব্ধ, শক্তিশালী, সম্প্রসারণযোগ্য এবং পরিমাপযোগ্য সিস্টেমের ভিত্তি এবং কাঠামো তৈরি করার জন্য বিতরণকৃত অপারেটিং সিস্টেমের সুযোগ। যাইহোক, এই সুযোগটি জটিলতার ক্ষেত্রে খুব উচ্চ ব্যয়ে আসে। জটিলতার মূল্য একটি বিতরণকৃত অপারেটিং সিস্টেমে, অন্তর্নিহিত জটিলতার ব্যতিক্রমী মাত্রা সহজেই সমগ্র সিস্টেমটিকে যে কোনও ব্যবহারকারীর কাছে অভিশাপ হিসাবে পরিণত করতে পারে। এইভাবে, একটি বিতরণকৃত অপারেশন সিস্টেম বাস্তবায়নের যৌক্তিক মূল্য অবশ্যই অনেক ক্ষেত্রে এবং অনেক স্তরে বিশাল পরিমাণে জটিলতা কাটিয়ে ওঠার পরিপ্রেক্ষিতে গণনা করতে হবে। এই গণনায় সবচেয়ে পরিমিত বাস্তবায়ন অর্জনের জন্য প্রয়োজনীয় নকশা বিনিয়োগ এবং স্থাপত্য পরিকল্পনার গভীরতা, প্রস্থ এবং পরিসীমা অন্তর্ভুক্ত রয়েছে। এই নকশা এবং উন্নয়ন বিবেচনাগুলি সমালোচনামূলক এবং ক্ষমার অযোগ্য। উদাহরণস্বরূপ, একটি ডিস্ট্রিবিউটেড অপারেটিং সিস্টেমের সামগ্রিক স্থাপত্য এবং নকশার বিশদ বিবরণ একটি ব্যতিক্রমী প্রাথমিক পর্যায়ে প্রয়োজন। একটি বিতরণকৃত অপারেটিং সিস্টেমের বিকাশে নকশা বিবেচনার একটি ক্লান্তিকর বিন্যাস সহজাত। এই নকশার প্রতিটি বিবেচনা সম্ভবত অন্য অনেককে উল্লেখযোগ্য মাত্রায় প্রভাবিত করতে পারে। এটি পৃথক নকশা বিবেচনার ক্ষেত্রে এবং তাদের অনেকগুলি বিন্যাসের ক্ষেত্রে ভারসাম্যপূর্ণ পদ্ধতির একটি বিশাল প্রচেষ্টার দিকে পরিচালিত করে। এই প্রচেষ্টায় সহায়তা হিসাবে, বেশিরভাগ বিতরণকৃত কম্পিউটিং শক্তিতে নথিভুক্ত অভিজ্ঞতা এবং গবেষণার উপর নির্ভর করে। 1970-এর দশকে ইতিহাস গবেষণা এবং পরীক্ষামূলক প্রচেষ্টা আন্তরিকভাবে শুরু হয় এবং 1990-এর দশক জুড়ে অব্যাহত থাকে, 1980-এর দশকের শেষের দিকে মনোনিবেশিত আগ্রহ শীর্ষে ছিল। এই সময়কালে বেশ কয়েকটি ডিস্ট্রিবিউটেড অপারেটিং সিস্টেম চালু করা হয়েছিল; তবে, এই বাস্তবায়নের মধ্যে খুব কমই সামান্য বাণিজ্যিক সাফল্য অর্জন করেছে। আদিম ডিস্ট্রিবিউটেড অপারেটিং সিস্টেম কম্পোনেন্ট ধারণার মৌলিক এবং অগ্রণী বাস্তবায়ন 1950-এর দশকের গোড়ার দিকের। এই পৃথক পদক্ষেপগুলির মধ্যে কয়েকটি সরাসরি ডিস্ট্রিবিউটেড কম্পিউটিংয়ের উপর দৃষ্টি নিবদ্ধ করা হয়নি এবং সেই সময়ে, অনেকে তাদের গুরুত্বপূর্ণ প্রভাব বুঝতে পারেনি। এই অগ্রগামী প্রচেষ্টাগুলি গুরুত্বপূর্ণ ভিত্তি স্থাপন করেছিল এবং ডিস্ট্রিবিউটেড কম্পিউটিং সম্পর্কিত ক্ষেত্রে অব্যাহত গবেষণাকে অনুপ্রাণিত করেছিল। 1970-এর দশকের মাঝামাঝি সময়ে, গবেষণা ডিস্ট্রিবিউটেড কম্পিউটিং-এ গুরুত্বপূর্ণ অগ্রগতি ঘটায়। এই সাফল্যগুলি 1990-এর দশক জুড়ে অব্যাহত প্রচেষ্টার জন্য একটি দৃঢ়, স্থিতিশীল ভিত্তি প্রদান করেছিল। মাল্টি-প্রসেসর এবং মাল্টি-কোর প্রসেসর সিস্টেম গবেষণার ত্বরান্বিত বিস্তার বিতরণকৃত ওএস ধারণার পুনরুত্থানের দিকে পরিচালিত করে। ডি. আই. এস. ই. এ. সি প্রথম প্রচেষ্টার মধ্যে একটি ছিল ডি. আই. এস. ই. এ. সি, একটি সাধারণ-উদ্দেশ্য সমন্বিত কম্পিউটার। অ্যাসোসিয়েশন ফর কম্পিউটিং মেশিনারির প্রথম দিকের একটি প্রকাশনায়, 1954 সালের এপ্রিলে, ন্যাশনাল ব্যুরো অফ স্ট্যান্ডার্ডস-এর একজন গবেষক, বর্তমানে ন্যাশনাল ইনস্টিটিউট অফ স্ট্যান্ডার্ডস অ্যান্ড টেকনোলজি (এনআইএসটি) ডিওয়াইএসইএসি-র একটি বিস্তারিত বিবরণ উপস্থাপন করেন। ভূমিকাটি নমনীয় যোগাযোগ সহ কাঙ্ক্ষিত অ্যাপ্লিকেশনগুলির প্রয়োজনীয়তার উপর দৃষ্টি নিবদ্ধ করে, তবে অন্যান্য কম্পিউটারগুলির কথাও উল্লেখ করেছেঃ নির্দিষ্টকরণটি মাল্টি-কম্পিউটার সিস্টেমের স্থাপত্য নিয়ে আলোচনা করেছে, মাস্টার-স্লেভের পরিবর্তে পিয়ার-টু-পিয়ারকে পছন্দ করে। এটি বিতরণকৃত নিয়ন্ত্রণ সহ একটি কম্পিউটারের প্রাচীনতম উদাহরণগুলির মধ্যে একটি। বিভাগ। সেনাবাহিনীর প্রতিবেদনগুলি এটিকে নির্ভরযোগ্য বলে প্রত্যয়িত করে এবং 1954 সালের এপ্রিলে এটি সমস্ত গ্রহণযোগ্যতা পরীক্ষায় উত্তীর্ণ হয়। 1954 সালের মে মাসে এটি সম্পন্ন হয় এবং সময়মতো বিতরণ করা হয়। এটি একটি "বহনযোগ্য কম্পিউটার" ছিল, যা একটি ট্র্যাক্টর-ট্রেলারে রাখা ছিল, যার 2টি পরিচারক যানবাহন এবং 6 টন রেফ্রিজারেশন ক্ষমতা ছিল। লিঙ্কন টিএক্স-2 একটি পরীক্ষামূলক ইনপুট-আউটপুট সিস্টেম হিসাবে বর্ণিত, লিঙ্কন টিএক্স-2 নমনীয়, একযোগে কার্যকরী ইনপুট-আউটপুট ডিভাইস, অর্থাৎ মাল্টিপ্রোগ্রামিংয়ের উপর জোর দেয়। টিএক্স-2-এর নকশা মডুলার ছিল, যা উচ্চ মাত্রার পরিবর্তন এবং সম্প্রসারণকে সমর্থন করে। এই ব্যবস্থায় মাল্টিপল-সিকোয়েন্স প্রোগ্রাম কৌশল ব্যবহার করা হয়। এই কৌশলটি প্রোগ্রাম কোডের 32টি সম্ভাব্য ক্রমের মধ্যে একটির সাথে প্রতিটি সহযোগীকে একাধিক প্রোগ্রাম কাউন্টারের অনুমতি দেয়। এই স্পষ্টভাবে অগ্রাধিকার দেওয়া ক্রমগুলি একযোগে ইন্টারলিভ এবং কার্যকর করা যেতে পারে, যা কেবল প্রক্রিয়ার গণনায়ই নয়, ক্রমের নিয়ন্ত্রণ প্রবাহ এবং ডিভাইসগুলির স্যুইচিংকেও প্রভাবিত করে। ডিভাইস সিকোয়েন্সিং নিয়ে অনেক আলোচনা হয়েছে। ডি. ওয়াই. এস. ই. এ. সি-এর মতো টি. এক্স-2 পৃথকভাবে প্রোগ্রাম করা যন্ত্রগুলি একই সঙ্গে কাজ করতে পারে, যার ফলে থ্রুপুট বৃদ্ধি পায়। কেন্দ্রীয় ইউনিটের সম্পূর্ণ শক্তি যে কোনও যন্ত্রের জন্য উপলব্ধ ছিল। টিএক্স-2 ছিল বিতরণ নিয়ন্ত্রণ প্রদর্শনকারী একটি সিস্টেমের আরেকটি উদাহরণ, এর কেন্দ্রীয় ইউনিটের নিবেদিত নিয়ন্ত্রণ নেই। আন্তঃসংযোগকারী কোষঃ মেমরি অ্যাক্সেস বিমূর্ত করার একটি প্রাথমিক প্রচেষ্টা ছিল আন্তঃসংযোগকারী কোষ, যেখানে একটি কোষ মেমরি উপাদানগুলির একটি সংগ্রহ নিয়ে গঠিত ছিল। একটি মেমরি উপাদান মূলত একটি বাইনারি ইলেকট্রনিক ফ্লিপ-ফ্লপ বা রিলে ছিল। একটি কোষের মধ্যে দুই ধরনের উপাদান ছিল, প্রতীক এবং কোষ। প্রতিটি কোষের কাঠামো একটি নাম এবং পরামিতিগুলির একটি সেট নিয়ে গঠিত প্রতীকগুলির একটি সারিতে তথ্য সঞ্চয় করে। সেল অ্যাসোসিয়েশনের মাধ্যমে তথ্য সংযুক্ত করা হয়। তত্ত্বটি যুক্তি দিয়েছিল যে সম্বোধন করা একটি অপচয়মূলক এবং অ-মূল্যবান স্তর। তথ্য দুটি উপায়ে অ্যাক্সেস করা হয়েছিল, সরাসরি এবং ক্রস-পুনরুদ্ধার। সরাসরি পুনরুদ্ধার একটি নাম গ্রহণ করে এবং একটি পরামিতি সেট প্রদান করে। প্যারামিটার সেটের মাধ্যমে ক্রস-পুনরুদ্ধার প্রকল্পগুলি এবং প্যারামিটারগুলির প্রদত্ত উপসেট ধারণকারী নামের একটি সেট প্রদান করে। এটি একটি পরিবর্তিত হ্যাশ টেবিল ডেটা কাঠামোর অনুরূপ ছিল যা প্রতিটি কী (নাম) এর জন্য একাধিক মান (পরামিতি) অনুমতি দেয়। এই বিন্যাসটি ডিস্ট্রিবিউটেড সিস্টেমের জন্য আদর্শ ছিল। সংরক্ষণ এবং পুনরুদ্ধারের জন্য স্মৃতির মাধ্যমে ধ্রুবক-সময় অভিক্ষেপ সহজাতভাবে পারমাণবিক এবং একচেটিয়া ছিল। সেলুলার মেমরির অভ্যন্তরীণ বিতরণ বৈশিষ্ট্যগুলি অমূল্য হবে। ব্যবহারকারী, হার্ডওয়্যার/ডিভাইস বা অ্যাপ্লিকেশন প্রোগ্রামিং ইন্টারফেসের উপর প্রভাব পরোক্ষ ছিল। লেখকরা ডিস্ট্রিবিউটেড সিস্টেমগুলি বিবেচনা করছিলেন, উল্লেখ করে যেঃ শেয়ারড-মেমোরি মাল্টিপ্রোসেসরগুলিতে স্কেলযোগ্য সিঙ্ক্রোনাইজেশনের জন্য মৌলিক কাজ সুসঙ্গত মেমরি অ্যাবস্ট্রাকশন অ্যালগরিদম ফাইল সিস্টেম অ্যাবস্ট্রাকশন একটি ডিস্ট্রিবিউটেড ফাইল সিস্টেমের পরিমাপ শেয়ারড ভার্চ্যুয়াল মেমরি সিস্টেমে মেমরি কোহেরেন্স লেনদেন সাগাস ট্রানজেকশনাল মেমরি কম্পোজেবল মেমরি লেনদেন ট্রানজেকশনাল মেমরিঃ লক-ফ্রি ডেটা স্ট্রাকচারের জন্য স্থাপত্য সমর্থন গতিশীল আকারের ডেটা স্ট্রাকচারের জন্য সফ্টওয়্যার ট্রানজেকশনাল মেমরি সফ্টওয়্যার ট্রানজেকশনাল মেমরি পার্সিস্টেন্স অ্যাবস্ট্রাকশন ওশানস্টোরঃ বিশ্বব্যাপী স্থায়ী স্টোরেজ কোঅর্ডিনেটর অ্যাবস্ট্রাকশনের জন্য একটি স্থাপত্য আংশিক সিঙ্ক্রোনি রিলায়েবিলিটি অ্যাবস্ট্রাকশনের উপস্থিতিতে প্রতিলিপি করা ডেটা কনসেনসাসের জন্য ওয়েটেড ভোটিং এই পরীক্ষায়, তিনটি কাঠামোগত দিক বিবেচনা করুনঃ সংগঠন, সংযোগ এবং নিয়ন্ত্রণ। সংগঠন একটি ব্যবস্থার শারীরিক বিন্যাসের বৈশিষ্ট্যগুলি বর্ণনা করে। সংযোগটি নোডগুলির মধ্যে যোগাযোগের পথগুলিকে অন্তর্ভুক্ত করে। নিয়ন্ত্রণ পূর্ববর্তী দুটি বিবেচনার ক্রিয়াকলাপ পরিচালনা করে। সংগঠন একটি কেন্দ্রীভূত ব্যবস্থার একটি স্তরের কাঠামো থাকে, যেখানে সমস্ত উপাদান সরাসরি একটি নিয়ন্ত্রণ উপাদানের উপর নির্ভর করে। একটি বিকেন্দ্রীভূত ব্যবস্থা শ্রেণীবদ্ধ। নিচের স্তরটি একটি সিস্টেমের সত্তার উপসেটগুলিকে একত্রিত করে। এই সত্তা উপসেটগুলি পালাক্রমে উচ্চতর স্তরে একত্রিত হয়, শেষ পর্যন্ত একটি কেন্দ্রীয় প্রধান উপাদানে শেষ হয়। একটি ডিস্ট্রিবিউটেড সিস্টেম হল স্বায়ত্তশাসিত উপাদানগুলির একটি সংগ্রহ যার কোনও স্তরের ধারণা নেই। সংযোগ সেন্ট্রালাইজড সিস্টেমগুলি একটি হাব এবং স্পোক ফ্যাশনে একটি কেন্দ্রীয় মাস্টার সত্তার সাথে সরাসরি উপাদানগুলিকে সংযুক্ত করে। একটি বিকেন্দ্রীভূত ব্যবস্থা (ওরফে নেটওয়ার্ক ব্যবস্থা) উপাদান উপাদান এবং কেন্দ্রীয় সত্তার মধ্যে প্রত্যক্ষ এবং পরোক্ষ পথকে অন্তর্ভুক্ত করে। সাধারণত এটি যে কোনও দুটি উপাদানের মধ্যে শুধুমাত্র একটি সংক্ষিপ্ততম পথ সহ একটি শ্রেণিবিন্যাস হিসাবে কনফিগার করা হয়। পরিশেষে, ডিস্ট্রিবিউটেড অপারেটিং সিস্টেমের কোনও প্যাটার্নের প্রয়োজন হয় না; যে কোনও দুটি উপাদানের মধ্যে প্রত্যক্ষ এবং পরোক্ষ সংযোগ সম্ভব। 1970-এর দশকের "স্ট্রিং আর্ট" বা একটি স্পাইরোগ্রাফ অঙ্কনের ঘটনাকে একটি সম্পূর্ণ সংযুক্ত ব্যবস্থা হিসাবে বিবেচনা করুন এবং আংশিকভাবে সংযুক্ত ব্যবস্থার উদাহরণ হিসাবে মার্কিন শহরগুলির মধ্যে মাকড়সার জাল বা আন্তঃরাজ্য মহাসড়ক ব্যবস্থা বিবেচনা করুন। নিয়ন্ত্রণ কেন্দ্রীভূত এবং বিকেন্দ্রীভূত ব্যবস্থাগুলি কেন্দ্রীয় সত্তার সাথে এবং থেকে সংযোগের প্রবাহকে নির্দেশ করেছে, যখন বিতরণকৃত ব্যবস্থাগুলি নির্বিচারে পথ ধরে যোগাযোগ করে। এটি তৃতীয় বিবেচনার মূল ধারণা। নিয়ন্ত্রণের মধ্যে দক্ষতা, প্রতিক্রিয়াশীলতা এবং জটিলতার ভারসাম্য বজায় রাখার জন্য সিস্টেম উপাদানগুলিতে কাজ এবং তথ্য বরাদ্দ করা জড়িত। কেন্দ্রীভূত এবং বিকেন্দ্রীভূত ব্যবস্থাগুলি আরও নিয়ন্ত্রণের প্রস্তাব দেয়, সম্ভাব্যভাবে বিকল্পগুলিকে সীমাবদ্ধ করে প্রশাসনকে সহজ করে তোলে। ডিস্ট্রিবিউটেড সিস্টেমগুলি স্পষ্টভাবে নিয়ন্ত্রণ করা আরও কঠিন, তবে অনুভূমিকভাবে আরও ভাল স্কেল করে এবং সিস্টেম-ব্যাপী ব্যর্থতার কম পয়েন্ট সরবরাহ করে। সংগঠনগুলি তার নকশা দ্বারা আরোপিত চাহিদাগুলির সাথে সামঞ্জস্যপূর্ণ কিন্তু সাংগঠনিক বিশৃঙ্খলা দ্বারা নয় নকশা বিবেচনা স্বচ্ছতা স্বচ্ছতা বা একক-সিস্টেম চিত্র একটি অ্যাপ্লিকেশনের সেই সিস্টেমের সাথে আচরণ করার ক্ষমতাকে বোঝায় যার উপর এটি বিতরণ করা হয়েছে কিনা তা বিবেচনা না করে এবং বিবেচনা না করে হার্ডওয়্যার বা অন্যান্য বাস্তবায়ন বিবরণ। প্রবেশাধিকার, অবস্থান, কর্মক্ষমতা, নামকরণ এবং স্থানান্তর সহ একটি ব্যবস্থার অনেক ক্ষেত্র স্বচ্ছতা থেকে উপকৃত হতে পারে। স্বচ্ছতার বিবেচনা একটি বিতরণকৃত অপারেটিং সিস্টেমের নকশার প্রতিটি ক্ষেত্রে সিদ্ধান্ত গ্রহণে সরাসরি প্রভাব ফেলে। স্বচ্ছতা অন্যান্য নকশা বিবেচনার উপর নির্দিষ্ট প্রয়োজনীয়তা এবং/অথবা বিধিনিষেধ আরোপ করতে পারে। নির্দিষ্ট প্রয়োগের প্রয়োজনীয়তা পূরণের জন্য সিস্টেমগুলি বিকল্পভাবে বিভিন্ন মাত্রায় স্বচ্ছতা লঙ্ঘন করতে পারে। উদাহরণস্বরূপ, একটি ডিস্ট্রিবিউটেড অপারেটিং সিস্টেম একটি কম্পিউটারে একটি হার্ড ড্রাইভকে "সিঃ" এবং অন্য কম্পিউটারে একটি ড্রাইভকে "জিঃ" হিসাবে উপস্থাপন করতে পারে। ব্যবহারকারীর ডিভাইস ড্রাইভার বা ড্রাইভের অবস্থান সম্পর্কে কোনও জ্ঞানের প্রয়োজন হয় না; অ্যাপ্লিকেশনটির দৃষ্টিকোণ থেকে উভয় ডিভাইস একইভাবে কাজ করে। একটি কম স্বচ্ছ ইন্টারফেসের জন্য অ্যাপ্লিকেশনটির জানতে হবে যে কোন কম্পিউটার ড্রাইভটি হোস্ট করে। স্বচ্ছতা ক্ষেত্রঃ অবস্থান স্বচ্ছতা-অবস্থান স্বচ্ছতা স্বচ্ছতার দুটি স্বতন্ত্র দিক নিয়ে গঠিত, নাম স্বচ্ছতা এবং ব্যবহারকারীর গতিশীলতা। নামকরনের স্বচ্ছতার জন্য প্রয়োজন যে কোনও সিস্টেম সত্তার শারীরিক বা যৌক্তিক রেফারেন্সের কোনও কিছুই সত্তার অবস্থান, বা ব্যবহারকারী বা অ্যাপ্লিকেশনের সাথে তার স্থানীয় বা দূরবর্তী সম্পর্কের কোনও ইঙ্গিত প্রকাশ করা উচিত নয়। ব্যবহারকারীর গতিশীলতার জন্য সিস্টেম সত্তাগুলির সামঞ্জস্যপূর্ণ রেফারেন্সিং প্রয়োজন, সিস্টেমের অবস্থান নির্বিশেষে যেখান থেকে রেফারেন্সটি উদ্ভূত হয়। প্রবেশাধিকার স্বচ্ছতা-ইউজার ইন্টারফেসের মাধ্যমে দেখার সময় স্থানীয় এবং দূরবর্তী সিস্টেম সত্তাকে অবশ্যই অবিচ্ছেদ্য থাকতে হবে। ডিস্ট্রিবিউটেড অপারেটিং সিস্টেম একটি সিস্টেম সত্তার জন্য একক অ্যাক্সেস ব্যবস্থার এক্সপোজারের মাধ্যমে এই ধারণাটি বজায় রাখে, সেই সত্তাটি ব্যবহারকারীর কাছে স্থানীয় বা দূরবর্তী নির্বিশেষে। স্বচ্ছতা নির্দেশ করে যে কোনও নির্দিষ্ট সিস্টেম সত্তা-স্থানীয় বা দূরবর্তী-অ্যাক্সেস করার পদ্ধতিতে যে কোনও পার্থক্য অবশ্যই ব্যবহারকারীর কাছে অদৃশ্য এবং সনাক্তযোগ্য উভয়ই হতে হবে। স্থানান্তর স্বচ্ছতা-সম্পদ এবং ক্রিয়াকলাপগুলি কেবলমাত্র সিস্টেম দ্বারা নিয়ন্ত্রিত এবং ব্যবহারকারী/অ্যাপ্লিকেশন জ্ঞান বা ক্রিয়া ছাড়াই এক উপাদান থেকে অন্য উপাদানে স্থানান্তরিত হয়। প্রতিলিপি স্বচ্ছতা-একটি প্রক্রিয়া বা সত্য যে একটি সম্পদ অন্য উপাদানের উপর প্রতিলিপি করা হয়েছে তা সিস্টেম নিয়ন্ত্রণের অধীনে এবং ব্যবহারকারী/অ্যাপ্লিকেশন জ্ঞান বা হস্তক্ষেপ ছাড়াই ঘটে। সমান্তরাল স্বচ্ছতা-ব্যবহারকারী/অ্যাপ্লিকেশনগুলি অন্যান্য ব্যবহারকারীদের উপস্থিতি/ক্রিয়াকলাপ সম্পর্কে অজ্ঞ এবং প্রভাবিত হয় না। ব্যর্থতা স্বচ্ছতা-সিস্টেম ব্যর্থতা সনাক্তকরণ এবং প্রতিকারের জন্য দায়ী। সমস্যা সমাধানের জন্য সিস্টেমের জন্য অপেক্ষা করা ছাড়া কোনও ব্যবহারকারীর জ্ঞান/কর্ম জড়িত নেই। কর্মক্ষমতা স্বচ্ছতা-স্থানীয় বা বিশ্বব্যাপী কর্মক্ষমতার ঘাটতি সনাক্তকরণ এবং প্রতিকারের জন্য সিস্টেমটি দায়ী। মনে রাখবেন যে, সিস্টেম নীতিগুলি কিছু ব্যবহারকারী/ব্যবহারকারী শ্রেণী/কাজকে অন্যদের চেয়ে বেশি পছন্দ করতে পারে। কোনও ব্যবহারকারীর জ্ঞান বা মিথস্ক্রিয়া নেই। জড়িত। আকার/স্কেল স্বচ্ছতা-কোনও প্রয়োজনীয় ব্যবহারকারীর জ্ঞান বা মিথস্ক্রিয়া ছাড়াই সিস্টেমটি তার ভৌগলিক প্রসার, নোডের সংখ্যা, নোডের ক্ষমতার স্তর পরিচালনার জন্য দায়বদ্ধ। সংশোধন স্বচ্ছতা-ব্যবহারকারীর জ্ঞান বা কর্ম ছাড়াই সিস্টেমের পরিকাঠামোতে আপগ্রেড এবং সংশোধন এবং পরিবর্তনের জন্য সিস্টেমটি দায়ী। স্বচ্ছতা নিয়ন্ত্রণ করুন-সিস্টেমটি সমস্ত সিস্টেম তথ্য, ধ্রুবক, বৈশিষ্ট্য, কনফিগারেশন সেটিংস ইত্যাদি সরবরাহ করার জন্য দায়বদ্ধ। সমস্ত ব্যবহারকারী এবং অ্যাপ্লিকেশনের জন্য একটি সামঞ্জস্যপূর্ণ চেহারা, অর্থ এবং সংজ্ঞা। ডেটা স্বচ্ছতা-ব্যবহারকারীর জ্ঞান বা সিস্টেমটি কোথায় সংরক্ষণ করে সে সম্পর্কিত পদক্ষেপ ছাড়াই অ্যাপ্লিকেশনগুলিতে ডেটা সরবরাহ করার জন্য সিস্টেমটি দায়বদ্ধ। সমান্তরাল স্বচ্ছতা-ব্যবহারকারীর জ্ঞান বা মিথস্ক্রিয়া ছাড়াই কাজ সম্পাদনের সমান্তরাল করার যে কোনও ক্ষমতাকে কাজে লাগানোর জন্য সিস্টেমটি দায়ী। যুক্তিযুক্তভাবে স্বচ্ছতার সবচেয়ে কঠিন দিক, এবং ট্যানেনবাউম দ্বারা বিতরণকৃত সিস্টেম ডিজাইনারদের জন্য "হোলি গ্রেইল" হিসাবে বর্ণনা করা হয়েছে। আন্তঃপ্রক্রিয়া যোগাযোগ (আইপিসি) হল একটি নোডের মধ্যে এবং একটি বিতরণকৃত ওএসের নোডের মধ্যে থ্রেড এবং/অথবা প্রক্রিয়াগুলির মধ্যে সাধারণ যোগাযোগ, প্রক্রিয়া মিথস্ক্রিয়া এবং ডেটা প্রবাহের বাস্তবায়ন। ইন্ট্রা-নোড এবং ইন্টার-নোড যোগাযোগের প্রয়োজনীয়তা নিম্ন-স্তরের আইপিসি নকশাকে চালিত করে, যা স্বচ্ছতাকে সমর্থন করে এমন যোগাযোগ ফাংশন বাস্তবায়নের সাধারণ পদ্ধতি। এই অর্থে, আন্তঃপ্রক্রিয়া যোগাযোগ একটি বিতরণকৃত অপারেটিং সিস্টেমের নিম্ন-স্তরের নকশা বিবেচনার ক্ষেত্রে সর্বশ্রেষ্ঠ অন্তর্নিহিত ধারণা। প্রক্রিয়া ব্যবস্থাপনা বিতরণকৃত প্রক্রিয়াগুলির মধ্যে সম্পদের কার্যকর ও দক্ষ ভাগাভাগির জন্য নীতি ও প্রক্রিয়া প্রদান করে। এই নীতিগুলি এবং প্রক্রিয়াগুলি প্রসেসরের জন্য প্রক্রিয়া এবং বন্দরগুলির বরাদ্দ এবং ডি-বরাদ্দকরণের সাথে জড়িত ক্রিয়াকলাপগুলিকে সমর্থন করে, পাশাপাশি প্রক্রিয়াটি পরিচালনা, স্থগিত, স্থানান্তর, থামানো বা পুনরায় শুরু করার প্রক্রিয়াগুলিকে সমর্থন করে। যদিও এই সংস্থানগুলি এবং ক্রিয়াকলাপগুলি একে অপরের সাপেক্ষে স্থানীয় বা দূরবর্তী হতে পারে, ডিস্ট্রিবিউটেড ওএস সিস্টেমের সমস্ত প্রক্রিয়াগুলিতে অবস্থা এবং সিঙ্ক্রোনাইজেশন বজায় রাখে। উদাহরণস্বরূপ, লোড ব্যালেন্সিং একটি সাধারণ প্রক্রিয়া পরিচালনার কাজ। লোড ব্যালেন্সিং নোডের কার্যকারিতা পর্যবেক্ষণ করে এবং সিস্টেমের ভারসাম্যের বাইরে থাকলে নোড জুড়ে ক্রিয়াকলাপ স্থানান্তর করার জন্য দায়ী। একটি লোড ব্যালেন্সিং ফাংশন হল সরানোর জন্য একটি প্রক্রিয়া বেছে নেওয়া। কার্নেল অগ্রাধিকার-ভিত্তিক পছন্দ সহ বিভিন্ন নির্বাচন প্রক্রিয়া নিয়োগ করতে পারে। এই প্রক্রিয়াটি 'নতুন অনুরোধ'-এর মতো নীতির উপর ভিত্তি করে একটি প্রক্রিয়া বেছে নেয়। সিস্টেমটি নীতি প্রয়োগ করে রিসোর্স ম্যানেজমেন্ট সিস্টেম সম্পদ যেমন মেমরি, ফাইল, ডিভাইস ইত্যাদি। একটি সিস্টেম জুড়ে বিতরণ করা হয়, এবং যে কোনও নির্দিষ্ট মুহুর্তে, এই নোডগুলির যে কোনওটিতে হালকা থেকে নিষ্ক্রিয় কাজের বোঝা থাকতে পারে। লোড শেয়ারিং এবং লোড ব্যালেন্সিং-এর জন্য অনেক নীতি-ভিত্তিক সিদ্ধান্তের প্রয়োজন হয়, যার মধ্যে রয়েছে নিষ্ক্রিয় সিপিইউ খুঁজে বের করা, কখন সরাতে হবে এবং কোনটি সরাতে হবে। এই সিদ্ধান্তগুলিতে সহায়তা করার জন্য অনেকগুলি অ্যালগরিদম বিদ্যমান; যাইহোক, এটি দৃশ্যকল্পের জন্য সবচেয়ে উপযুক্ত অ্যালগরিদম এবং দৃশ্যপটের আশেপাশের পরিস্থিতিগুলি বেছে নেওয়ার ক্ষেত্রে দ্বিতীয় স্তরের সিদ্ধান্ত গ্রহণের নীতির আহ্বান জানায়। রিলায়েবিলিটি ডিস্ট্রিবিউটেড ওএস উচ্চ স্তরের নির্ভরযোগ্যতা, বা ত্রুটিগুলি প্রতিরোধ এবং/অথবা পুনরুদ্ধার করার ক্ষমতা অর্জনের জন্য প্রয়োজনীয় সংস্থান এবং পরিষেবা প্রদান করতে পারে। ত্রুটিগুলি হল শারীরিক বা যৌক্তিক ত্রুটি যা সিস্টেমে ত্রুটি সৃষ্টি করতে পারে। একটি ব্যবস্থা নির্ভরযোগ্য হওয়ার জন্য, এটিকে অবশ্যই কোনও না কোনওভাবে ত্রুটির প্রতিকূল প্রভাবগুলি অতিক্রম করতে হবে। ত্রুটিগুলি মোকাবেলার প্রাথমিক পদ্ধতিগুলির মধ্যে রয়েছে ত্রুটি এড়ানো, ত্রুটি সহনশীলতা এবং ত্রুটি সনাক্তকরণ এবং পুনরুদ্ধার। ত্রুটি এড়ানো ত্রুটিগুলির ঘটনা হ্রাস করার জন্য গৃহীত সক্রিয় পদক্ষেপগুলিকে অন্তর্ভুক্ত করে। এই সক্রিয় পদক্ষেপগুলি লেনদেন, প্রতিলিপি এবং ব্যাকআপের আকারে হতে পারে। ফল্ট টলারেন্স হল একটি সিস্টেমের ফল্টের উপস্থিতিতে অপারেশন চালিয়ে যাওয়ার ক্ষমতা। এই ক্ষেত্রে, সিস্টেমের সম্পূর্ণ কার্যকারিতা সনাক্ত করা এবং পুনরুদ্ধার করা উচিত। যাই হোক না কেন, গৃহীত যে কোনও পদক্ষেপ একক সিস্টেমের ভাবমূর্তি সংরক্ষণের জন্য সর্বাত্মক প্রচেষ্টা করা উচিত। প্রাপ্যতা হল সেই সময়ের ভগ্নাংশ যার মধ্যে সিস্টেম অনুরোধগুলিতে সাড়া দিতে পারে। কর্মক্ষমতা অনেক মাপকাঠি কর্মক্ষমতার পরিমাণ নির্ধারণ করে; থ্রুপুট, প্রতিক্রিয়া সময়, প্রতি একক সময়ে কাজের সমাপ্তি, সিস্টেম ব্যবহার ইত্যাদি। একটি ডিস্ট্রিবিউটেড ওএসের ক্ষেত্রে, কর্মক্ষমতা প্রায়শই প্রক্রিয়া সমান্তরালতা এবং আইপিসির মধ্যে ভারসাম্য বজায় রাখে। সমর্থনের জন্য প্রয়োজনীয় বার্তাগুলির সাথে একটি বোধগম্য সম্পর্কের মধ্যে সমান্তরালতার গ্রানুলারিটির কাজ পরিচালনা করা অত্যন্ত কার্যকর। এছাড়াও, ডেটা অনুলিপি করার পরিবর্তে কোনও প্রক্রিয়াটিকে তার ডেটাতে স্থানান্তরিত করা কখন বেশি উপকারী তা চিহ্নিত করাও কার্যকর। সমন্বিতকরণ সমবর্তী প্রক্রিয়াগুলির সমন্বয়ের একটি সহজাত প্রয়োজন রয়েছে, যা নিশ্চিত করে যে পরিবর্তনগুলি সঠিক এবং অনুমানযোগ্য পদ্ধতিতে ঘটে। তিনটি মৌলিক পরিস্থিতি যা এই প্রয়োজনের সুযোগকে সংজ্ঞায়িত করেঃ এক বা একাধিক প্রক্রিয়া অব্যাহত রাখার জন্য এক বা একাধিক প্রক্রিয়াকে অবশ্যই একটি নির্দিষ্ট সময়ে সিঙ্ক্রোনাইজ করতে হবে, এক বা একাধিক প্রক্রিয়া চালিয়ে যাওয়ার জন্য একটি অ্যাসিঙ্ক্রোনাস অবস্থার জন্য অপেক্ষা করতে হবে, অথবা একটি প্রক্রিয়া অবশ্যই একটি ভাগ করা সম্পদে একচেটিয়া অ্যাক্সেস স্থাপন করতে হবে। অনুপযুক্ত সমন্বয় একাধিক ব্যর্থতার মোডের দিকে নিয়ে যেতে পারে যার মধ্যে পারমাণবিকতা হ্রাস, ধারাবাহিকতা, বিচ্ছিন্নতা এবং স্থায়িত্ব, অচলাবস্থা, লাইভলক এবং ক্রমিকতার ক্ষতি রয়েছে। বিতরণকৃত অপারেটিং সিস্টেমে নমনীয়তা বিতরণকৃত অপারেটিং সিস্টেমের মডুলার বৈশিষ্ট্যগুলির মাধ্যমে এবং উচ্চতর স্তরের পরিষেবাগুলির একটি সমৃদ্ধ সেট সরবরাহ করে উন্নত করা হয়। কার্নেল/মাইক্রোকার্নেলের সম্পূর্ণতা এবং গুণমান এই ধরনের পরিষেবাগুলির বাস্তবায়নকে সহজতর করে এবং সম্ভাব্যভাবে পরিষেবা প্রদানকারীদের এই ধরনের পরিষেবাগুলির জন্য প্রদানকারীদের বৃহত্তর পছন্দকে সক্ষম করে। রিসার্চ রেপ্লিকেটেড মডেল একটি কম্পোনেন্ট অবজেক্ট মডেল পর্যন্ত প্রসারিত হয়েছে ই1 ডিস্ট্রিবিউটেড অপারেটিং সিস্টেমের আর্কিটেকচারাল ডিজাইন ক্রোনাস ডিস্ট্রিবিউটেড অপারেটিং সিস্টেম ডিজাইন এবং মিনিক্স ডিস্ট্রিবিউটেড অপারেটিং সিস্টেমের বিকাশ ডেনালি আইসোলেশন কার্নেলে স্বীকৃত দায়িত্ব স্কেল এবং পারফরম্যান্সের মাধ্যমে জটিলতা/ট্রাস্ট এক্সপোজার। মাল্টি/মাল্টি-কোর ফোকাসড সিস্টেম মাল্টিকার্নেলঃ স্কেলযোগ্য মাল্টিকোর সিস্টেমের জন্য একটি নতুন ওএস স্থাপত্য। কোরিঃ অনেক কোরের জন্য একটি অপারেটিং সিস্টেম। আলমোসঃ সিসি-এনইউএমএ বহু-কোরের জন্য উন্নত লোকালিটি ম্যানেজমেন্ট অপারেটিং সিস্টেম। হেটেরোজেনিটি হেলিওসে চরম পর্যায়ে বিতরণকৃত প্রক্রিয়াকরণঃ স্যাটেলাইট কার্নেল সহ হেটেরোজেনাস মাল্টিপ্রোসেসিং। জটিলতার একাধিক স্তরে কার্যকর এবং স্থিতিশীল টেসেলেশনঃ একটি ম্যানিকোর ক্লায়েন্ট ওএস-এ স্পেস-টাইম পার্টিশন। আরও দেখুন ডিস্ট্রিবিউটেড কম্পিউটিং হারমোনিওএস হারমোনিওএস নেক্সট ওপেনহারমোনি প্ল্যান 9 বেল ল্যাবস ইনফার্নো মিনিক্স সিঙ্গেল সিস্টেম ইমেজ (এসএসআই) কম্পিউটার সিস্টেমস আর্কিটেকচার মাল্টিকার্নেল অপারেটিং সিস্টেম প্রজেক্টস এডসগার ডব্লিউ. ডিজকস্ট্রা পুরস্কার ডিস্ট্রিবিউটেড কম্পিউটিং সম্মেলনের তালিকা স্বেচ্ছাসেবক কম্পিউটিং প্রকল্পের তালিকা আরও পড়ুন কম্পিউটার নেটওয়ার্ক সফ্টওয়্যার অপারেটিং সিস্টেমের ইতিহাস