সিস্টেম কল এবং ফাংশন কলের মধ্যে পার্থক্য

সিস্টেম কল এবং ফাংশন কলের মধ্যে পার্থক্য
সিস্টেম কল এবং ফাংশন কলের মধ্যে পার্থক্য

ভিডিও: সিস্টেম কল এবং ফাংশন কলের মধ্যে পার্থক্য

ভিডিও: সিস্টেম কল এবং ফাংশন কলের মধ্যে পার্থক্য
ভিডিও: W4 L3 Software Interrupts and System calls 2024, জুলাই
Anonim

সিস্টেম কল বনাম ফাংশন কল

একটি সাধারণ প্রসেসর একে একে নির্দেশাবলী কার্যকর করে। কিন্তু এমন কিছু ঘটনা ঘটতে পারে যেখানে প্রসেসরকে বর্তমান নির্দেশনা বন্ধ করতে হবে এবং অন্য কোনো প্রোগ্রাম বা কোড সেগমেন্ট (অন্য কোনো জায়গায় থাকা) চালাতে হবে। এটি করার পর প্রসেসর স্বাভাবিক এক্সিকিউশনে ফিরে আসে এবং যেখান থেকে ছেড়েছিল সেখান থেকে চলতে থাকে। একটি সিস্টেম কল এবং একটি ফাংশন কল এই ধরনের অনুষ্ঠান। একটি সিস্টেম কল হল সিস্টেমে অন্তর্নির্মিত একটি সাবরুটিনে একটি কল। একটি ফাংশন কল হল প্রোগ্রামের মধ্যে একটি সাবরুটিনে একটি কল৷

একটি সিস্টেম কল কি?

সিস্টেম কলগুলি কম্পিউটারে চলমান প্রোগ্রামগুলিকে অপারেটিং সিস্টেমের সাথে কথা বলার জন্য একটি ইন্টারফেস প্রদান করে।যখন একটি প্রোগ্রামকে অপারেটিং সিস্টেমের কার্নেল থেকে একটি পরিষেবা (যার জন্য এটি নিজে থেকে এটি করার অনুমতি নেই) চাইতে হয়, তখন এটি একটি সিস্টেম কল ব্যবহার করে। অপারেটিং সিস্টেমের সাথে সরাসরি ইন্টারঅ্যাক্ট করার প্রক্রিয়াগুলির মতো ব্যবহারকারীর স্তরের প্রক্রিয়াগুলির একই অনুমতি নেই। উদাহরণস্বরূপ, বাহ্যিক I/O ডিভাইসের সাথে যোগাযোগ করতে বা অন্য কোনো প্রক্রিয়ার সাথে যোগাযোগ করতে, একটি প্রোগ্রাম সিস্টেম কল ব্যবহার করে।

একটি ফাংশন কল কি?

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

সিস্টেম কল এবং ফাংশন কলের মধ্যে পার্থক্য কী?

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

প্রস্তাবিত: