फर्मवेयर

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

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

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

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

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

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

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

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

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

संगणक फर्मवेयर के अन्य उदाहरणों में सम्मिलित हैं:
 * एकीकृत एक्सटेंसिबल फर्मवेयर इंटरफ़ेस |(यू) इटेनियम  सिस्टम, इंटेल-आधारित  मैकिनटोश  और कई नए पीसी पर इस्तेमाल किया जाने वाला ईएफआई-अनुपालन फ़र्मवेयर
 * हार्ड डिस्क ड्राइव, ठोस राज्य ड्राइव  या ऑप्टिकल डिस्क ड्राइव फर्मवेयर
 * चित्रोपमा पत्रक का  वीडियो BIOS
 * फर्मवेयर खोलें, Sun Microsystems  और  Oracle Corporation  के  SPARC -आधारित संगणकों में, Apple के  PowerPC -आधारित संगणकों में, और  Genesi  के संगणकों में उपयोग किया जाता है
 * ARCS (कंप्यूटिंग), सिलिकॉन ग्राफिक्स  से संगणक में उपयोग किया जाता है
 * किकस्टार्ट (अमिगा) अमीगा), संगणक की अमिगा  लाइन में उपयोग किया जाता है ( पावर ऑन सेल्फ टेस्ट, हार्डवेयर इनिट +  प्लग करें और खेलें   ऑटोकॉन्फ़िगरेशन |पेरिफेरल्स का ऑटो-कॉन्फ़िगरेशन,  कर्नेल (ऑपरेटिंग सिस्टम) , आदि)
 * रन-टाइम अमूर्त सेवाएं (रन-टाइम एब्स्ट्रक्शन सर्विसेज),  आईबीएम  से संगणक में उपयोग की जाती हैं
 * आम फर्मवेयर पर्यावरण (सीएफई)

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

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

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

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

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

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

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

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

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

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

यह भी देखें

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

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

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