फर्मवेयर

कम्प्यूटिंग में, फर्मवेयर संगणक सॉफ्टवेयर का एक विशिष्ट वर्ग है जो डिवाइस के विशिष्ट   हार्डवेयर (संगणक धातु सामग्री) के लिए  निम्न-स्तर नियंत्रण प्रदान करता है। फ़र्मवेयर, जैसे पर्सनल संगणक का  बीआईओएस, में डिवाइस के मूलभूत कार्य सम्मिलित हो सकते हैं, और  ऑपरेटिंग सिस्टम  जैसे उच्च-स्तरीय सॉफ़्टवेयर को  हार्डवेयर अमूर्त  सेवाएँ प्रदान कर सकते हैं। कम जटिल उपकरणों के लिए, फर्मवेयर डिवाइस के पूर्ण ऑपरेटिंग सिस्टम के रूप में कार्य कर सकता है, सभी नियंत्रण, निगरानी और डेटा बदलने का  कार्य करता है। फ़र्मवेयर वाले उपकरणों के कुछ विशिष्ट उदाहरण  अंतः स्थापित प्रणालियाँ  ( उपकरणों के नियंत्रण के लिए सॉफ्टवेयर  चलाना), घरेलू और व्यक्तिगत प्रयोग के उपकरण, संगणक और संगणक बाह्य उपकरण हैं।

फर्मवेयर अनह्रासी मेमोरी डिवाइस जैसे रीड ऑनली मैमोरी (आरओएम), ईपीआरओएम ,  ईईपीआरओएम  और  फ्लैश मेमोरी  में आयोजित किया जाता है। फर्मवेयर को अपडेट करने के लिए आरओएम  एकीकृत परिपथ  को भौतिक रूप से बदलने की आवश्यकता होती है, या ईपीआरओएम या फ्लैश मेमोरी को एक विशेष प्रक्रिया के माध्यम से पुन: प्रोग्राम करने की आवश्यकता होती है। कुछ फर्मवेयर मेमोरी डिवाइस स्थायी रूप से स्थापित होते हैं और जिन्हें निर्माण के बाद बदले नहीं जा सकते। फ़र्मवेयर को अपडेट करने के सामान्य कारणों में बग को ठीक करना या डिवाइस में फ़ीचर जोड़ना सम्मिलित है।

इतिहास और शब्द व्युत्पत्ति
फ़र्मवेयर शब्द का पहली बार प्रयोग एस्चर ओप्लर ने 1967 के डाटामेशन  लेख में किया था,  जिसका प्रयोग  "हार्डवेयर" और "सॉफ्टवेयर" के बीच एक मध्यस्थ शब्द के रूप में किया था।

इस लेख में, ओपलर ने एक नए तरह के संगणक प्रोग्राम का जिक्र किया था, जिसका प्रयोगकर्ता के दृष्टिकोण से पारंपरिक कार्यक्रमों से पृथक व्यावहारिक और मनोवैज्ञानिक उद्देश्य था।

जैसे-जैसे संगणक जटिलता में बढ़ने लगे, यह स्पष्ट हो गया कि प्रयोगकर्ता के विवेक पर अधिक जटिल प्रोग्राम चलाने के लिए आवश्यक एक सुसंगत वातावरण प्रदान करने के लिए पहले विभिन्न कार्यक्रमों को प्रारंभ करने और चलाने की आवश्यकता है। इसके लिए संगणक को उन प्रोग्रामों को स्वचालित रूप से चलाने के लिए प्रोग्रामिंग की आवश्यकता होती है। इसके अतिरिक्त, कंपनियों, विश्वविद्यालयों और विपणक के रूप में कम तकनीकी ज्ञान वाले लोगों को संगणक बेचना चाहते थे, एक साधारण प्रयोगकर्ता को व्यावहारिक उद्देश्यों के लिए आसानी से कार्यक्रम चलाने की अनुमति देने के लिए अधिक स्वतः नियंत्रण आवश्यक हो गया। इसने एक प्रकार के सॉफ़्टवेयर को जन्म दिया जिसे एक प्रयोगकर्ता सचेत रूप से नहीं चलाएगा, और इसने ऐसे सॉफ़्टवेयर का नेतृत्व किया जिसके बारे में एक साधारण प्रयोगकर्ता को पता भी नहीं चलेगा।

मूल रूप से, इसका अर्थ एक लिखने योग्य नियंत्रण स्टोर (एक छोटी विशेष हाई-स्पीड मेमोरी) की सामग्री से है, जिसमें माइक्रोकोड होता है जो संगणक के निर्देश सेट को परिभाषित और कार्यान्वित करता है, और जिसे केंद्रीय प्रसंस्करण इकाई (सीपीयू) के निर्देशों को संशोधित करने या संशोधित करने के लिए पुनः लोड किया जा सकता है। ) निष्पादित कर सकता है। जैसा कि मूल रूप से प्रयोग किया जाता है, फ़र्मवेयर हार्डवेयर (स्वयं सीपीयू) और सॉफ़्टवेयर (सीपीयू पर चलने वाले सामान्य निर्देश) के विपरीत होता है। यह सीपीयू मशीन निर्देशों से नहीं बना था, बल्कि मशीन निर्देशों के कार्यान्वयन में सम्मिलित निचले स्तर के माइक्रोकोड से बना था। यह हार्डवेयर और सॉफ्टवेयर के बीच की सीमा पर उपस्थित था; इस प्रकार इसका नाम फर्मवेयर था। समय के साथ, इसके प्रयोग ने किसी भी संगणक प्रोग्राम को निरूपित करने के लिए फर्मवेयर शब्द का विस्तार किया, जो कि पीसी पर बीआईओएस, स्मार्टफोन पर  बूट फर्मवेयर, संगणक बाह्य उपकरणों, या  उपभोक्ता इलेक्ट्रॉनिक्स जैसे  माइक्रोवेव ओवन ,   रिमोट नियंत्रण प्रणाली  सहित हार्डवेयर से मजबूती से जुड़ा हुआ है।

संगणक
कुछ स्थितियों में, विभिन्न फ़र्मवेयर घटक उतने ही महत्वपूर्ण हैं जितने कि एक कार्यशील संगणक में ऑपरेटिंग सिस्टम महत्वपूर्ण होते है। चूंकि, अधिकांश आधुनिक ऑपरेटिंग सिस्टमों के विपरीत, फर्मवेयर में शायद ही कभी एक अच्छी तरह से विकसित स्वचालित तंत्र होता है जो यूनिट को शिपिंग के बाद पता चला किसी भी कार्यक्षमता के मुद्दों को ठीक करने के लिए खुद को अपडेट करता है। जो यूनिट को शिपिंग के बाद पता चला किसी भी कार्यक्षमता के मुद्दों को सही करने के लिए खुद को अपडेट करता है।

प्रयोगकर्ता द्वारा बीआईओएस को एक छोटे प्रयोगिता कार्यक्रम के माध्यम से मैन्युअल रूप से अपडेट किया जा सकता है। इसके विपरीत, मास भण्डारण डिवाइस (हार्ड-डिस्क ड्राइव, ऑप्टिकल डिस्क ड्राइव, फ्लैश मेमोरी भण्डारण जैसे सॉलिड स्टेट ड्राइव) में फर्मवेयर कम बार अपडेट किया जाता है, क्यों ही न फर्मवेयर के लिए फ्लैश मेमोरी (आरओएम, ईईपीआरओएम के अतिरिक्त) भण्डारण का प्रयोग किया जाता है।

अधिकांश संगणक सहायक उपकरण स्वयं विशेष प्रयोजन वाले संगणक होते हैं। प्रिंटर, स्कैनर, वेबकैम और यूएसबी फ्लैश ड्राइव  जैसे उपकरणों में आंतरिक रूप से संग्रहीत फर्मवेयर होता है; कुछ उपकरण अपने फ़र्मवेयर के क्षेत्र उन्नयन की अनुमति भी दे सकते हैं।

संगणक फर्मवेयर के अन्य उदाहरणों में सम्मिलित हैं:
 * एकीकृत एक्सटेंसिबल फर्मवेयर इंटरफ़ेस |(यू)  इटेनियम  सिस्टम, इंटेल-आधारित  मैकिनटोश  और कई नए पीसी पर इस्तेमाल किया जाने वाला ईएफआई-अनुपालन फ़र्मवेयर
 * हार्ड डिस्क ड्राइव, सॉलिड-स्टेट ड्राइव  या ऑप्टिकल डिस्क ड्राइव फर्मवेयर
 * ग्राफिक्स कार्ड  का  वीडियो बीआईओएस
 * खुला फर्मवेयर, रोहित सूक्ष्म निकाय और  ओरेकल कॉर्पोरेशन  के  एसपीऐआरसी -आधारित संगणकों में, एप्पल के  पावरपीसी -आधारित संगणकों में, और  जेनेसी  के संगणकों में प्रयोग किया जाता है
 * ऐआरसीएस (संगणक), सिलिकॉन ग्राफिक्स  से संगणक में प्रयोग किया जाता है
 * किकस्टार्ट (अमिगा) अमीगा), संगणक की अमिगा  लाइन में प्रयोग किया जाता है ( पावर ऑन सेल्फ टेस्ट, हार्डवेयर इनिट +  प्लग करें और खेलें   ऑटोकॉन्फ़िगरेशन |परिधीय का स्वतः- समाकृति ,  कर्नेल (ऑपरेटिंग सिस्टम) , आदि)
 * रन-टाइम अमूर्त सेवाएं (रन-टाइम एब्स्ट्रक्शन सर्विसेज),  आईबीएम  से संगणक में प्रयोग की जाती हैं
 * साधारण फर्मवेयर पर्यावरण (सीएफई)

घर और व्यक्तिगत प्रयोग के उत्पाद
, अधिकांश पोर्टेबल म्यूजिक प्लेयर  फर्मवेयर अपग्रेड का समर्थन करते हैं। कुछ कंपनियां नए प्लेएबल फ़ाइल फ़ॉर्मेट ( कोडेक्स ) जोड़ने के लिए फ़र्मवेयर अपडेट का प्रयोग करती हैं। फर्मवेयर अपडेट के साथ बदल सकने वाली अन्य सुविधाओं में जीयूआई या यहां तक ​​कि बैटरी जीवन भी सम्मिलित है। अधिकांश  चल दूरभाष  में समान कारणों से एयर फर्मवेयर अपग्रेड क्षमता पर फर्मवेयर होता है; कुछ को स्वीकृति या ध्वनि की गुणवत्ता बढ़ाने के लिए अपग्रेड भी किया जा सकता है।

ऑटोमोबाइल
1996 से, अधिकांश ऑटोमोबाइल ने यांत्रिक समस्याओं का पता लगाने के लिए एक ऑन-बोर्ड संगणक और विभिन्न सेंसर लगाए हैं।, आधुनिक वाहन संगणक-नियंत्रित एंटी- रोधी ब्रेकिंग प्रणाली (ABS) और संगणक-संचालित संचरण नियंत्रण इकाई  (TCUs) का भी प्रयोग करते हैं। ड्राइवर इस विधि से गाड़ी चलाते समय इन-डैश जानकारी भी प्राप्त कर सकता है, जैसे कि रीयल-टाइम ईंधन बचत और टायर प्रेशर रीडिंग। स्थानीय डीलर अधिकांश वाहन फ़र्मवेयर को अपडेट कर सकते हैं।

अन्य उदाहरण
अन्य फर्मवेयर अनुप्रयोगों में सम्मिलित हैं:
 * घरेलू और व्यक्तिगत उपयोग के उत्पादों में:
 * वॉशिंग मशीन के लिए समय और नियंत्रण प्रणाली
 * आधुनिक टेलीविजन  में ध्वनि और वीडियो विशेषताओं के साथ-साथ चैनल सूची को नियंत्रित करना
 * नेटवर्क राउटर, प्रसार बदलना  और  फ़ायरवॉल (कंप्यूटिंग)  में:
 * लिब्रेसीएमसी –  लिनक्स-लिबर  कर्नेल पर आधारित 100%  मुफ्त सॉफ्टवेयर  राउटर वितरण
 * आईपीफायर –  एक  खुला स्रोत सॉफ्टवेयर  |  लिनक्स कर्नेल  पर आधारित ओपन-सोर्स फ़ायरवॉल/राउटर वितरण
 * fli4l –  लिनक्स कर्नेल पर आधारित एक ओपन-सोर्स फ़ायरवॉल/राउटर वितरण
 * ओपनवार्ट –  लिनक्स कर्नेल पर आधारित एक ओपन-सोर्स  फ़ायरवॉल/राउटर वितरण
 * मोनोवाल –  मुफ्तBSD  का एक अंतः स्थापित फ़ायरवॉल वितरण
 * ट्रेडमार्क युक्त फर्मवेयर
 * नेटवर्क से जुड़े भण्डारण सिस्टम में:
 * एनऐएस4 फ्री – फ्रीBSD पर आधारित एक ओपन-सोर्स NAS ऑपरेटिंग सिस्टम
 * ओपनफाइलर –  लिनक्स कर्नेल पर आधारित एक ओपन-सोर्स NAS ऑपरेटिंग सिस्टम
 * मालिकाना फर्मवेयर
 * क्षेत्र में प्रोग्राम की जा सकने वाली द्वार श्रंखला (एफपीजीऐ) कोड को फर्मवेयर कहा जा सकता है

चमकता
फ्लैशिंग नए डेटा के साथ ईईपीआरओएम या इलेक्ट्रॉनिक डिवाइस में उपस्थित फ्लैश मेमोरी मॉड्यूल में निहित उपस्थिता फर्मवेयर या डेटा की अधिलेखन सम्मिलित है। यह एक डिवाइस को अपग्रेड करने के लिए किया जा सकता है या उपकरण के प्रकार्य से संबद्ध सेवा प्रदाता को बदलने के लिए, जैसे कि एक मोबाइल फोन सेवा प्रदाता से दूसरे में बदलना या नया ऑपरेटिंग सिस्टम स्थापित करना। यदि फर्मवेयर अपग्रेड करने योग्य है, तो यह अधिकांश प्रदाता से एक प्रोग्राम के माध्यम से किया जाता है, और अधिकांश पुराने फ़र्मवेयर को अपग्रेड करने से पहले सहेजा जाता है ताकि प्रक्रिया के विफल होने पर या नए संस्करण के खराब होने पर इसे वापस लाया जा सके। वेंडर फ्लैशिंग टूल्स के लिए फ्री सॉफ्टवेयर बदलाव विकसित किए गए हैं, जैसे कि  फ़्लैशरोम

फर्मवेयर हैकिंग
कभी-कभी, तृतीय पक्ष नई सुविधाएँ प्रदान करने या छिपी हुई कार्यक्षमता को अनलॉक करने के लिए फ़र्मवेयर का एक अनौपचारिक नया या संशोधित (बाद का) संस्करण विकसित करते हैं; इसे कस्टम फर्मवेयर  कहा जाता है।  पोर्टेबल मीडिया प्लेयर  के फर्मवेयर प्रतिस्थापन के रूप में एक उदाहरण  रॉकबॉक्स  है। विभिन्न उपकरणों के लिए कई  होमब्रू (वीडियो गेम)  परियोजनाएं हैं, जो अधिकांश पहले से सीमित उपकरणों (जैसे, चल रहे  कयामत (1993 वीडियो गेम)   आइपॉड  पर) में सामान्य-उद्देश्य कंप्यूटिंग कार्यक्षमता को अनलॉक करती हैं।

फर्मवेयर हैक सामान्यतः खुद को स्थापित करने या चलाने के लिए कई उपकरणों पर फर्मवेयर अपडेट सुविधा का लाभ उठाते हैं। चूँकि, कुछ को चलाने के लिए शोषण (संगणक सुरक्षा) का सहारा लेना चाहिए, क्योंकि निर्माता ने हार्डवेयर को  अहस्ताक्षरित कोड  चलाने से रोकने के लिए लॉक करने का प्रयास किया है।

अधिकांश फ़र्मवेयर हैक मुफ़्त सॉफ़्टवेयर होते हैं।

एचडीडी फर्मवेयर हैक
मॉस्को स्थित कास्परस्की लैब  ने डेवलपर्स के एक समूह ने इसे  समीकरण समूह  के रूप में संदर्भित किया है, जिसने हार्ड डिस्क ड्राइव फर्मवेयर संशोधनों को विभिन्न ड्राइव मॉडल के लिए विकसित किया है, जिसमें  ट्रोजन हॉर्स (कंप्यूटिंग)  सम्मिलित है जो डेटा को उन स्थानों पर ड्राइव पर संग्रहीत करने की अनुमति देता है जो ड्राइव को फॉर्मेट या वाइप करने पर भी मिटाया नहीं जाएगा। चूंकि कैस्पर्सकी लैब की रिपोर्ट ने स्पष्ट रूप से यह दावा नहीं किया कि यह समूह संयुक्त राज्य अमेरिका की  राष्ट्रीय सुरक्षा एजेंसी  (NSA) का हिस्सा है, विभिन्न इक्वेशन ग्रुप सॉफ्टवेयर के कोड से प्राप्त साक्ष्य बताते हैं कि वे एनएसऐ का हिस्सा हैं।

कैस्पर्सकी लैब के शोधकर्ताओं ने इक्वेशन ग्रुप द्वारा किए गए उपक्रमों को अब तक के सबसे उन्नत हैकिंग ऑपरेशन के रूप में वर्गीकृत किया, साथ ही कम से कम 42 देशों में इक्वेशन ग्रुप द्वारा किए गए लगभग 500 संक्रमणों का दस्तावेजीकरण किया।

सुरक्षा जोखिम
कैननिकल (कंपनी) कंपनी के संस्थापक  मार्क शटलवर्थ, जो  उबंटू लिनक्स  वितरण को बनाए रखता है, ने प्रोप्रायटरी सॉफ़्टवेयर फ़र्मवेयर को एक सुरक्षा जोखिम के रूप में वर्णित किया है, जिसमें कहा गया है कि आपके डिवाइस पर फ़र्मवेयर  एनएसए  का सबसे अच्छा दोस्त है और फ़र्मवेयर को स्मारकीय अनुपात का ट्रोजन हॉर्स कहता है।. उन्होंने जोर देकर कहा है कि निम्न-गुणवत्ता, मालिकाना सॉफ्टवेयर  फर्मवेयर सिस्टम सुरक्षा के लिए एक बड़ा खतरा है: आपकी सबसे बड़ी गलती यह मान लेना है कि एनएसए एकमात्र ऐसी संस्था है जो भरोसे के इस पद का दुरुपयोग कर रही है –  वास्तविक रूप में, यह मानना ​​उचित है कि सभी फर्मवेयर असुरक्षा का एक नाला है, निर्माताओं से उच्चतम डिग्री की अक्षमता के सौजन्य से, और ऐसी एजेंसियों की एक बहुत विस्तृत श्रृंखला से उच्चतम डिग्री की क्षमता। इस समस्या के संभावित समाधान के रूप में, उन्होंने घोषणात्मक फ़र्मवेयर की मांग की है, जो हार्डवेयर लिंकेज और निर्भरता का वर्णन करेगा और इसमें  निष्पादन योग्य कोड  सम्मिलित नहीं होना चाहिए। फर्मवेयर ओपन-सोर्स सॉफ्टवेयर होना चाहिए | ओपन-सोर्स ताकि कोड की जांच और सत्यापन किया जा सके।

कस्टम फ़र्मवेयर हैक ने स्मार्टफ़ोन या यूएसबी डिवाइस जैसे उपकरणों में मैलवेयर  इंजेक्ट करने पर भी ध्यान केंद्रित किया है। ऐसे ही एक स्मार्टफोन इंजेक्शन को  मैल्कोन में सिम्बियन ओएस  पर प्रदर्शित किया गया था।  एक  हैकर सम्मेलन   ब्लैक हैट ब्रीफिंग  सम्मेलन में  बैडयूएसबी  नामक एक यूएसबी डिवाइस फर्मवेयर हैक प्रस्तुत किया गया था, यह दर्शाता है कि कैसे एक यूएसबी फ्लैश ड्राइव माइक्रोकंट्रोलर को संगणक पर नियंत्रण रखने, डेटा को छानने, या प्रयोगकर्ता पर जासूसी करने के लिए विभिन्न अन्य डिवाइस प्रकारों को धोखा देने के लिए पुन: प्रोग्राम किया जा सकता है।  अन्य सुरक्षा शोधकर्ताओं ने बैडयूएसबी के पीछे के सिद्धांतों का फायदा उठाने के विधि पर आगे काम किया है, एक ही समय में हैकिंग टूल का स्रोत कोड जारी करना जिसका प्रयोग विभिन्न यूएसबी उपकरणों के व्यवहार को संशोधित करने के लिए किया जा सकता है।

यह भी देखें

 * बूटलोडर
 * संगणक धातु सामग्री
 * कोरबूट
 * कस्टम फर्मवेयर
 * माइक्रोकोड
 * मालिकाना डिवाइस ड्राइवर
 * रीयल-टाइम ऑपरेटिंग सिस्टम
 * रोम छवि

इस पेज में लापता आंतरिक लिंक की सूची

 * संगणक परिधीय
 * नॉन - वोलेटाइल मेमोरी
 * सेंट्रल प्रोसेसिंग यूनिट
 * निर्देश समुच्चय
 * बेबी ए.टी
 * सामान्य फर्मवेयर पर्यावरण
 * एआरसीएस (कंप्यूटिंग)
 * हवा पर फर्मवेयर
 * फ्री सीएमसी
 * m0n0wall
 * नेटवर्क संलग्न संग्रहण
 * NAS4मुक्त
 * यूएसबी यंत्र
 * रॉम छवि