ফার্মওয়্যার কোড বা ডেটা?


29

যখন কেউ বলে যে তারা কোনও ডিভাইসে ফার্মওয়্যারকে "ফ্ল্যাশ করেছে" তখন আমি এটি জানতে আগ্রহী যে এটি আসলে কী বোঝায়।

  1. ফার্মওয়্যারটি কি কেবল একটি নেটিভ বাইনারি যা মেমরিতে সঞ্চিত থাকে এবং এটি ডিভাইসের সিপিইউ দ্বারা ব্যাখ্যা করা যেতে পারে (কম্পিউটারে অন্য কোনও EXE এর মতো)? অথবা ফার্মওয়্যারটি কি কেবল এমন ডেটা যা ডিভাইসটিতে ইতিমধ্যে হার্ডকোডড / ওয়্যারযুক্ত একটি অপরিবর্তনীয় প্রোগ্রামের ইনপুট হিসাবে কাজ করে?
  2. পরবর্তী উদাহরণ যদি ফার্মওয়্যার না হয় তবে আপনি এটিকে কী বলবেন? উদাহরণস্বরূপ, ধরা যাক যে কোনও ডিভাইসে কিছু বাইনারি ( someapp.exe) রয়েছে এবং আপনি এই বাইনারিটি সরাতে বা সংশোধন করতে পারবেন না। বাইনারিটি যখন চালানো হয় তখন মেমরি চিপ থেকে ইনপুট নেয়। আপনি এই চিপে ডেটা "ফ্ল্যাশ" করতে পারেন, এবং এর ফলে ইনপুট / কনফিগারেশনটিকে someapp.exeপরবর্তী সময়ে চালানোর সময় প্রভাব ফেলবে। ফার্মওয়্যার না হলে এটাকে কী বলা হবে?

12
এই সত্যিই একটি ভাল প্রশ্ন। এটি "আমার টোস্ট টোস্ট করে না of" এর দুর্দান্ত বিরতি I প্রশ্ন।
জেসন_এল_বেন্স

17
ওয়েল, এই প্রশ্ন করবে ভাল, যদি না এটা প্রধান ত্রুটি হতে: কোড হল ডেটা, এবং ডেটা হতে পারে কোড - যতটা ভন নিউম্যান স্থাপত্য / মডেল সংশ্লিষ্ট করা হয়। সুতরাং, পুরো প্রশ্নটি নিরর্থক - যেহেতু কোডটি (এবং, সাধারণত হয় ) ডেটা হিসাবে বিবেচনা করা যেতে পারে এবং বিপরীতে; এছাড়াও, ওপিকে: কেন এন.ইউইকিপিডিয়া . org / উইকি / ফার্মওয়্যার চেক করবেন না ? এটা যখন, এইভাবে - এটা উত্তর এই খুব প্রশ্ন করতে, এবং ফার্মওয়্যার বিষয়ে অন্যান্য অনেক জিনিস আছে হয় কাছ থেকে প্রশ্ন "আমি 230V সকেট মধ্যে একটি 12V আলোর বাল্ব চলা করতে পারেন" একটা চমৎকার বিরতি এটি এখনও আমার বই উপ-সমাবস্থা আছে, .. ।
ভ্যাক্সকুইস

2
আমি নিশ্চিত যে উত্তরটি এখানে "হ্যাঁ"।
কনার ওল্ফ

7
মেশিন কোডটি সিপিইউর অপরিবর্তনীয় তারের কেবলমাত্র ডেটা ইনপুট।
ব্যবহারকারী 253751

2
একটি বইয়ের শব্দ বা চিঠি?
নিক টি

উত্তর:


27

প্রায়শই এই জাতীয় সংজ্ঞা সহ, আমরা বেশিরভাগ ক্ষেত্রে একমত হই, তবে ফার্মওয়্যার কী এবং কোনটি নয় তার মধ্যে সত্যিকারের দৃ firm় সীমানা নেই। ফার্মওয়্যার হয়

  • স্থায়ীভাবে সঞ্চিত (কিছু জ্ঞানী ব্যক্তি ছাড়া যিনি এটি পরিবর্তন করতে পারেন ...)
  • পরিবর্তন করার উদ্দেশ্যে নয় (বাদে ...)
  • অন্যান্য সফ্টওয়্যার সাহায্য ছাড়াই প্রসেসরের উপর কাজ করে (বাদে ... আপনি এটি পেয়েছেন?)

(ফার্মওয়্যার) দোভাষী দ্বারা যে ডেটা ব্যাখ্যা করা হয়: এটি প্রায়শই পেশাদার সেটিংয়ে করা হয় না, কারণ এটি পণ্যটিকে আরও ব্যয়বহুল করে তোলে: একই শেষ লক্ষ্য অর্জনের জন্য আরও মেমরি, সিপিইউ পাওয়ার ইত্যাদি প্রয়োজন। এটা তোলে হয় তবে মাঝে মাঝে hobbyist সেটিং ব্যবহার করা প্রায়ই ফ্ল্যাশ একটি বেসিক ইন্টারপ্রেটার সঙ্গে, এবং একটি (tokenized) বেসিক অ্যাপ্লিকেশন (খুব বা ফ্ল্যাশ মধ্যে) EEPROM মধ্যে সংরক্ষণ করা হয়। উদাহরণস্বরূপ পিকাএক্স এবং বিভিন্ন বেসিক স্ট্যাম্পগুলি পরীক্ষা করুন।

আইএমও যেমন একটি সেটিংসে বেসিক ইন্টারপ্রেটার এবং বেসিক অ্যাপ্লিকেশন উভয়ই ফার্মওয়্যার বলা উচিত।


স্টোরওয়্যার ইন্টারপ্রিটারের একটি আকর্ষণীয় ব্যবহার যা সঞ্চিত কোডটি ব্যাখ্যা করে (যা আইএমওকেও ফার্মওয়্যার হিসাবে বিবেচনা করা উচিত) এটি XBOX 360 স্টার্টআপ। এই দুর্দান্ত আলোচনা এটি কিছু বিশদ বর্ণনা করে।


MSalters নীচে FPGA কোড / কনফিগারেশন ডেটা ফার্মওয়্যার হিসাবে বিবেচনা করা উচিত কিনা তা অবাক করে।

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

সংজ্ঞাগুলি যখন সেগুলি কার্যকর না হয় তখন বিরক্ত করবেন না। মাইক্রোকোড ফার্মওয়্যার হয়? উপস্থাপনা কি ব্যাপার? প্রসঙ্গে কি ব্যাপার? আইওডব্লিউএম ফার্মওয়্যারের জন্য কি রম বিটস রয়েছে?


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


আমি এখন ভাবছি যে কোনও এফপিজিএ প্রোগ্রামটি ফার্মওয়্যার হিসাবে গণ্য হয়েছে কিনা। স্বজ্ঞাতভাবে, হ্যাঁ, তবে এটি কোনও প্রসেসরের উপর কাজ করে না। এবং এখনও এটি বিটগুলির একটি ধ্রুপদী কেস যা কোড এবং ডেটার মাঝখানে are
MSalters

টিআই 99/4 কম্পিউটার (1979) জিপিএল নামক একটি ভাষার জন্য আরওএম-তে একটি দোভাষী এবং জিপিএলে লিখিত একটি বেসিক ইন্টারপ্রেটার অন্তর্ভুক্ত করে। জিপিএলের একটি অপরিহার্য বৈশিষ্ট্যটি হ'ল এটি জিআরওএম চিপসে সঞ্চিত কোড চালাতে পারে (যা প্রাথমিকভাবে অনুক্রমিক অ্যাক্সেসের জন্য ডিজাইন করা হয়েছিল এবং এলোমেলো অ্যাক্সেস রমের চেয়ে শারীরিকভাবে আরও ছোট এবং সস্তা করা যেতে পারে) তাই টিআই 99/4 জন হিসাবে দেখা যেতে পারে বাজারজাত ব্যক্তিগত কম্পিউটার যার নকশা বেসিক স্ট্যাম্পের সাথে সাদৃশ্যপূর্ণ।
সুপারক্যাট

14

ফার্মওয়্যার এমন প্রোগ্রাম কোড যা ফ্ল্যাশ মেমরির মতো অ-উদ্বায়ী মেমরিতে সঞ্চয় থাকে। এই শব্দটি প্রায়শই এম্বেড থাকা সিস্টেমগুলির সাথে সংযোগে ব্যবহৃত হয়। এটি প্রসেসরের মতো একই চিপে বা একটি পৃথক ডিভাইসে থাকতে পারে।


ধন্যবাদ @ লিওন হেলার (+1) - উপরের ২ য় উদাহরণের জন্য কি এমন কোনও নাম আছে, যেখানে কোনও চিপের উপর একটি স্থির বাইনারিতে মূলত ইনপুট ডেটা "ফ্ল্যাশিং" হয়? বা এটি সাধারণত অনুশীলন করা হয় না? আবার ধন্যবাদ!
হেইনেবিহাইন্ডস

এটি কেবল তথ্য। এটি উদ্বায়ী বা নো-ভোল্টাইল স্মৃতিতে সংরক্ষণ করা যেতে পারে।
লিওন হেলার

আমি আপনার # 2 এর জন্য যে শব্দটি ব্যবহার করব তা হ'ল "চেহারা-সারণী"। আমি উদাহরণ হিসাবে ভাবতে পারি যে সংখ্যাসূচক নিয়ন্ত্রিত দোলকের জন্য ব্যবহৃত সাইন ফাংশন মান values
কেজগ্রিগরি

1
@ কেগ্রিগরি এটি একটি সন্ধানের টেবিল হতে পারে, এটি একটি ব্যাখ্যা করা প্রোগ্রাম হতে পারে, এটি চিত্রের ডেটা হতে পারে ...
glglgl

@glglgl সম্মত হয়েছে। আমি যুক্তি দিতে পারি যে সেগুলি চেহারা-সারণীর ফর্ম হিসাবে বিবেচনা করা যেতে পারে, তবে আমি মনে করি আমরা এখন পয়েন্টের পাশে আছি।
কেজগ্রিগরি

9

আমি মনে করি উভয় বিকল্পগুলি এক প্রকারের সঠিক, কেবল বিমূর্তনের বিভিন্ন স্তরে মাইক্রোপ্রসেসরের দিকে তাকানো। আপনি নিজের অপরিবর্তনীয় বাইনারি হিসাবে যা উল্লেখ করছেন তা হ'ল হার্ডওয়্যারই হবে যা এটি করতে পারে তাতে যথেষ্ট সীমিত। আনুষঙ্গিক নির্দেশের ঠিকানা 0x0000, ডিকোড নির্দেশিকা, সরবরাহ করা ঠিকানা / নিবন্ধন করুন, কার্যকর করুন, বর্ধিত নির্দেশের কাউন্টার করুন। এটি মাইক্রোপ্রসেসর পাইপলাইন, এবং আপনি এটি পরিবর্তন করতে পারবেন না। মাইক্রোকন্ট্রোলার মেমোরিতে নির্দেশাবলী সংরক্ষণ করে যা কাজ করে তা নিয়ন্ত্রণ করুন যা পরবর্তীতে ক্রমে পাঠানো হয়। সুতরাং মূলত, হ্যাঁ, ফার্মওয়্যার একটি অপরিবর্তনীয় প্রোগ্রামের জন্য কেবল ইনপুট ডেটা, বিমূর্ততার কম স্তরে। সাধারণত, তবে ফার্মওয়্যারটিকে একটি বিশেষ প্রোগ্রাম হিসাবে কল্পনা করা সহজ যা মাইক্রোপ্রসেসরকে নিয়ন্ত্রণ করে কারণ ধারণাগতভাবে এটি সেভাবে সহজ।


এই উত্তরটি পছন্দ করুন, +1, ডেটা এবং কোডের উপর জোর দেওয়ার জন্য ভাল করা শেষ পর্যন্ত একই জিনিস।
মান

ভন নিউম্যান আর্কিটেকচারের জন্য এগুলি একই রকম, কমপক্ষে। একবার আপনি আলাদা বাস পেয়ে গেলে, আপনি তর্ক করতে শুরু করতে পারেন যে তারা বিভিন্ন জিনিস, যদিও শেষ পর্যন্ত এটি সমস্ত বিট।
জেসন_এল_বেন্স

8

এটি আসলে উভয়ই।

ফার্মওয়্যারের একটি উদাহরণ হ'ল পিসি বায়োস, বিআইওএসের একটি অংশ এক্সিকিউটেবল হয় তবে বিআইওএসের অন্যান্য অংশগুলি প্রকৃতপক্ষে ডেটা থাকে, বিশেষত একটি বায়োস রমের বিভিন্ন ফাংশন গণনা করার জন্য প্রদর্শিত টেবিলগুলিতে নির্ধারিত প্রযুক্তির প্রকার নির্বিশেষে উপর. প্রায়শই ডেটা উভয় ক্ষেত্রে সংরক্ষণ করা হয়, অন্য ফ্ল্যাশ মেমরি, ব্যাটারি বা ক্যাপাসিটার ব্যাকড র্যাম হয় সিএমওএস এসআরএএম বা অন্য কোনও সামঞ্জস্যপূর্ণ মেমরি চিপ প্রযুক্তি।

ফার্মওয়্যার, একটি জেনেরিক শব্দটি অপরিবর্তিত / অস্থির মেমরির জন্য ব্যবহৃত হয়, এটি বিদ্যুৎচক্র অনুযায়ী ততক্ষণ এবং অ্যাক্সেসযোগ্য যতক্ষণ না সার্কিটের সাথে বৈদ্যুতিকভাবে কোনও ভুল থাকে না বা কোনও প্রোগ্রামিং চক্র আটকে থাকে, EEPROMs বা ফ্ল্যাশের জন্য ROM- র বিষয়বস্তু।

সংজ্ঞা অনুসারে ফার্মওয়্যার হ'ল অ্যাক্সেসের সর্বনিম্ন স্তর, যা আপনার সিস্টেম বা এমবেড থাকা উপাদানগুলিতে আপনি যে হার্ডওয়্যারটি ইনস্টল করেছেন তা আরম্ভ করে, পরীক্ষা করে এবং নিম্ন স্তরের রুটিন দেয় (কখনও কখনও বিআইওএস ফাংশন কল হিসাবে দেখা যায়) যা আপনার অপারেটিং সিস্টেমটি উপাদানগুলি ব্যবহার করতে সক্ষম হতে হবে আপনার সিস্টেমে পুরানো দিনগুলিতে, বিআইওএস বা বেসিক ইনপুট আউটপুট সিস্টেমটিতে "বেসিক" নামে একটি প্রোগ্রামিং ভাষাও অন্তর্ভুক্ত ছিল, যেমন কমোডোর 64৪ এবং ১৯ 1970০ এর অন্যান্য ব্যক্তিগত কম্পিউটার, অবশ্যই সেখানে পুরানো কম্পিউটার ছিল যেগুলি তাদের জন্য বেসিক তৈরি করেছিল পেশাদার কম্পিউটার বিজ্ঞানী দ্বারা। যদি আপনি কখনও কোনও চরিত্র বা প্রতীক রমের কথা শুনে থাকেন যা সিস্টেমটি সেই চরিত্রের রমটিতে যেতে এবং ক্রমগুলি অক্ষরে সন্ধান করতে বা এটির সাথে কাজ করার জন্য পুরো চিপটিকে র‌্যামে ফেলে দেওয়ার জন্য নির্বাহী বা প্রোগ্রাম রমের জন্য খাঁটি ডেটা ফর্ম করে it আছে।

ডিফল্ট PROM, EPROM, EEPROM, ফ্ল্যাশ প্রোগ্রামাররা .hex বা .bin এর প্রত্যয় হিসাবে একটি চিপে ফার্মওয়্যার বার করে, যা অনুরূপ ফর্ম্যাট, এটি আপনার অ্যাপ্লিকেশনটির উপর নির্ভর করে যা আপনি চিপ, ফার্মওয়্যারের কাছে প্রেরণ করতে ব্যবহার করছেন।

এছাড়াও, ফার্মওয়্যার ব্লব ফাইলগুলি রয়েছে, এগুলি লাইব্রেরি এবং রুটিন আকারে এক্সিকিউটেবল যা রান-টাইমে লোড করা হয়, এর একটি ভাল উদাহরণ হ'ল বেতার হার্ডওয়্যার ড্রাইভারগুলি, আপনার কার্ডের মাধ্যমে সমস্ত হার্ডওয়্যার চালনার জন্য তাদের যথেষ্ট কোড রয়েছে your কম্পিউটার সিস্টেম। পার্থক্যটি হ'ল কার্ড এবং ইউএসবি ভিত্তিক ফার্মওয়্যার আসলে এগুলিতে সঞ্চয় করা হয় না তবে আপনার হার্ড ডিস্কে থাকে এবং মেমরিতে লোড হয়। এটি মূলত একটি অনুবাদ পরিষেবা স্তর এবং ফিল্টার হিসাবে কাজ করে। এটি উভয় ডেটা এবং কোডও।

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

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

আরও কোনও প্রশ্ন পেয়েছি, আমি আপনার উত্তর দিয়ে খুশি হব।


6

ফার্মওয়্যার হ'ল এমন একটি কোড যা কোনও ধরণের ডেভলপমেন্ট এনভায়রনমেন্টে তৈরি করা হয়েছিল ঠিক যেমন সফ্টওয়্যার কোডের মতো, তবে এটি মেশিন-কোডে সিদ্ধ হয়ে যায় যাতে সিপিইউ এটি বুঝতে পারে। আপনি যদি কোনও মাইক্রোকন্ট্রোলার বা অন্য কোনও চিপের স্মৃতি ফেলে দেন তবে আপনি দেখতে পাবেন যে এটি সি কোড বা আমরা এটি কীভাবে প্রোগ্রাম করি তাতে কিছুই মনে হচ্ছে না।

সুতরাং আপনি এটির জন্য একটি .EXE প্রোগ্রাম করবেন না, যেহেতু এটি কোনও সংকলনযুক্ত ওএস পরিবেশে চালিত একটি প্রোগ্রাম। আপনি সাধারণত একটি হেক্স, বা সম্ভবত একটি। প্রোগ্রামিং করতে পারবেন, এটি আপনি যে ডিভাইসটি প্রোগ্রামিং করছেন তার উপর সত্যিই নির্ভর করে তবে কোনও বিষয় নয় কারণ আপনি ফাইল-প্রকারের সাথে সম্পর্কিত নন যেহেতু আপনার সংকলক পরিবর্তে সংকলন করবে মেশিনের কোডে কোড লিখে এটিকে চিপ অন-চিপ ফ্ল্যাশে বা যা কিছু স্টোরেজ স্কিমের মধ্যে রেখে দিন।

ফার্মওয়্যারটি সাধারণত পরিবেশগত শর্তসাপেক্ষে প্রোগ্রামিং করতে হয় তার মধ্যে অপরিবর্তনীয় You আপনি ফার্মওয়্যার কোডটি পরিবর্তন করতে পারবেন না এবং এটি ছেড়ে দিতে পারবেন না, আপনাকে পরিবর্তনটি করতে হবে, এটি সংকলন করতে হবে এবং ডিভাইসটি পুনরায় ফ্ল্যাশ করতে হবে।

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

2
"তবে এটি মেশিন-কোডে সিদ্ধ হয়ে যায় যাতে সিপিইউ এটি বুঝতে পারে।" সফটওয়্যার কোডের মতোই, যতক্ষণ না এটি সি বা অন্য কিছুতে লেখা থাকে।
glglgl

1
প্রসেসররা যা বোঝে তা হ্যাঁ, বাইনারি তবে তাদের আমাদের কাছে মেমোমিকমিক অপারেশন কোড (ওপ কোডগুলি যেমন এটি শিল্পে দেখা যায়) নামে কিছু রয়েছে যা এখনও আমাদের বিধানসভা ভাষায় প্রোগ্রাম করে যা মেশিন ল্যাঙ্গুয়েজের এক ধাপ উপরে হয় [বাইনারি ])।

0

ফার্মওয়্যার একটি জেনেরিক শব্দ যা সাধারণত সফ্টওয়্যার ওয়ার্ল্ড এবং হার্ডওয়্যার ওয়ার্ল্ডের মাঝামাঝি সময়ে বাস করে এমন কিছু নির্দিষ্ট করতে ব্যবহৃত হয়।

হার্ডওয়্যার পরিবর্তন করা কঠিন। সফ্টওয়্যার পরিবর্তন করা সহজ। ফার্মওয়্যারটি হার্ডওয়্যার হিসাবে পরিবর্তন করা ততটা কঠিন নয়, তবে সফ্টওয়্যার থেকে পরিবর্তন করা শক্ত।

এটি এক্সিকিউটেবল কোড, ডেটা, বা কনফিগারেশন তথ্য (এফপিজিএ / পিএলডি / ইত্যাদি হিসাবে) যা পরিবর্তন করা যেতে পারে আলোচনা করতে ব্যবহার করা যেতে পারে।


শব্দ এবং সংজ্ঞা একটি বিস্তৃত অর্থে এটি সত্য। যদিও, এই চিপগুলি আসলে কোড বা ডেটা নয়। সংকলকটি সম্পূর্ণরূপে যৌক্তিক নকশাগুলি তৈরি করে, সম্পূর্ণ সমাধান হিসাবে বা সিস্টেমের বিভিন্ন অংশ একসাথে টুকরো করার জন্য আঠালো যুক্তিযুক্ত। সমাধানের জন্য শারীরিক and৪ এবং 54 সিরিজের লজিক গেটগুলি এবং নিবন্ধগুলি ব্যবহার করার পরিবর্তে। আদম, আপনি এনেছিলেন বলে আমি আসলেই খুশি am

0

অন্তর্নিহিত থেকে ফার্মওয়্যার কী তা আরও ব্যাখ্যা করার জন্য।

ফার্মওয়্যার, এমন একটি কোড যা খুব নির্দিষ্ট হার্ডওয়্যারে চালিত হয়, যার অর্থ এটির কোডগুলি তার জন্য লেখা হার্ডওয়ারের সাথে নির্দিষ্ট, এটি চিপস বা ইন্টারফেসগুলির পরিবার হতে পারে বা কেবল একটি আইটেমের জন্য বোঝানো যেতে পারে।

মূলত ফার্মওয়্যার এটি যা করে;

  1. প্রদত্ত প্রসেসরের হাতে নেওয়া ও সম্পাদনের জন্য কঠোর নির্দেশাবলী রয়েছে, একে "বুটস্ট্র্যাপ" বলা হয়। যা সবচেয়ে বেশি বুটযোগ্য কম্পিউটারগুলি তাদের বিআইওএস এ রয়েছে।

  2. ফার্মওয়্যারের নির্দেশের মাধ্যমে বলা হার্ডওয়ার শুরু করুন।

  3. লাফ ইন / উপরে জাম্প টেবিল।

  4. প্রদত্ত ডিভাইসে নিবন্ধের অ্যাক্সেসকে অ্যাক্সেসযোগ্য করে তুলুন।

  5. শীতকালীন (পাওয়ার অফ অফ স্টেট) বা উষ্ণ সূচনা (স্বাভাবিক পুনরায় বুট বা রিসেট পিন ব্যবহার করা হয়েছে) পরে একবার বিআইওএস ব্যবহার করার পরে প্রস্থান রুটিনে নিয়ন্ত্রণ বন্ধ করুন।

  6. বেশিরভাগ বায়োস (ফার্মওয়্যার) একটি নির্দিষ্ট চিপসেটের জন্য মাথায় রেখে তৈরি করা হয়েছে এবং কম্পিউটার বা এম্বেড থাকা ডিভাইসে কোনও প্রদত্ত বাসলাইনের সাথে কিছু সংযুক্ত থাকতে পারে এমন কোনও ডেটা এবং মাংসের সমস্ত কার্য নির্মূল করে।

  7. হার্ড ডিস্কগুলি স্টোরেজ সমাধানের একটি ভাল উদাহরণ যা নিজের মধ্যে এবং একটি এম্বেডড ডিভাইস, তারও এতে একটি বায়োস থাকে এবং একটি চিপে একটি ফর্মওয়্যার থাকে।

মূলত, সমস্ত ফার্মওয়্যার হ'ল নির্দেশাবলীর একগুচ্ছ যা অন্য প্রসেসর একটি কথিত ডিভাইস থেকে কার্যকারিতা অর্জনের জন্য করে। এটি সফ্টওয়্যার যা কোনও দৈহিক ডিভাইসে লোড করা হয়, শক্তি হারাতে পেরে, ডিভাইসটি পুনরায় শক্তি ফিরে পাওয়ার পরে এটি সেখানে থাকবে।

প্রযুক্তিগতভাবে, আপনি বাইনারি ফাইলগুলি তৈরি করতে যে কোনও প্রোগ্রামিং বা স্ক্রিপ্টিং ভাষা ব্যবহার করতে পারেন। আপনাকে কেবল প্রসেসরটি কীভাবে লক্ষ্যবস্তু করে চলেছে তা জানতে হবে, আসল ওপ কোডগুলি, অভ্যন্তরীণ রেজিস্টার (তারা যা করছেন তা একা ছেড়ে দিন), বাইনারি এবং হেক্সাডেসিমাল নম্বর সিস্টেম শিখতে এবং কীভাবে একটি এসেম্বলার তৈরি করতে পারে তা সংরক্ষণ করতে পারে সমাবেশ ভাষায় আপনার কোড। এটি সম্পূর্ণ হওয়ার পরে আপনি অন্য প্রোগ্রামটিকে বাইনারি রূপান্তর করতে টাস্ক করতে পারেন, তারপরে এটি একটি .bin বা .hex ফাইল হিসাবে সংরক্ষণ করুন।

আপনি যদি জানতে চান যে কীভাবে অ্যাডা, সি, সি ++, ডি এবং অন্যান্য প্রোগ্রামিং ল্যাঙ্গুয়েজগুলি তাদের "টোকেন" রূপান্তর করে যা তাদের স্থানীয় কোড যা সিউডো অপ-কোডগুলিকে সিউডো অপ-কোডগুলিকে মেশিনের ভাষায় রূপান্তরিত করে। বেশ কয়েকটি বই রয়েছে যা আমি আপনাকে পড়ার পরামর্শ দিচ্ছি, কয়েকটি বেশ কয়েকটি প্রাথমিক এবং খুব নির্দিষ্ট প্রসেসরের চারপাশে কেন্দ্রীভূত তবে এটি শেখা ভাল। আমি আপাতত আপনাকে একটি বই দেব, কারণ আমি আপনাকে বা অন্য কাউকে ডুবতে চাই না যে এই তথ্যতে পড়া।

  1. চার্লস এন ফিশার এবং রিচার্ড জে লে ব্ল্যাঙ্ক, জুনিয়র দ্বারা 'সি' দিয়ে একটি সংকলক তৈরি করছিলেন r.
  2. এই সাইটটি দেখুন, এটি আইবিএম পিসিতে পাওয়া x86 চিপসেটের উপর ভিত্তি করে; http://www.laynetworks.com/assembly%20tutorials.htm

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

অ্যাসেম্বলি ভাষা এবং মেশিন ভাষার মতো নয়, আপনি যদি আপনার হার্ডওয়ারের সুনির্দিষ্ট বিবরণগুলি না জানেন তবে আপনি এডা, সি, সি ++, ডি তে আরও অনেক কিছু নিয়ে পালিয়ে যেতে পারেন। সমাবেশ এবং মেশিনের ভাষায়, আপনি কী করছেন তা যদি আপনি না জানেন তবে হয় খারাপ কিছু ঘটবে বা কোড কাজ করবে না। আমি উত্তরোত্তর কেস পছন্দ করি, বনাম কিছু খারাপ কাজ করে না।

দ্রষ্টব্য: উপরের উত্তর সম্পর্কে, ফ্ল্যাশ র‌্যাম সম্পর্কে, এমন কোনও জিনিস নেই, ফ্ল্যাশ রম রয়েছে তবে ফ্ল্যাশ র‌্যাম নেই। ফ্ল্যাশ রমে তাদের মধ্যে ফার্মওয়্যার রয়েছে, ব্যাটারি বা ক্যাপাসিটরের ব্যাকযুক্ত র‌্যামগুলি রয়েছে বা আপনি যে বিআইওএসের বিকল্পগুলি সেট করেছেন সেগুলির জন্য পরামিতি রয়েছে এমন আরও একটি ফ্ল্যাশ রম রয়েছে।

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

নতুন পিসিগুলিতে, আপনার কাছে ফার্মওয়্যারটির জন্য ফ্ল্যাশ মেমরি রয়েছে এবং আপনার ব্যাটারি ব্যাকড এসআরএএম রয়েছে (ডিআআরএএম চিপসের মতো ক্রমাগত রিফ্রেশ করার দরকার নেই, এটি একটি পুরানো প্রযুক্তির উপর ভিত্তি করে)।


0

এম্বেডড সিস্টেমগুলির ক্ষেত্রে, ফ্ল্যাশিং ফার্মওয়্যার মানে আপনি একটি ফ্ল্যাশিং ডিভাইস ব্যবহার করে একটি মাইক্রো-নিয়ন্ত্রকের রম মুছে ফেলেছেন এবং নতুন কোড দিয়ে পুনরায় লিখেছেন। ফ্লাশ করা এই ফার্মওয়্যারটি এইচএক্স ফর্মে রয়েছে।

ওএস সম্পর্কিত টার্মিনোলজির ক্ষেত্রে এটি রমেও ফ্ল্যাশ হয়েছে তবে আপডেট আসার সময় এটি ফ্ল্যাশ করা কোনও ওএসের দায়িত্ব।


0

আমি বিশ্বাস করি যে "historicalতিহাসিক" দৃষ্টিকোণটি ব্যবহার করা ফার্মওয়্যারটি কী তা আরও একটি প্রাথমিক ধারণা দেয় ।
এটি প্রথমে "হার্ড-ওয়্যার" দিয়ে শুরু হয়। প্রদত্ত ফাংশন সরবরাহ / তৈরি করতে, কেউ টিউব, রিলে, ট্রানজিস্টর এবং আইসি ব্যবহার করতে পারে। আপনি এই উপাদানগুলির একটি সংখ্যা ব্যবহার করবেন এবং আপনি একটি ডিভাইস তৈরি করবেন যা প্রয়োজনীয় ফাংশনটি সম্পাদন করবে। এটি "হার্ড-ওয়্যার" হিসাবে বিবেচিত হয়েছিল কারণ আপনি যদি ফাংশনটি পরিবর্তন করতে চান (বা প্রয়োজন), আপনার তার, সকেট ইত্যাদি সসোল্ডার করতে হবে এবং এটি করা "হার্ড" ছিল । সুতরাং, একটি ফাংশন বাস্তবায়নের এই পদ্ধতিটি হার্ডওয়্যার ব্যবহার হিসাবে পরিচিত হয়ে উঠেছে। সিপিইউ, র‌্যাম এবং কোড ব্যবহার করে একটি ফাংশন তৈরির অন্য পদ্ধতি হয়ে ওঠে এবং "সফট-ওয়্যার" নামে পরিচিতি লাভ করে to make design changes." However, there was also a need (mostly from manufacturers), to complete as much of a design as early as possible, but be capable of making "last minute" design changes as easy and cost-effective as possible. The use of ROMs allowed this flexibility up to the point of "first ship." EEPROMS allow changes even after "first ship" (in the field). The code needed/used for the ROMs and PROMs was give the name of "firmware."

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.