মূল পার্থক্য - সিস্টেম কল বনাম লাইব্রেরি কল
সিস্টেম কল এবং লাইব্রেরি কল একটি কম্পিউটারের অপারেটিং সিস্টেমের সাথে সম্পর্কিত। কম্পিউটার দুটি মোডে কাজ করতে পারে; যথা, ব্যবহারকারী মোড এবং কার্নেল মোড। সিস্টেম কল এবং লাইব্রেরি কলের মধ্যে মূল পার্থক্য হল যে সিস্টেম কল হল একটি ফাংশন যা কার্নেল দ্বারা হার্ডওয়্যার সংস্থানগুলি অ্যাক্সেস করার জন্য কার্নেল মোডে প্রবেশ করার জন্য প্রদান করে যেখানে, লাইব্রেরি কল হল প্রোগ্রামিং লাইব্রেরি দ্বারা প্রদত্ত একটি ফাংশন। উদাহরণস্বরূপ, open() একটি সিস্টেম কল এবং fopen() একটি লাইব্রেরি কল। যখন ফোপেন () সি প্রোগ্রামে, stdio.h হেডার লাইব্রেরি ব্যবহার করে। তারপর ফাইল খোলার কাজটি সম্পূর্ণ করতে কার্নেল থেকে সিস্টেম কল ‘ওপেন (),’ ব্যবহার করা হয়।
সিস্টেম কল কি?
একটি কম্পিউটার দুটি মোডে কাজ করে। সেগুলো হল ইউজার মোড এবং কার্নেল মোড। কম্পিউটার সিস্টেমে কিছু প্রক্রিয়া চলছে। একটি প্রক্রিয়া কার্যকরী একটি প্রোগ্রাম. যখন অ্যাপ্লিকেশন প্রোগ্রামগুলি চলছে, কম্পিউটারটি ব্যবহারকারী মোডে থাকে। যদি একটি হার্ডওয়্যার সংস্থান প্রয়োজন হয়, প্রক্রিয়াটি কার্নেলের কাছে একটি অনুরোধ পাঠায় এবং কম্পিউটার কার্নেল মোডে প্রবেশ করে। এই অনুরোধগুলি সিস্টেম কল ব্যবহার করে পাঠানো হয়. কম্পিউটার ঘন ঘন এই দুটি মোডের মধ্যে স্যুইচ করছে। কাজটি সম্পন্ন হলে, কম্পিউটার কার্নেল মোড থেকে ব্যবহারকারী মোডে ফিরে যায়। এই মোড রূপান্তরটি "প্রসঙ্গ স্যুইচিং" হিসাবে পরিচিত। সিস্টেম কল হল অপারেটিং সিস্টেম এবং ইউজার প্রোগ্রামের মধ্যে একটি ইন্টারফেস।
চিত্র 01: সিস্টেম কল
বিভিন্ন ধরনের সিস্টেম কল আছে। "প্রসেস কন্ট্রোল সিস্টেম কল" ব্যবহার করে তৈরি করা, প্রক্রিয়াটি বন্ধ করা, প্রক্রিয়া চালানো, বরাদ্দ করা এবং বিনামূল্যে মেমরি করা যেতে পারে। ফাইল ম্যানেজমেন্ট সিস্টেম কলগুলি তৈরি, মুছে ফেলা, পড়তে, লিখতে, খুলতে, বন্ধ করতে ব্যবহার করা যেতে পারে। প্রক্রিয়াটি সম্পাদন সম্পূর্ণ করার জন্য কিছু সংস্থান প্রয়োজন। "ডিভাইস ম্যানেজমেন্ট সিস্টেম কল" এর মাধ্যমে ডিভাইসের অনুরোধ করা এবং রিলিজ করা হয়। "ইনফরমেশন ম্যানেজমেন্ট সিস্টেম কল" সিস্টেম ডেটা পেতে এবং প্রক্রিয়া এবং ডিভাইস বৈশিষ্ট্য পেতে ব্যবহার করা যেতে পারে। প্রক্রিয়াগুলি একে অপরের সাথে যোগাযোগ করছে। এই যোগাযোগ "কমিউনিকেশন সিস্টেম কল" ব্যবহার করে করা হয়। স্থিতির তথ্য পাঠানো, যোগাযোগের সংযোগ তৈরি করা এবং মুছে ফেলা এবং বার্তা পাঠানো, গ্রহণ করা যোগাযোগ সিস্টেম কল ব্যবহার করে করা যেতে পারে।
লাইব্রেরি কল কি?
লাইব্রেরি কল হল প্রোগ্রামিং লাইব্রেরি দ্বারা প্রদত্ত একটি ফাংশন। একটি লাইব্রেরি কল করার আগে, সেই লাইব্রেরিটি আমদানি করা উচিত। লাইব্রেরি কল সিস্টেম কলের উপর নির্ভর করতে পারে।
C ভাষায়, এই ফাংশনগুলি হেডার ফাইলগুলি অন্তর্ভুক্ত করে প্রোগ্রামে ব্যবহার করা যেতে পারে। প্রিপ্রসেসিং নির্দেশিকা include ব্যবহার করে হেডার ফাইলগুলি অন্তর্ভুক্ত করা হয়। প্রিপ্রসেসর বাকি সোর্স ফাইলের সাথে চালিয়ে যাওয়ার আগে নির্দিষ্ট ফাইলটি স্ক্যান করে। কিছু সাধারণ লাইব্রেরি ফাংশন নিম্নরূপ, "math.h" লাইব্রেরিতে গণিত অপারেশন সম্পর্কিত ফাংশন অন্তর্ভুক্ত। "stdio.h" লাইব্রেরি ইনপুট এবং আউটপুট সম্পাদনের জন্য ফাংশন প্রদান করে। "fopen()" ফাইলের নাম নির্দেশিত খোলে। "fclose()" ফাইলটি বন্ধ করে দেয়। “printf() একটি স্ট্যান্ডার্ড আউটপুটে ফরম্যাট করা আউটপুট পাঠাতে ব্যবহৃত হয়। "fprintf ()" ফর্ম্যাট করা আউটপুট একটি স্ট্রীমে পাঠাতে ব্যবহৃত হয়। স্ট্যান্ডার্ড ইনপুট থেকে ফরম্যাট করা ইনপুট পড়ার জন্য "scanf()" ব্যবহার করা হয়। "stdlib.h" মেমরি পরিচালনার জন্য ফাংশন প্রদান করে এবং "time.h" সময় এবং তারিখ ম্যানিপুলেশনের জন্য ফাংশন প্রদান করে।
সিস্টেম কল এবং লাইব্রেরি কলের মধ্যে মিল কী?
দুটিই অপারেটিং সিস্টেমের সাথে সম্পর্কিত।
সিস্টেম কল এবং লাইব্রেরি কলের মধ্যে পার্থক্য কী?
সিস্টেম কল বনাম লাইব্রেরি কল |
|
একটি সিস্টেম কল একটি ফাংশন যা কার্নেল দ্বারা হার্ডওয়্যার সংস্থানগুলি অ্যাক্সেস করার জন্য কার্নেল মোডে প্রবেশ করে। | লাইব্রেরি কল হল প্রোগ্রামিং লাইব্রেরি দ্বারা প্রদত্ত একটি ফাংশন৷ |
সম্পাদনের মোড | |
একটি সিস্টেম কল কার্নেল মোডে কার্যকর করা হয়। | একটি লাইব্রেরি কল ব্যবহারকারী মোডে কার্যকর করা হয়৷ |
মোড স্যুইচিং | |
ব্যবহারকারী মোড থেকে কার্নেল মোডে একটি সিস্টেম কল সুইচ। | লাইব্রেরি কলে ব্যবহারকারী মোড থেকে কার্নেল মোডে কোন পরিবর্তন নেই। |
বহনযোগ্যতা | |
একটি সিস্টেম কল পোর্টেবল নয়৷ | একটি লাইব্রেরি কল পোর্টেবল৷ |
সারাংশ – সিস্টেম কল বনাম লাইব্রেরি কল
একটি সিস্টেম কল কার্নেলে প্রয়োগ করা হয়, এবং একটি লাইব্রেরি কল ব্যবহারকারী স্পেসে প্রয়োগ করা হয়। সিস্টেম কল এবং লাইব্রেরি কলের মধ্যে পার্থক্য হল একটি সিস্টেম কল হল কার্নেল দ্বারা হার্ডওয়্যার রিসোর্স অ্যাক্সেস করার জন্য কার্নেল মোডে প্রবেশ করার জন্য একটি ফাংশন এবং লাইব্রেরি কল হল প্রোগ্রামিং লাইব্রেরি দ্বারা প্রদত্ত একটি ফাংশন। লাইব্রেরি কলগুলি কাজটি সম্পূর্ণ করার জন্য সিস্টেম কলের উপর নির্ভর করতে পারে। open (), fork(), cd() সিস্টেম কলের কিছু উদাহরণ। fopen (), fprintf () হল লাইব্রেরি কলের উদাহরণ।
সিস্টেম কল বনাম লাইব্রেরি কল এর PDF সংস্করণ ডাউনলোড করুন
আপনি এই নিবন্ধটির PDF সংস্করণ ডাউনলোড করতে পারেন এবং উদ্ধৃতি নোট অনুসারে অফলাইন উদ্দেশ্যে এটি ব্যবহার করতে পারেন। অনুগ্রহ করে এখানে পিডিএফ সংস্করণ ডাউনলোড করুন সিস্টেম কল এবং লাইব্রেরি কলের মধ্যে পার্থক্য