[এনবি: এই উত্তরটি সাম্প্রতিক সম্পাদনাটি নির্দিষ্ট করার উদ্দেশ্যে করা হয়েছে এবং ইতিমধ্যে পোস্ট করা বেশ কয়েকটি শব্দ উত্তরগুলিতে অন্যথায় যুক্ত করে না does]
সুতরাং, পুনরাবৃত্তি করার জন্য: মাইক্রোকোড (কমপক্ষে একটি প্রথম অনুমানের মধ্যে) একটি নির্দিষ্ট ধরণের ফার্মওয়্যার।
"মাইক্রোকোড" এই প্রসঙ্গে কেবল "প্রসেসর ফার্মওয়্যার" এর মাধ্যমে বিপণন করছে।
ঠিক আছে, এটি বিপণন না। বিপণন এটিকে XBoost Pro (টিএম) বা অন্য কিছু বলত । বরং এটি একটি ইঞ্জিনিয়ারিং শব্দ; আপনি যদি সিপিইউগুলি ডিজাইন করেন তবে মাইক্রোকোড এবং সিপিইউর অন্যান্য ফার্মওয়্যার (এবং অন্যান্য ডিভাইসের সাথে নির্দিষ্ট ফার্মওয়্যার সাজানোর) মধ্যে পার্থক্যটি আপনার পক্ষে গুরুত্বপূর্ণ। যদি না হয়, সম্ভবত এটি না।
যদি আপনি মাদারবোর্ডগুলি ডিজাইন করেন বা অপারেটিং সিস্টেমগুলি লেখেন তবে আপনি সম্ভবত আরও অল্পস্বল্প এবং কম পরিচিত "সিপিইউ ফার্মওয়্যার আপডেট" এর জন্য শর্টহ্যান্ড হিসাবে "মাইক্রোকোড আপডেট" ব্যবহার করেন। বেশিরভাগ সিপিইউ ফার্মওয়্যার আপডেটগুলি প্রাথমিকভাবে মাইক্রোকোডকে প্রভাবিত করে, তাই এটি একই জিনিসটির কাছে যথেষ্ট কাছে। আপনি সম্ভবত পার্থক্যটি জানেন তবে আপনার এটির যত্ন নেওয়ার দরকার নেই ।
শেষ ব্যবহারকারীর পার্থক্য সম্পর্কে জানতে বা যত্নের প্রয়োজন নেই এবং একটি আদর্শ বিশ্বে "মাইক্রোকোড" শব্দটি কখনই শোনা যায় না।
আমি অনুমান করছি যে সাম্প্রতিক অনুমানমূলক মৃত্যুদণ্ড কার্যকর করার দুর্বলতার সংবাদ কভারেজটি আপনার নজরে এলো, যদিও আপনি এটি আগে এমন একটি প্রসঙ্গে শুনেও থাকতে পারেন যা এটি আরও সুস্পষ্ট করে তুলেছে যে আপনার যত্নের প্রয়োজন নেই। এই দুর্বলতাগুলি পরিকল্পনার আগেই প্রকাশ করা হয়েছিল যার ফলস্বরূপ প্রেসের কভারেজটি অন্যথায় যেমন করা হতে পারে তার চেয়ে কম ক্রেচারড হতে পারে। শেষ ব্যবহারকারীর দৃষ্টিকোণ থেকে আপনাকে BIOS আপডেটগুলি, অপারেটিং সিস্টেম আপডেটগুলি এবং কিছু ক্ষেত্রে অ্যাপ্লিকেশন আপডেটগুলি ইনস্টল করতে হবে; আপনার জানা বা যত্নের দরকার নেই যা এর মধ্যে যদি কোনও নতুন মাইক্রোকোড অন্তর্ভুক্ত থাকে।
সুতরাং, এমনকি বুঝতে পেরে আপনার সম্ভবত জানা বা যত্ন নেওয়ার দরকার নেই, আপনি এখনও খাঁটি কৌতূহল থেকে আগ্রহী হতে পারেন: আপনি অন্য ফার্মওয়্যারের থেকে মাইক্রোকোডকে আলাদা করার বিষয়ে কীভাবে যেতে পারেন?
ঠিক আছে, প্রথম জিনিসটি স্বীকৃতি দেওয়ার জন্য এটি হ'ল একটি কঠোর এবং দ্রুত সংজ্ঞাটি অগত্যা নয়, এটি ব্লগস এবং রুবেসের পরিস্থিতি । তবুও, মাইক্রোকোড সম্পর্কে আমরা কিছু বলতে পারি:
মাইক্রোকোড সাধারণত সিপিইউয়ের পরিবর্তে সিপিইউর অভ্যন্তরে চলে। এটি উচ্চ-স্তরের দৃশ্য।
মাইক্রোকোডের আর্কিটেকচার সাধারণত সাধারণ ফার্মওয়্যার সহ সাধারণ কোডের আর্কিটেকচারের থেকে বেশ আলাদা দেখায়। এটি অত্যন্ত সমান্তরাল হওয়ার সম্ভাবনা রয়েছে এবং এটি হার্ডওয়ারের খুব কাছাকাছি বাস্তবায়িত হবে। বিদ্যমান উত্তরগুলির বেশ কয়েকটি (আপনার নিজের উত্তর সহ) এটি আলোচনা করে, যদিও এটি লক্ষ করা উচিত যে সিপিইউ নকশার উপর নির্ভর করে বিশদগুলি পৃথক হতে পারে।
যদিও হার্ডওয়্যারটি প্রায়শই কেবল প্রস্তুতকারকের সরবরাহিত ফার্মওয়্যারটি চালানোর জন্য ডিজাইন করা হয়, তৃতীয় পক্ষের ফার্মওয়্যারটি ব্যবহার করা বিশেষত অস্বাভাবিক নয় - যদিও এটি সম্ভবত ওয়ারেন্টিটি অকার্যকর করে দেবে! তৃতীয় পক্ষের মাইক্রোকোড অনেক বিরল, যদিও আমি বিশ্বাস করি যে প্রাচীন কালে (আমি যখন একটি সিপিইউ একটি ব্রেডবক্সের আকারের বিষয়ে ছিলাম) তখন কিছু প্রান্ত ব্যবহারকারী তাদের সিপিইউতে মাইক্রোকোড পরিবর্তন করতে পারে। আমি যতদূর সচেতন, পিসিগুলিতে ব্যবহৃত সিপিইউগুলিতে এটি সম্ভব নয়।
মাইক্রোকোড সাধারণত কোনও পাবলিক ইন্সট্রাকশন সেট আর্কিটেকচারটি অনুবাদ বা প্রয়োগ করতে সহায়তা করে, অর্থাৎ এটি মেশিন কোড চালায় যা অপারেটিং সিস্টেম ডিজাইনার এবং অ্যাপ্লিকেশন প্রোগ্রামাররা ব্যবহার করে। পরবর্তী বিভাগে এ সম্পর্কে আরও।
"এক্সিকিউশন বনাম ডেটা" প্রচুর উত্তর এই দৃষ্টান্ত ব্যবহার করে
বিভ্রান্তিকরভাবে বিভিন্ন উপায়ে, আমি ভয় করি তবে আমি নিজের মন্তব্যটিই সম্বোধন করব। এই বিভাগটি উপরের শেষ বুলেট পয়েন্টে প্রসারিত করতেও কাজ করে। এখানে লক্ষ্যটি হ'ল সিপিইউ যে কাজটি করে (হার্ডওয়ার এবং মাইক্রোকোডের সংমিশ্রণ দ্বারা অর্জন করা হয়) এবং একটি সাধারণ ডিভাইস যে কাজটি করে তোলে (হার্ডওয়্যার এবং ফার্মওয়্যারের সংমিশ্রণে অর্জন করা) সেই কাজের মধ্যে পার্থক্য করার চেষ্টা করা। আমি একটি Sata হার্ড ডিস্ক ড্রাইভ চয়ন করতে যাচ্ছি।
সাটা ড্রাইভটি কম্পিউটার থেকে প্রাপ্ত নির্দেশাবলী অনুসরণ করে, যা "5,123 সেক্টর থেকে ডেটা পড়ুন" এবং "এই তথ্যটি 1,321 সেক্টরে লিখুন" এর লাইনে রয়েছে। ড্রাইভের ফার্মওয়্যারটি হার্ডওয়্যারটিকে এটি তৈরি করার জন্য দায়ী এবং এটি সাধারণত কোনও সাধারণ কোড যা কোনও এম্বেড থাকা সিপিইউতে চলছে sort ড্রাইভের নির্দেশাবলী ক্রমানুসারে উপস্থিত হয়, যদিও তারা যে ক্রমে আসে তার ক্রিয়াকলাপ নাও করা যেতে পারে। এই নির্দেশাবলী কোনও প্রোগ্রাম নয়, এগুলি মূল সিপিইউতে চলমান একটি প্রোগ্রাম দ্বারা প্রেরণ করা হয়েছে। বিশেষত নিয়ন্ত্রণের কোন প্রবাহ নেই, অর্থাৎ, এসটিএ ড্রাইভটি বলার জন্য কোনও নির্দেশ নেই যা পরবর্তী নির্দেশগুলি চালানো উচিত।
কম্পিউটারের দায়িত্বে আছেন সিপিইউ। একবার এটি শুরু করার পরে এটি মাদারবোর্ড (বিআইওএস, অন্য ধরণের ফার্মওয়্যার) সরবরাহিত নির্দেশাবলী ("মেশিন কোড") চালায় যা এটি অপারেটিং সিস্টেম দ্বারা সরবরাহিত মেশিন কোডটি পরিচালনা করতে পরিচালিত করে যা মেশিন কোডটি সরবরাহ করার নির্দেশ দেয় provided অ্যাপ্লিকেশন বিক্রেতাদের দ্বারা। সিপিইউ নিজেই ইইপ্রোম (বিআইওএসের ক্ষেত্রে) বা র্যাম (অপারেটিং সিস্টেম এবং অ্যাপ্লিকেশনগুলির ক্ষেত্রে) থেকে মেশিন কোডটি পুনরুদ্ধার করে। বিশেষত, মেশিন কোডের নিয়ন্ত্রণের একটি প্রবাহ থাকে: মেশিন কোড সিপিইউকে বলে দেয় পরবর্তী কোন মেশিন কোডটি সম্পাদন করা উচিত। আপনি একই মেশিন কোডটি বারবার লুপ করতে পারেন, কোডটি যে ডাটা ব্যবহার করছে তার উপর নির্ভর করে আপনি কোডের বিভিন্ন বিট চালাতে পারেন - ডিটিএফ ইন্টারফেস ভাষার মতো নির্দেশাবলী যেমন স্যাটা কোড সীমাবদ্ধ একটি সাধারণ কাজ করতে পারে তবে মেশিন কোড পারে করাকিছু । ( টুরিংয়ের সম্পূর্ণতাও দেখুন ))
আমরা উপরের চূড়ান্ত বুলেট পয়েন্টটি আবার লিখতে পারি: মাইক্রোকোড সাধারণত একটি টুরিং সম্পূর্ণ ভাষা প্রয়োগ করে; সাধারণ ফার্মওয়্যার সাধারণত না।
মাইক্রোকোড দিয়ে "হার্ডওয়্যার নির্দেশাবলী ব্যাখ্যা করা হয়" এর অর্থ কী?
সত্য তবে সম্ভবত বিভ্রান্তিকর; গুরুত্বপূর্ণ বিষয়টি হ'ল মেশিন কোডের মধ্যে পার্থক্য, যার নিয়ন্ত্রণের প্রবাহ রয়েছে এবং এটি টিউরিং সম্পূর্ণ S
"মাইক্রোকোড" কি সাউন্ড কার্ডগুলিতে চালিত কোডটিতে প্রয়োগ হয়?
না, সাউন্ড কার্ডগুলি এসটিএ ড্রাইভের মতোই কোড নয়, নির্দেশাবলী গ্রহণ করে। নির্দেশাবলী হতে পারে "তীক্ষ্ণ খেলুন" বা "এই ডেটাটিকে তরঙ্গরূপ হিসাবে ব্যাখ্যা করুন এবং এটি খেলুন"। এখনও খুব সহজ।
এবং ভিডিও কার্ড (জিপিইউ)?
পুরানো ফ্যাশন ভিডিও কার্ডগুলি (জিপিইউবিহীন) এসটিএ ড্রাইভের সমান। নির্দেশাবলী "এই রঙে এই পিক্সেল সেট করুন" বা "এই অবস্থানে একটি এ লিখুন" এর মতো।
... জিপিইউগুলি জটিল এবং আমি উপরে বর্ণন করার চেষ্টা করেছি এমন দুটি বিশ্বের মধ্যে কোথাও বসে। এগুলি মূল কম্পিউটারের ভিতরে বসে একটি বিশেষায়িত কম্পিউটার হিসাবে মনে করা খুব সহজ, যার নিজস্ব সিপিইউ রয়েছে। এটি সত্য যে এসটিএ ড্রাইভের মতো ডিভাইসগুলিতেও সিপিইউ এম্বেড করা আছে, তবে পার্থক্যটি হ'ল কোনও এসটিএ ড্রাইভে এম্বেড করা সিপিইউ কেবল ড্রাইভ প্রস্তুতকারকের সরবরাহিত কোড চালায়, যেখানে জিপিইউগুলি অপারেটিং সিস্টেম এবং / অথবা অ্যাপ্লিকেশন বিক্রেতার দ্বারা সরবরাহিত কোডও চালায়। সত্যিই এটি সম্পূর্ণ পৃথক প্রশ্ন।
টিএল; ডিআর: মাইক্রোকোড একটি নির্দিষ্ট ধরণের ফার্মওয়্যার, যা হার্ডওয়্যারকে একটি টুরিং কমপ্লিট ইন্সট্রাকশন সেট প্রয়োগ করতে সহায়তা করে।