ইন্টারপ্রেট এবং ট্রাপের মধ্যে পার্থক্য

Anonim

ইন্টারপ্রেট বনাম ট্রপ

যেকোনো কম্পিউটারে, একটি প্রোগ্রামের স্বাভাবিক ফাংশন চলাকালীন, এমন ঘটনা হতে পারে যা CPU কে ​​অস্থায়ীভাবে থামাতে পারে। এরকম ঘটনাগুলি ইন্টারাপ্ট বলা হয়। সফ্টওয়্যার বা হার্ডওয়্যার ত্রুটি দ্বারা বাধাপ্রাপ্ত হতে পারে। হার্ডওয়্যার ইন্টারাপ্টগুলি বলা হয় (কেবল) ইন্টারাপ্টস, যখন সফ্টওয়্যার ইন্টারাপ্টগুলি ব্যতিক্রম বা ফাঁদ বলা হয়। একটি ব্যতিক্রম একটি স্বয়ংক্রিয়ভাবে উত্পন্ন সফ্টওয়্যার ইন্টারাপ্ট হয়, যখন একটি Trap একটি সফ্টওয়্যার-চালু প্রোগ্রামার দ্বারা চালু বাধা। একবার একটি ইন্টারাপ্ট (সফ্টওয়্যার বা হার্ডওয়্যার) উত্থাপিত হলে, কন্ট্রোলটিকে আইএসআর (ইন্টারপ্রেট সার্ভিস রাউটিন) নামে একটি বিশেষ সাবরুটিতে স্থানান্তরিত করা হয় যা বিরতির দ্বারা উত্থাপিত শর্তগুলি পরিচালনা করতে পারে।

একটি আতঙ্ক কি?

শব্দটি ইন্টারপ্রেট সাধারণত হার্ডওয়্যার ইন্টারাপ্টের জন্য সংরক্ষিত হয় তারা বহিঃস্থ হার্ডওয়্যার ইভেন্টগুলি দ্বারা সৃষ্ট প্রোগ্রাম নিয়ন্ত্রণের বাধা। এখানে, বাহ্যিক উপায় CPU- র বাইরের হার্ডওয়্যার ইন্টারাপ্ট সাধারণত টাইমার চিপ, পেরিফেরাল ডিভাইস (কীবোর্ড, মাউস ইত্যাদি), আই / ও পোর্ট (সিরিয়াল, সমান্তরাল, ইত্যাদি), ডিস্ক ড্রাইভ, সিএমওস ঘড়ি, সম্প্রসারণ কার্ড (শব্দ কার্ড, ভিডিও কার্ড ইত্যাদি) এর অর্থ হল এক্সিকিউটিভ প্রোগ্রামের সাথে সম্পর্কিত কিছু ইভেন্টের কারণে হার্ডওয়্যার ইন্টারাপ্ট প্রায় কখনও ঘটেনি। উদাহরণস্বরূপ, ব্যবহারকারীর দ্বারা কীবোর্ডের কী কী কী কী কী কী কী প্রেস করা হয় বা কোনও অভ্যন্তরীণ হার্ডওয়্যার টাইমারের সময়সীমার সময় এই ধরনের বিরতি বাড়াতে পারে এবং CPU কে ​​একটি নির্দিষ্ট ডিভাইসের কিছু মনোযোগের প্রয়োজন হতে পারে। এমন অবস্থায় যে CPUটি যাই হোক না কেন বন্ধ হবে (i। বর্তমান প্রোগ্রামকে থামায়), ডিভাইসের প্রয়োজনীয় পরিষেবা প্রদান করে এবং স্বাভাবিক প্রোগ্রামে ফিরে আসে। যখন হার্ডওয়্যার বিঘ্ন ঘটে এবং CPU- র ISR শুরু হয় তখন অন্যান্য হার্ডওয়্যার ইন্টারাপ্টগুলি অক্ষম হয় (যেমন 80 × 86 মেশিনে)। ISR চলমান অবস্থায় আপনি যদি অন্য হার্ডওয়ারের ইন্টারাপ্টগুলির প্রয়োজন হয় তবে আপনাকে অবশ্যই ইন্টারপ্রেট ফ্ল্যাশ (sti নির্দেশনা সহ) পরিষ্কার করে তা করতে হবে। 80 × 86 মেশিনে, ইন্টারাপ্ট ফ্ল্যাশ সাফ করা শুধুমাত্র হার্ডওয়্যার ইন্টারাপ্ট প্রভাবিত করবে।

--২ ->

ট্র্যাপ কি?

ট্র্যাপকে নিয়ন্ত্রণের স্থান হিসাবে চিহ্নিত করা যায়, যা প্রোগ্রামার দ্বারা শুরু হয়। শব্দটি ট্র্যাপ শব্দটি ব্যতিক্রম (যা একটি স্বয়ংক্রিয়ভাবে ঘটছে সফ্টওয়্যার বিঘ্ন) সঙ্গে interchangeably ব্যবহার করা হয়। কিন্তু কিছু যুক্তি দিতে পারে যে একটি ফাঁদ কেবল একটি বিশেষ সাবরুটিন কল। তাই তারা সফ্টওয়্যার-আকাঙ্খিত ইন্টারাপ্টের বিভাগে পড়ে যায়। উদাহরণস্বরূপ, 80 × 86 মেশিনে, একটি প্রোগ্রামার একটি ফাঁদ শুরু করার জন্য int নির্দেশটি ব্যবহার করতে পারে। যেহেতু একটি ফাঁদ সর্বদা অসম্ভব তাই নিয়ন্ত্রণ সবসময় সর্বনাশ ফাঁদ সঙ্গে যুক্ত সাবটাইটাইন স্থানান্তর করা হবে। সঠিক নির্দেশনা, যা ফাঁদ পরিচালনা করার জন্য রুটিনকে আহ্বান করে সহজেই সনাক্ত করা যায় কারণ একটি স্পষ্ট নির্দেশনা একটি ফাঁদ নির্দিষ্ট করার জন্য ব্যবহৃত হয়।

ইন্টারপ্রেট এবং ট্রাপের মধ্যে পার্থক্য কি?

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