লেখক
- Mary E. Shacklett, Transworld Data
- Stephen J. Bigelow, Senior Technology Editor
প্রকাশিত: অক্টোবর ৩১, ২০২৪
একটি অপারেটিং সিস্টেম (OS) হলো वह প্রোগ্রাম যা বুট প্রোগ্রাম দ্বারা কম্পিউটারে প্রাথমিকভাবে লোড হওয়ার পর, কম্পিউটারের অন্যান্য সকল অ্যাপ্লিকেশন প্রোগ্রাম들을 পরিচালনা করে। অ্যাপ্লিকেশন প্রোগ্রামগুলো একটি সংজ্ঞায়িত অ্যাপ্লিকেশন প্রোগ্রাম ইন্টারফেস (API) এর মাধ্যমে সার্ভিসের অনুরোধ করে OS ব্যবহার করে। علاوهয়ে, ব্যবহারকারীরা একটি ইউজার ইন্টারফেস (UI)—যেমন কমান্ড-লাইন ইন্টারফেস (CLI) বা গ্রাফিক্যাল ইউজার ইন্টারফেস (GUI)—এর মাধ্যমে সরাসরি অপারেটিং সিস্টেমের সাথে ইন্টারঅ্যাক্ট করতে পারে।
একটি অপারেটিং সিস্টেম কম্পিউটার সফ্টওয়্যার ও সফ্টওয়্যার ডেভেলপমেন্টের জন্য শক্তিশালী সুবিধা প্রদান করে। অপারেটিং সিস্টেম ছাড়া—যেটি কম্পিউটার চালানোর জন্য বিশেষভাবে ডিজাইন করা সিস্টেম সফ্টওয়্যার—প্রতিটি অ্যাপ্লিকেশনের নিজস্ব UI থাকতে হতো, পাশাপাশি কম্পিউটারের আন্ডারলাইং সিস্টেম সফ্টওয়্যারের সকল নিম্ন-স্তरीয় কার্যকারিতা হ্যান্ডেল করার জন্য প্রয়োজনীয় ব্যাপক কোডও থাকতে হতো, যथा ডিস্ক স্টোরেজ এবং নেটওয়ার্ক ইন্টারফেস। আন্ডারলাইং হার্ডওয়্যারের বিস্তৃত রেঞ্জ এবং সিস্টেম সফ্টওয়্যার লেভেলে চালানোর প্রয়োজনীয় সফ্টওয়্যার রুটিনের সংখ্যা বিবেচনা করলে, এটি প্রতিটি অ্যাপ্লিকেশনের আকার ফুলিয়ে দিবে এবং সফ্টওয়্যার ডেভেলপমেন্টকে অসম্ভব করে দিবে।
বদলে, OS অনেক সিস্টেম-লেভেল সফ্টওয়্যার টাস্ক হ্যান্ডেল করে, যেমন নেটওয়ার্ক প্যাকেট পাঠানো বা স্ট্যান্ডার্ড আউটপুট ডিভাইস (যেমন ডিসপ্লে) তে টেক্সট প্রদর্শন করা। সিস্টেম সফ্টওয়্যার অ্যাপ্লিকেশনগুলো এবং আন্ডারলাইং কম্পিউটার ও হার্ডওয়্যার ফাংশনের মধ্যে একটি মধ্যস্থতা হিসেবে কাজ করে। OS অ্যাপ্লিকেশনগুলোর জন্য হার্ডওয়্যার এবং অন্যান্য সিস্টেম-লেভেল ফাংশনlarla ইন্টারঅ্যাক্ট করার একটি কনসিস্টেন্ট এবং রিপিটেবল উপায় প্রদান করে, যাতে অ্যাপ্লিকেশনগুলোর সেসব সম্পর্কে কোনো ডিটেইল জানতে হয় না।
যদি প্রতিটি অ্যাপ্লিকেশন একই রিসোর্স ও সার্ভিস একই পদ্ধতিতে অ্যাক্সেস করে, তবে OS—এবং এর সাথে জড়িত আন্ডারলাইং সিস্টেম সফ্টওয়্যার—প্রায় যেকোনো সংখ্যক অ্যাপ্লিকেশন সার্ভিস করতে পারে। এটি অ্যাপ্লিকেশন ডেভেলপ ও ডিবাগ করতে লাগने वाला সময় ও কোডিং درাস্টিক্যালি কমিয়ে দেয়, সাথে ব্যবহারকারীরা একটি সাধারণ ও সুপরিচিত OS ইন্টারফেসের মাধ্যমে সিস্টেম সফ্টওয়্যার ও হার্ডওয়্যার নিয়ন্ত্রণ, কনফিগার ও ম্যানেজ করতে পারে।
অপারেটিং সিস্টেম কিভাবে কাজ করে?
ইনস্টল হওয়ার পর একটি অপারেটিং সিস্টেম একটি বিশাল ডিভাইস ড্রাইভারের লাইব্রেরির উপর নির্ভর করে তার সার্ভিসগুলো নির্দিষ্ট হার্ডওয়্যার এনভায়রনমেন্টের জন্য টেলর করতে। উদাহরণস্বরূপ, প্রতিটি অ্যাপ্লিকেশন একটি স্টোরেজ ডিভাইসে একই কল করতে পারে। OS সেটি গ্রহণ করে এবং সংশ্লিষ্ট ড্রাইভার ব্যবহার করে সেটি সেই নির্দিষ্ট কম্পিউটারের আন্ডারলাইং হার্ডওয়্যারের জন্য প্রয়োজনীয় অ্যাকশন বা কমান্ডে রূপান্তরিত করে। অপারেটিং সিস্টেম একটি ব্যাপক প্ল্যাটফর্ম প্রদান করে যা নিচের موارد আইডেন্টিফাই, কনফিগার ও ম্যানেজ করে:
- প্রসেসরসহ হার্ডওয়্যারের বিভিন্ন রেঞ্জ।
- মেমরি ডিভাইস এবং কম্পিউটার মেমরি ম্যানেজমেন্ট।
- চিপসেট।
- স্টোরেজ।
- নেটওয়ার্কিং।
- পোর্ট কমিউনিকেশন ইন্টারফেস, যেমন Video Graphics Array (VGA), High-Definition Multimedia Interface (HDMI) এবং Universal Serial Bus (USB)।
- সাবসিস্টেম ইন্টারফেস, যেমন Peripheral Component Interconnect Express (PCIe)।
অপারেটিং সিস্টেমের ফাংশনগুলো কী কী?
প্রমুখ সকল কম্পিউটার প্ল্যাটফর্ম—হার্ডওয়্যার এবং সফ্টওয়্যার উভয়—সাধারণত একটি OS আশ্রয় নেয় যা বিভিন্ন ডিভাইস ফর্ম ফ্যাক্টরের নির্দিষ্ট প্রয়োজনীয়তা পূরণের জন্য ভিন্ন ফিচারlerle ডেভেলপ করা হয়।
এন্ড ইউজারের দৃষ্টিকোণ থেকে, একটি অপারেটিং সিস্টেম নিচের তিনটি ضرুরী ক্ষমতা প্রদান করে:
- CLI বা GUI-এর মাধ্যমে একটি UI অফার করে।
- অ্যাপ্লিকেশন লঞ্চ করে এবং অ্যাপ্লিকেশন এক্সিকিউশন ম্যানেজ করে।
- সিস্টেম হার্ডওয়্যার রিসোর্স (যেমন প্রিন্টার ও ব্যাকআপ ডিস্ক ড্রাইভ) অ্যাপ্লিকেশনগুলোর জন্য আইডেন্টিফাই ও অ্যালোকেট করে, সাধারণত একটি স্ট্যান্ডার্ড API-এর মাধ্যমে।
ইউজার ইন্টারফেস
ব্যবহারকারী কম্পিউটারের সাথে কাজ করতে পারে হয় GUI-এর মাধ্যমে—যেটি একটি পয়েন্ট-এন্ড-ক্লিক ভিজুয়াল স্ক্রিন যেতে আইকন থাকে যা সিস্টেম ফাংশন ট্রিগার করে এবং অ্যাপ্লিকেশন লঞ্চ করে—অথবা CLI-এর মাধ্যমে, যেটি ডেটা এন্ট্রির জন্য একটি একক কমান্ড লাইন নিয়ে গঠিত, অথবা উভয়ই।
OS-এর আর্কিটেকচার।
অ্যাপ্লিকেশন ম্যানেজমেন্ট
একটি অপারেটিং সিস্টেম প্রতিটি অ্যাপ্লিকেশনের লঞ্চ ও ম্যানেজমেন্ট হ্যান্ডেল করে, যা নিচের ফাংশনগুলো সাপোর্ট করে:
- মাল্টিপল প্রসেস বা থ্রেডের টাইমশেয়ারিং, যাতে ভিন্ন টাস্কগুলো উপলব্ধ প্রসেসর রিসোর্স শেয়ার করতে পারে।
- অ্যাপ্লিকেশন উৎপন্ন ইন্টারাপশন ম্যানেজ করে যাতে একটি প্রসেসরের তাৎক্ষণিক মনোযোগ পাওয়া যায়, নিশ্চিত করে যে অ্যাপ্লিকেশন এবং এর সংশ্লিষ্ট ডেটা এক্সিকিউট করার জন্য পর্যাপ্ত মেমরি রয়েছে অন্য প্রসেসের সাথে ইন্টারফিয়ার ছাড়া।
- এরর হ্যান্ডেলিং করে যা একটি অ্যাপ্লিকেশনের প্রসেস রিমুভ করতে পারে।
- অন্য অ্যাপ্লিকেশন বা OS-কে ডিস্টার্ব না করে মেমরি ম্যানেজমেন্ট সম্পাদন করে।
হার্ডওয়্যার প্রোভিশনিং ও এক্সিকিউশন
একটি অপারেটিং সিস্টেম APIs সাপোর্ট করতে পারে যা অ্যাপ্লিকেশনগুলোর জন্য OS ও হার্ডওয়্যার ফাংশন ব্যবহার করতে সক্ষম করে নিম্ন-স্তरीয় OS বা হার্ডওয়্যার স্টেট সম্পর্কে কিছুই জানার প্রয়োজন ছাড়া। উদাহরণস্বরূপ, একটি Windows API একটি প্রোগ্রামকে কীবোর্ড বা মাউস থেকে ইনপুট নেওয়া, GUI এলিমেন্ট তৈরি করা (যেমন ডায়লগ উইন্ডো ও বাটন), এবং স্টোরেজ ডিভাইসে ফাইল রিড/রাইট করা সক্ষম করে। অ্যাপ্লিকেশন почти সর্বদা সেই OS সিস্টেম ব্যবহার করার জন্য টেইলর করা থাকে जिसপে অ্যাপ্লিকেশনটি রান করার উদ্দেশ্যে থাকে।
প্রসেস শিডিউলিং ও প্রায়োরিটাইজেশন
একটি মাল্টিটাস্কিং অপারেটিং সিস্টেমে, যেখানে একাধিক প্রোগ্রাম একসাথে রান করতে পারে, OS নির্ধারণ করে কোন অর্ডারে অ্যাপ্লিকেশনগুলো রান করবে এবং প্রতিটি অ্যাপ্লিকেশনের জন্য কতটুকু সময় দেবে অন্য অ্যাপ্লিকেশনের পালা দেওয়ার আগে। উদাহরণস্বরূপ, OS নির্ধারণ করতে পারে যে একটি ব্যাচ জব (যেমন বড় প্রিন্টিং টাস্ক) পরবর্তীতে রান করার জন্য শিডিউল করা যাবে যখন রিসোর্স ফ്രീ থাকবে।
প্যারালেল প্রসেসিং
যেসব কম্পিউটার প্যারালেল প্রসেসিং প্রদান করতে পারে, সেসব কম্পিউটারে OS ম্যানেজ করে কিভাবে একটি প্রোগ্রামকে ভাগ করবেন যাতে সেটি একাধিক প্রসেসরে একসাথে রান করে।
ফাইল ম্যানেজমেন্ট
ব্যবহারকারীর অনুরোধ, IT রুলসেট বা ডিফল্ট সেটিংস অনুযায়ী, একটি অপারেটিং সিস্টেম ফাইল ও ডিরেক্টরির সৃষ্টি, অ্যাক্সেস, মডিফিকেশন এবং ডিলিশন ম্যানেজ করে।
নেটওয়ার্কিং
ব্যবহারকারীর কাছে ট্রান্সপেরেন্টভাবে, OS নেটওয়ার্ক প্রোটোকল ডিসিপার করে এবং নেটওয়ার্কের সাথে কানেক্ট হয়ে একটি ওয়ার্কস্টেশনকে নেটওয়ার্ক-വাইড রিসোর্সের সাথে কানেক্ট করে। এটি একটি একক ব্যবহারকারীকে নেটওয়ার্কে হোস্ট করা নেটওয়ার্ক প্রিন্টার ও সার্ভার অ্যাক্সেস করতে সক্ষম করে।
সিকিউরিটি
IT দ্বারা সংজ্ঞায়িত ও অনুমোদিত পলিসি ব্যবহার করে, OS ব্যবহারকারী, অ্যাপ্লিকেশন ও ডেটার জন্য সিকিউরিটি অ্যাক্সেস কন্ট্রোল ও এনক্রিপশন এনফোর্স করে।
পারফরম্যান্স মনিটরিং ও এরর ডিটেকশন
OS কম্পিউটার পারফরম্যান্স সतত মনিটর করে এবং সিস্টেম লগ তৈরি করে যা অপ্টিমাল পারফরম্যান্সের জন্য ফাইন-টিউনিং এবং রিসোর্স ইউটিলাইজেশন, পারফরম্যান্স স্লোডাউন ও বটলнеক, এবং এরর রেজোলিউশন সংক্রান্ত সমস্যাগুলো সমাধান করতে সাহায্য করে।
ব্যাকআপ ও রিকভারি
ডেটা দিনে একাধিকবার, রাতের সময়, সাপ্তাহিক বা যেকোনো নির্ধারিত ফ্রিকোয়েন্সিতে ব্যাকআপ নেওয়া যায়। OS এই ব্যাকআপগুলো ইউজার বা IT সাহায্য ছাড়া অটোমেটিক্যালি সম্পাদন করতে পারে। ডেটা আউটেজ বা সিস্টেম ফেইল হলে, লেটেস্ট ব্যাকআপ থেকে ডেটা সহজেই রিকভার করা যায়।
ভার্চুয়ালাইজেশন
বেশিরভাগ OS ব্যবহারকারীদের একাধিক অপারেটিং সিস্টেম ডিফাইন করতে সক্ষম করে যা সফ্টওয়ার-ক্রিয়েটেড পার্টিশন ব্যবহার করে একে অপরের থেকে স্বাধীনভাবে রান করে একটি সিঙ্গল ফিজিক্যাল ওয়ার্কস্টেশনে। এটি ব্যবহারকারীকে একাধিক অ্যাপ্লিকেশন রান করতে দেয়, প্রতিটির নিজস্ব ডেডিকেটেড OS থাকে, একই ওয়ার্কস্টেশনে সিমাল্টেনিয়াসলি, পারফরম্যান্স অপ্টিমাইজ করার জন্য।
ডিভাইস ম্যানেজমেন্ট
একটি অপারেটিং সিস্টেম আইডেন্টিফাই, কনফিগার করে এবং অ্যাপ্লিকেশনগুলোর জন্য আন্ডারলাইং ইনপুট/আউটপুট ডিভাইস (যেমন প্রিন্টার, কীবোর্ড এবং অন্যান্য কম্পিউটার হার্ডওয়্যার ডিভাইস) এর সাধারণ অ্যাক্সেস প্রদান করে। OS হার্ডওয়্যার রিকগ্নাইজ ও আইডেন্টিফাই করার সাথে সাথে সংশ্লিষ্ট ডিভাইস ড্রাইভার এবং ইন্টারফেস ইনস্টল করে যা OS এবং OS-এ রান করা অ্যাপ্লিকেশনগুলোর ডিভাইসগুলো ব্যবহার করতে সক্ষম করে।
একটি অপারেটিং সিস্টেম সঠিক প্রিন্টার আইডেন্টিফাই করে এবং উপযুক্ত প্রিন্টার ড্রাইভার ইনস্টল করে যাতে একটি অ্যাপ্লিকেশনকে শুধু প্রিন্টার কল করতে হয়, সেই প্রিন্টারের জন্য স্পেসিফিক কোড বা কমান্ড ব্যবহার না করেও। প্রক্রিয়াটি অন্যান্য ডিভাইসের জন্যও একই, যার মধ্যে রয়েছে:
- USB পোর্ট।
- নেটওয়ার্কিং পোর্ট।
- গ্রাফিক্স ডিভাইস, যেমন গ্রাফিক্স প্রসেসিং ইউনিট (GPU)।
- মাদারবোর্ড চিপসেট।
- স্টোরেজ ডিভাইস, যেমন Serial-Attached SCSI ডিস্ক অ্যাডাপ্টার এবং উপযুক্ত ফাইল সিস্টেম দিয়ে ফরম্যাট করা ডিস্ক।
OS ফিজিক্যাল ও লজিক্যাল ডিভাইসগুলো সার্ভিসের জন্য আইডেন্টিফাই ও কনফিগার করে এবং সাধারণত সেসব একটি স্ট্যান্ডার্ড স্ট্রাকচারে রেকর্ড করে, যেমন Windows Registry। ডিভাইস ম্যানুফ্যাকচারার পর্যায়ক্রমে ড্রাইভার প্যাচ ও আপডেট করে, এবং OS সেসব আপডেট করতে হবে অপ্টিমাল ডিভাইস পারফরম্যান্স ও সিকিউরিটি নিশ্চিত করতে। ডিভাইস রিপ্লেস হলে, OS নতুন ড্রাইভার ইনস্টল ও কনফিগার করে।
অপারেটিং সিস্টেমের টাইপ ও উদাহরণ
যদিও অপারেটিং সিস্টেমের মৌলিক ভূমিকা সব জায়গায় একই, फिरও অগণিত অপারেটিং সিস্টেম রয়েছে যা হার্ডওয়্যার ও ব্যবহারকারীর واسعة রেঞ্জের প্রয়োজনীয়তা পূরণ করে, যার মধ্যে রয়েছে:
জেনারেল-পারপাস অপারেটিং সিস্টেম
একটি জেনারেল-পারপাস OS অনেক অ্যাপ্লিকেশন এবং واسعة হার্ডওয়্যার সিলেকশনে রান করতে পারে, যা একটি ব্যবহারকারীকে এক বা একাধিক অ্যাপ্লিকেশন বা টাস্ক সিমাল্টেনিয়াসলি রান করতে সক্ষম করে। একটি জেনারেল-পারপাস OS অনেক ডেস্কটপ ও ল্যাপটপ মডেলে ইনস্টল করা যায় এবং একাউন্টিং সিস্টেম থেকে ডাটাবেস, ওয়েব ব্রাউজার থেকে গেম পর্যন্ত অ্যাপ্লিকেশন রান করতে পারে। জেনারেল-পারপাস OS সাধারণত প্রসেস বা থ্রেড এবং হার্ডওয়্যার ম্যানেজমেন্টে ফোকাস করে যাতে অ্যাপ্লিকেশনগুলো কম্পিউটিং হার্ডওয়্যারের বিস্তৃত রেঞ্জ নির্ভরযোগ্যভাবে শেয়ার করতে পারে।
সাধারণ ডেস্কটপ অপারেটিং সিস্টেমগুলো হলো:
- Windows, Microsoft-এর ফ্ল্যাগশিপ অপারেটিং সিস্টেম, হোম ও বিজনেস কম্পিউটারের জন্য ডি ফ্যাক্টো স্ট্যান্ডার্ড। ১৯৮৫ সালে giớiত, Microsoft Windows GUI-ভিত্তিক OS এর পর থেকে অনেক ভার্সন রিলিজ হয়েছে। ইউজার-ফ্রেন্ডলি Windows 95 ব্যক্তিগত কম্পিউটিং-এর দ্রুত বিকাশের মূল দায়ী।
- Mac OS, Apple-এর PC ও ওয়ার্কস্টেশন লাইনের অপারেটিং সিস্টেম।
- Unix, একটি মাল্টি-ইউজার অপারেটিং সিস্টেম যা ফ্লেক্সিবিলিটি এবং অ্যাডাপ্টেবিলিটির জন্য ডিজাইন করা হয়েছিল। ১৯৭০-এর দশকে ডেভেলপ, Unix C ভাষায় লেখা প্রথম OS-গুলোতে একটি।
- Linux, ওপেন সোর্স কমিউনিটি থেকে একটি Unix-লাইক অপারেটিং সিস্টেম যা PC ব্যবহারকারীদের জন্য ফ্রি বা কম খরচে OS বিকল্প প্রদানের জন্য ডিজাইন করা হয়েছিল। Linux দক্ষ ও ফাস্ট-পারফরমিং OS হিসেবে বিখ্যাত।
মোবাইল অপারেটিং সিস্টেম
মোবাইল অপারেটিং কম্পিউটার সিস্টেমগুলো মোবাইল কম্পিউটিং ও কমিউনিকেশন-সেন্ট্রিক ডিভাইসের জন্য ডিজাইন করা হয়েছে, যেমন স্মার্টফোন এবং ট্যাবলেট। মোবাইল ডিভাইসগুলো সাধারণত পিসি চেয়ে লিমিটেড কম্পিউটিং রিসোর্স অফার করে, এবং OS অবশ্যই আকার ও জটিলতাতে ছোট হতে হবে যাতে নিজস্ব রিসোর্স ইউজ মিনিমাইজ হয়, সাথে ডিভাইসে রান করা এক বা একাধিক অ্যাপ্লিকেশনের জন্য পর্যাপ্ত রিসোর্স থাকে। মোবাইল অপারেটিং সিস্টেমগুলো সাধারণত এফিশিয়েন্ট পারফরম্যান্স, ইউজার রেসপন্সিভনেস এবং ডেটা হ্যান্ডলিং টাস্কে নিকট মনোযোগ দেয়, যেমন মিডিয়া স্ট্রিমিং সাপোর্ট। Apple iOS এবং Android মোবাইল অপারেটিং সিস্টেমের উদাহরণ।
এমবেডেড অপারেটিং সিস্টেম
সকল কম্পিউটিং ডিভাইস জেনারেল-পারপাস নয়। ডেডিকেটেড ডিভাইসের একটি বিশাল সেট—যেমন হোম ডিজিটাল অ্যাসিস্ট্যান্ট, অটোমেটেড টেলার মেশিন, এয়ারপ্লেন সিস্টেম, রিটেল পয়েন্ট অফ 세েল টার্মিনাল এবং ইন্টারনেট অফ থিংস ডিভাইস—কাস্টমাইজড এবং «স্লিমড ডাউন» অপারেটিং সিস্টেম ব্যবহার করে। এমবেডেড OS এবং জেনারেল-পারপাস OS-এর মধ্যে মূল পার্থক্য হলো এমবেডেড OS যেসব ডিভাইসে রান করে সেসব শুধু একটাই বড় কাজ করে, তাই OS খুবই স্ট্রিপড ডাউন থাকে এবং পারফরম্যান্স ও রেজিলিয়েন্স উভয়ের জন্য ডেডিকেটেড। এমবেডেড OS দ্রুত রান করতে হবে, ক্র্যাশ করবে না, এবং সকল পরিস্থিতিতে সวยে সווי ত্রুটি হ্যান্ডেল করে চালু থাকতে হবে। অধিকাংশ কেসে, OS একটি চিপে প্রদান করা থাকে যা আসল ডিভাইসের সাথে ইনকর্পোরেটেড। উদাহরণস্বরূপ, একটি পেশেন্টের লাইফ সাপোর্ট ইকুইপমেন্টে ব্যবহৃত মেডিক্যাল ডিভাইস একটি এমবেডেড OS ব্যবহার করে যা পেশেন্টকে জীবিত রাখতে নিতান্ত নির্ভরযোগ্যভাবে রান করতে হবে। Embedded Linux একটি এমবেডেড OS-এর উদাহরণ।
নেটওয়ার্ক অপারেটিং সিস্টেম
একটি নেটওয়ার্ক অপারেটিং সিস্টেম (NOS) আরেকটি স্পেশালাইজড OS যা লোকাল এরিয়া নেটওয়ার্কে অপারেট করা ডিভাইসগুলোর মধ্যে যোগাযোগ সুবিধা করার জন্য উদ্দেশ্য। একটি NOS নেটওয়ার্ক প্রোটোকল বুঝতে, নেটওয়ার্ক প্যাকেট তৈরি, এক্সচেঞ্জ ও ডিকম্পোজ করার জন্য প্রয়োজনীয় কমিউনিকেশন স্ট্যাক প্রদান করে। আজকাল, স্পেশালাইজড NOS-এর কনসেপ্ট বড়াংশে অপ্রচলিত কারণ অন্যান্য OS নেটওয়ার্ক কমিউনিকেশন হ্যান্ডেল করে। Windows 10 এবং Windows Server 2019, উদাহরণস্বরূপ, কমপ্রিহেন্সিভ নেটওয়ার্কিং ক্যাপাবিলিটি অন্তর্ভুক্ত করে। NOS-এর কনসেপ্ট এখনও কিছু নেটওয়ার্কিং ডিভাইসের জন্য ব্যবহার হয়, যেমন রাউটার, সুইচ এবং ফায়ারওয়াল, এবং ম্যানুফ্যাকচারার প্রপ্রায়েটরি NOS ব্যবহার করে, যেমন Cisco Internetwork Operating System এবং MikroTik-এর ওপেন সোর্স NOS RouterOS।
রিয়েল-টাইম অপারেটিং সিস্টেম
যখন একটি কম্পিউটিং ডিভাইস কনস্ট্যান্ট ও রিপিটেবল টাইম কনস্ট্রেইন্টের মধ্যে রিয়েল ওয়ার্ল্ডের সাথে ইন্টারঅ্যাক্ট করতে হবে, তখন ডিভাইস ম্যানুফ্যাকচারার একটি রিয়েল-টাইম অপারেটিং সিস্টেম (RTOS) ব্যবহার করতে পারে। উদাহরণস্বরূপ, একটি ইন্ডাস্ট্রিয়াল কন্ট্রোল সিস্টেম একটি বিশাল ফ্যাক্টরি বা পাওয়ার প্ল্যান্টের অপারেশন ডাইরেক্ট করতে পারে। সেসব ফ্যাসিলিটি অসংখ্য সেন্সর থেকে সিগন্যাল উৎপন্ন করে এবং ভালভ, অ্যাকচুয়েটর, মোটর এবং অন্য অসংখ্য ডিভাইস অপারেট করার জন্য সিগন্যাল পাঠায়। এই পরিস্থিতিতে, ইন্ডাস্ট্রিয়াল কন্ট্রোল সিস্টেম অবশ্যই রিয়েল-ওয়ার্ল্ড কন্ডিশনের পরিবর্তনগুলোতে দ্রুত ও প্রিডিক্টেবলভাবে রেসপন্ড করতে হবে—অন্যথায় দুরঘটনা ঘটতে পারে। একটি RTOS অবশ্যই বাফারিং, প্রসেসিং ল্যাটেন্সি এবং অন্যান্য ডिले ছাড়া ফাংশন করতে হবে, যা অন্যান্য টাইপের অপারেটিং সিস্টেমের জন্য সম্পূর্ণ গ্রহণযোগ্য। RTOS-এর উদাহরণ: FreeRTOS এবং Wind River VxWorks।
অপারেটিং সিস্টেম টাইপগুলোর পার্থক্যগুলো অ্যাবসোলিউট নয়, এবং কিছু OS অন্যদের বৈশিষ্ট্য শেয়ার করতে পারে। উদাহরণস্বরূপ, জেনারেল-পারপাস OS-এরULE incluir করে ঐ ট্র্যাডিশনাল NOS-এ পাওয়া যাওয়া নেটওয়ার্কিং ক্যাপাবিলিটি। একইভাবে, একটি এমবেডেড অপারেটিং সিস্টেম সাধারণত RTOS-এর অ্যাট্রিবিউট অন্তর্ভুক্ত করে, যখন একটি মোবাইল অপারেটিং সিস্টেম সাধারণত অন্যান্য জেনারেল-পারপাস OS-এর মতো একসাথে অনেক অ্যাপ রান করতে পারে।
ডিস্ট্রিবিউটেড অপারেটিং সিস্টেম
একটি নেটওয়ার্কে ইনস্টল করা একটি ডিস্ট্রিবিউটেড OS একাধিক ওয়ার্কস্টেশনের সার্ভিস দিতে পারে, বিশেষত থিন-ক্লায়েন্ট কম্পিউটার যাদের নিজস্ব রেসিডেন্ট অ্যাপ্লিকেশন বা ডেটা নয় বা খুব কম। একাধিক ব্যবহারকারী এই বড় ডিস্ট্রিবিউটেড নেটওয়ার্ক সার্ভারগুলোর হোস্ট করা অ্যাপ্লিকেশন ও রিসোর্স অ্যাক্সেস ও শেয়ার করে, এবং এই সার্ভারগুলোর OSগুলো মাল্টিপল ইউজার ওয়ার্কস্টেশন থেকে অ্যাক্সেস রিকোয়েস্ট ও রিসোর্স কনসাম্পশন ম্যানেজ করে। ডিস্ট্রিবিউটেড OS-এর উদাহরণ: Microsoft Windows Server এবং সার্ভারের জন্য বিভিন্ন ওপেন সোর্স Linux ডিস্ট্রিবিউশন।
ক্লাস্টার অপারেটিং সিস্টেম
ক্লাস্টার অপারেটিং সিস্টেম হলো এমন OS যেগুলো কম্পিউটারের একটি ক্লাস্টার রান করার জন্য ডিজাইন করা হয়েছে যারা একসাথে একটি সিঙ্গল সিস্টেমে কাজ করে। আর্টিফিশিয়াল ইন্টেলিজেন্স প্রসেসিং ক্লাস্টার কম্পিউটিং-এর প্রধান উদাহরণ, কারণ এতে ডেটার দ্রুত, সিমাল্টেনিয়াস, প্যারালেল প্রসেসিং প্রয়োজন। হাই-পারফরম্যান্স কম্পিউটিং সিস্টেম যেখানে হাজার হাজার ট্রানজ্যাকশন সিমাল্টেনিয়াসলি ও রিয়েল-টাইমে প্রসেস করা হয়—যেমন ব্রোকারেজ সিস্টেম—ও ক্লাস্টার কম্পিউটিং-এর यুজ কেস। Rocks Cluster Distribution এবং ওপেন সোর্স Open MPI ক্লাস্টার কম্পিউটিং OS-এর দুটি উদাহরণ।
What is an operating system (OS)? সম্পর্কে আরও পড়ুন
- ডেটা সেন্টার যারা OS পরিবর্তন করতে চান তাদের জন্য পরামর্শ
- কি Windows 11 অবশেষে উড়ানোর জন্য প্রস্তুত?
- মেইনফ্রেম স্কিলস ক্রাঞ্চ; আউটসাইডার বনাম ইনসাইডার পর্সপেক্টিভ
- Windows 11 আপগ্রেড প্রজেক্ট প্ল্যান করার পদ্ধতি
- Windows 10 এন্ড অফ লাইফ কবে? কিভাবে সাপোর্ট এক্সটেন্ড করবেন