Difference between revisions of "पैच (कंप्यूटिंग)"

From alpha
Jump to navigation Jump to search
m
m
Line 2: Line 2:
"पैच" के अन्य उपयोगों के लिए, पैच (बहुविकल्पी) § कम्प्यूटिंग देखें।
"पैच" के अन्य उपयोगों के लिए, पैच (बहुविकल्पी) § कम्प्यूटिंग देखें।


"सॉफ़्टवेयर अपडेट" यहां रीडायरेक्ट करता है। macOS घटक के लिए, Apple सॉफ़्टवेयर अपडेट देखें।
"सॉफ़्टवेयर अपडेट" यहां रीडायरेक्ट करता है। मैक ओएस घटक के लिए, एप्पल सॉफ़्टवेयर अपडेट देखें।


इस लेख में सामान्य संदर्भों की एक सूची शामिल है, लेकिन इसमें पर्याप्त संगत इनलाइन उद्धरणों का अभाव है। कृपया अधिक सटीक उद्धरण देकर इस लेख को बेहतर बनाने में मदद करें। (फरवरी 2018)
इस लेख में सामान्य संदर्भों की एक सूची सम्मिलित है, लेकिन इसमें पर्याप्त संगत इनलाइन उद्धरणों का अभाव है। कृपया अधिक सटीक उद्धरण देकर इस लेख को बेहतर बनाने में सहयोग करें। (फरवरी 2018)


एक पैच एक [[कंप्यूटर प्रोग्राम]] या इसके सहायक डेटा में परिवर्तन का एक सेट है जिसे इसे अपडेट करने, ठीक करने या सुधारने के लिए डिज़ाइन किया गया है।<ref name="news.com">{{cite news|url=http://www.news.com.au/technology/story/0,28348,26208289-5014239,00.html |title=Microsoft रिकॉर्ड पर सबसे बड़ा सॉफ़्टवेयर पैच जारी करता है|access-date=14 October 2009 |agency=Reuters |date=2009-10-14 |url-status=dead |archive-url=https://web.archive.org/web/20091016074048/http://www.news.com.au/technology/story/0%2C28348%2C26208289-5014239%2C00.html |archive-date=16 October 2009 }}</ref> इसमें [[सुरक्षा भेद्यता]] को ठीक करना शामिल है<ref name="news.com" />और अन्य [[कंप्यूटर बग]], ऐसे पैच के साथ जिन्हें आमतौर पर बग फिक्स या बग फिक्स कहा जाता है।<ref>{{cite web
एक पैच एक [[कंप्यूटर प्रोग्राम]] या इसके सहायक डेटा में परिवर्तन का एक समुच्चय है जिसे इसे अपडेट करने, ठीक करने या सुधारने के लिए रचित  किया गया है।<ref name="news.com">{{cite news|url=http://www.news.com.au/technology/story/0,28348,26208289-5014239,00.html |title=Microsoft रिकॉर्ड पर सबसे बड़ा सॉफ़्टवेयर पैच जारी करता है|access-date=14 October 2009 |agency=Reuters |date=2009-10-14 |url-status=dead |archive-url=https://web.archive.org/web/20091016074048/http://www.news.com.au/technology/story/0%2C28348%2C26208289-5014239%2C00.html |archive-date=16 October 2009 }}</ref> इसमें [[सुरक्षा भेद्यता]] को ठीक करना सम्मिलित है<ref name="news.com" />और अन्य [[कंप्यूटर बग]], ऐसे पैच के साथ जिन्हें सामान्य रूप पर बग फिक्स या बग फिक्स कहा जाता है।<ref>{{cite web
  | url = http://www.techopedia.com/definition/18105/bug-fix
  | url = http://www.techopedia.com/definition/18105/bug-fix
  | title = बग फिक्स क्या है? - टेकोपेडिया से परिभाषा| access-date = 2015-07-29
  | title = बग फिक्स क्या है? - टेकोपेडिया से परिभाषा| access-date = 2015-07-29
  | website = techopedia.com
  | website = techopedia.com
}}</ref>{{better source needed|date=September 2018}} पैच अक्सर किसी प्रोग्राम की कार्यक्षमता, उपयोगिता, या कंप्यूटर के प्रदर्शन को बेहतर बनाने के लिए लिखे जाते हैं। अधिकांश पैच सॉफ़्टवेयर विक्रेताओं द्वारा ऑपरेटिंग सिस्टम और एप्लिकेशन अपडेट के लिए प्रदान किए जाते हैं।
}}</ref>{{better source needed|date=September 2018}} पैच सामान्यता किसी प्रोग्राम की कार्यक्षमता, उपयोगिता, या कंप्यूटर के प्रदर्शन को बेहतर बनाने के लिए लिखे जाते हैं। अधिकांश पैच सॉफ़्टवेयर विक्रेताओं द्वारा ऑपरेटिंग निकाय और एप्लिकेशन अपडेट के लिए प्रदान किए जाते हैं।


पैच या तो प्रोग्राम किए गए नियंत्रण के तहत या एक मानव प्रोग्रामर द्वारा संपादन उपकरण या [[डिबगर]] का उपयोग करके स्थापित किए जा सकते हैं। उन्हें स्टोरेज डिवाइस या कंप्यूटर मेमोरी में प्रोग्राम फाइलों पर लागू किया जा सकता है। पैच स्थायी (दोबारा पैच होने तक) या अस्थायी हो सकते हैं।
पैच या तो प्रोग्राम किए गए नियंत्रण के तहत या एक मानव प्रोग्रामर द्वारा संपादन उपकरण या [[डिबगर]] का उपयोग करके स्थापित किए जा सकते हैं। उन्हें स्टोरेज डिवाइस या कंप्यूटर मेमोरी में प्रोग्राम फाइलों पर लागू किया जा सकता है। पैच स्थायी (दोबारा पैच होने तक) या अस्थायी हो सकते हैं।


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


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


पैच प्रबंधन अनुप्रयोग जीवनचक्र प्रबंधन का एक हिस्सा है, और यह एक रणनीति और योजना का उपयोग करने की प्रक्रिया है कि कौन से पैच को एक निर्दिष्ट समय पर सिस्टम पर लागू किया जाना चाहिए।
पैच प्रबंधन अनुप्रयोग जीवनचक्र प्रबंधन का एक हिस्सा है, और यह एक रणनीति और योजना का उपयोग करने की प्रक्रिया है कि कौन से पैच को एक निर्दिष्ट समय पर निकाय पर लागू किया जाना चाहिए।


== {{Anchor|SOURCE-DIFF}}प्रकार ==
== {{Anchor|SOURCE-DIFF}}प्रकार ==


=== बाइनरी पैच ===
=== बाइनरी पैच ===
मालिकाना सॉफ़्टवेयर के लिए पैच आमतौर पर स्रोत कोड के बजाय निष्पादन योग्य फ़ाइलों के रूप में वितरित किए जाते हैं। निष्पादित होने पर ये फ़ाइलें एक प्रोग्राम को स्मृति में लोड करती हैं जो डिस्क पर लक्ष्य प्रोग्राम में पैच कोड की स्थापना का प्रबंधन करती है।
प्राथमिक सॉफ़्टवेयर के लिए पैच सामान्य रूप पर स्रोत कोड के अतिरिक्त निष्पादन योग्य फ़ाइलों के रूप में वितरित किए जाते हैं। निष्पादित होने पर ये फ़ाइलें एक प्रोग्राम को स्मृति में लोड करती हैं जो डिस्क पर लक्ष्य प्रोग्राम में पैच कोड की स्थापना का प्रबंधन करती है।


अन्य सॉफ़्टवेयर के लिए पैच आमतौर पर पैच कोड वाली डेटा फ़ाइलों के रूप में वितरित किए जाते हैं। ये एक पैच [[उपयोगिता का कार्यक्रम]] द्वारा पढ़े जाते हैं जो संस्थापन करता है। यह उपयोगिता लक्ष्य प्रोग्राम की निष्पादन योग्य फ़ाइल को संशोधित करती है - प्रोग्राम का [[मशीन कोड]] - आमतौर पर इसके बाइट्स को नए पैच कोड का प्रतिनिधित्व करने वाले बाइट्स के साथ अधिलेखित करके। यदि नया कोड पुराने कोड के कब्जे वाले स्थान (बाइट्स की संख्या) में फिट होगा, तो इसे सीधे पुराने कोड पर ओवरराइट करके रखा जा सकता है। इसे इनलाइन पैच कहा जाता है। यदि नया कोड पुराने कोड से बड़ा है, तो पैच यूटिलिटी नए कोड वाले लोड रिकॉर्ड को लक्षित प्रोग्राम की ऑब्जेक्ट फ़ाइल में जोड़ देगी, जिसे पैच किया जा रहा है। जब पैच किए गए प्रोग्राम को चलाया जाता है, तो पुराने कोड में उस स्थान पर जहां नए कोड की आवश्यकता होती है, शाखा निर्देशों (कूदता या कॉल) के साथ निष्पादन को नए कोड के लिए निर्देशित किया जाता है। प्रारंभिक 8-बिट माइक्रो कंप्यूटरों पर, उदाहरण के लिए रेडियो शेक [[टीआरएस-80]], ऑपरेटिंग सिस्टम में एक पैच/सीएमडी उपयोगिता शामिल है जो टेक्स्ट फ़ाइल से पैच डेटा स्वीकार करती है और लक्षित प्रोग्राम की निष्पादन योग्य बाइनरी फ़ाइल (फाइलों) में सुधार लागू करती है।
अन्य सॉफ़्टवेयर के लिए पैच सामान्य रूप पर पैच कोड वाली डेटा फ़ाइलों के रूप में वितरित किए जाते हैं। ये एक पैच [[उपयोगिता का कार्यक्रम]] द्वारा पढ़े जाते हैं जो संस्थापन करता है। यह उपयोगिता लक्ष्य प्रोग्राम की निष्पादन योग्य फ़ाइल को संशोधित करती है - प्रोग्राम का [[मशीन कोड]] - सामान्य रूप पर इसके बाइट्स को नए पैच कोड का प्रतिनिधित्व करने वाले बाइट्स के साथ अधिलेखित करके। यदि नया कोड पुराने कोड के अतिरिक्त वाले स्थान (बाइट्स की संख्या) में व्यवस्थित होगा, तो इसे सीधे पुराने कोड पर अधिलेखित करके रखा जा सकता है। इसे इनलाइन पैच कहा जाता है। यदि नया कोड पुराने कोड से बड़ा है, तो पैच यूटिलिटी नए कोड वाले लोड रिकॉर्ड को लक्षित प्रोग्राम की वस्तु फ़ाइल में जोड़ देगी, जिसे पैच किया जा रहा है। जब पैच किए गए प्रोग्राम को चलाया जाता है, तो पुराने कोड में उस स्थान पर जहां नए कोड की आवश्यकता होती है, शाखा निर्देशों ( कॉल) के साथ निष्पादन को नए कोड के लिए निर्देशित किया जाता है। प्रारंभिक 8-बिट माइक्रो कंप्यूटरों पर, उदाहरण के लिए रेडियो शेक [[टीआरएस-80]], ऑपरेटिंग निकाय में एक पैच/सीएमडी उपयोगिता सम्मिलित है जो मूलपाठ फ़ाइल से पैच डेटा स्वीकार करती है और लक्षित प्रोग्राम की निष्पादन योग्य बाइनरी फ़ाइल (फाइलों) में सुधार लागू करती है।


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


छोटे इन-मेमोरी मशीन कोड पैच को मैन्युअल रूप से सिस्टम डिबग यूटिलिटी के साथ लागू किया जा सकता है, जैसे कि CP/M का DDT या [[MS-DOS]] का DEBUG डिबगर्स। व्याख्या किए गए [[BASIC]] में काम करने वाले प्रोग्रामर अक्सर POKE कमांड का इस्तेमाल सिस्टम सर्विस रूटीन या इंटरप्रेटर की कार्यक्षमता को बदलने के लिए करते हैं।
छोटे इन-मेमोरी मशीन कोड पैच को पारस्परिक रूप से निकाय डिबग यूटिलिटी के साथ लागू किया जा सकता है, जैसे कि CP/M का DDT या [[MS-DOS]] का DEBUG डिबगर्स। व्याख्या किए गए [[BASIC|मूलभूत कंप्यूटर]] में काम करने वाले प्रोग्रामर सामान्यता POKE कमांड का इस्तेमाल निकाय सर्विस रूटीन या इंटरप्रेटर की कार्यक्षमता को बदलने के लिए करते हैं।


=== स्रोत कोड पैच ===
=== स्रोत कोड पैच ===
पैच स्रोत कोड संशोधनों के रूप में भी परिचालित हो सकते हैं। इस मामले में, पैच में आमतौर पर दो स्रोत कोड फ़ाइलों के बीच शाब्दिक [[अंतर]] होते हैं, जिन्हें डिफ्स कहा जाता है। इस प्रकार के पैच सामान्यतः [[ओपन-सोर्स सॉफ्टवेयर प्रोजेक्ट]] से निकलते हैं। इन मामलों में, डेवलपर्स अपेक्षा करते हैं कि उपयोगकर्ता नई या परिवर्तित फ़ाइलों को स्वयं संकलित करें।
पैच स्रोत कोड संशोधनों के रूप में भी परिचालित हो सकते हैं। इस विषय में, पैच में सामान्य रूप पर दो स्रोत कोड फ़ाइलों के बीच शाब्दिक [[अंतर]] होते हैं, जिन्हें डिफ्स कहा जाता है। इस प्रकार के पैच सामान्यतः [[ओपन-सोर्स सॉफ्टवेयर प्रोजेक्ट|खुले -सोर्स सॉफ्टवेयर प्रोजेक्ट]] से निकलते हैं। इन मामलों में, डेवलपर्स अपेक्षा करते हैं कि उपयोगकर्ता नई या परिवर्तित फ़ाइलों को स्वयं संकलित करें।


=== बड़े पैच ===
=== बड़े पैच ===
क्योंकि शब्द पैच में एक छोटे से फिक्स का अर्थ होता है, बड़े फिक्स अलग-अलग नामकरण का उपयोग कर सकते हैं। भारी पैच या पैच जो किसी प्रोग्राम को महत्वपूर्ण रूप से बदलते हैं, [[सेवा संकुल]] या सॉफ़्टवेयर अपडेट के रूप में प्रसारित हो सकते हैं। Microsoft Windows NT और उसके उत्तराधिकारी (Windows 2000, Windows XP, [[Windows Vista]] और Windows 7 सहित) सर्विस पैक शब्दावली का उपयोग करते हैं।<ref>{{cite web
क्योंकि शब्द पैच में एक छोटे से फिक्स का अर्थ होता है, बड़े फिक्स अलग-अलग नामकरण का उपयोग कर सकते हैं। भारी पैच या पैच जो किसी प्रोग्राम को महत्वपूर्ण रूप से बदलते हैं, [[सेवा संकुल]] या सॉफ़्टवेयर अपडेट के रूप में प्रसारित हो सकते हैं। माइक्रोसॉफ्ट विंडोज एनटी और उसके उत्तराधिकारी ( विंडोज 2000, विंडोज एक्स पी, [[Windows Vista|विंडोज विस्टा]] और विंडोज 7 सहित) सर्विस पैक शब्दावली का उपयोग करते हैं।<ref>{{cite web
  | url = http://windows.microsoft.com/en-us/windows/service-packs-download#sptabs=win7
  | url = http://windows.microsoft.com/en-us/windows/service-packs-download#sptabs=win7
  | title = सर्विस पैक और अद्यतन केंद्र| access-date = 2015-06-01
  | title = सर्विस पैक और अद्यतन केंद्र| access-date = 2015-06-01
Line 45: Line 45:
{{More citations needed section|date=November 2020}}
{{More citations needed section|date=November 2020}}


[[File:Harvard Mark I program tape.agr.jpg|thumb|1944 के [[हार्वर्ड मार्क I]] के लिए एक प्रोग्राम टेप, जो पहले डिजिटल कंप्यूटरों में से एक था। ध्यान दें कि भौतिक पैच छिद्रित छिद्रों को कवर करके ठीक करने के लिए उपयोग किए जाते हैं।]]ऐतिहासिक रूप से, सॉफ़्टवेयर आपूर्तिकर्ताओं ने [[कागज का टेप]] या [[छिद्रित कार्ड]] पर पैच वितरित किए, यह उम्मीद करते हुए कि प्राप्तकर्ता मूल टेप (या डेक) के संकेतित भाग को काट देगा, और प्रतिस्थापन खंड में (इसलिए नाम) पैच कर देगा। बाद में पैच वितरण में चुंबकीय टेप का इस्तेमाल किया गया। फिर, रिमूवेबल डिस्क ड्राइव के आविष्कार के बाद, सॉफ़्टवेयर डेवलपर द्वारा [[फ्लॉपी डिस्क]] या बाद में, [[मेल]] के माध्यम से [[CD-ROM]] के माध्यम से पैच आए। व्यापक रूप से उपलब्ध [[इंटरनेट]] एक्सेस के साथ, डेवलपर की वेब साइट से या स्वचालित सॉफ़्टवेयर अपडेट के माध्यम से पैच [[डाउनलोड]] करना अक्सर अंतिम उपयोगकर्ताओं के लिए उपलब्ध हो जाता है। Apple के [[Mac OS 9]] और Microsoft के [[Windows ME]] से शुरू होकर, PC ऑपरेटिंग सिस्टम ने इंटरनेट के माध्यम से स्वचालित सॉफ़्टवेयर अपडेट प्राप्त करने की क्षमता प्राप्त की।
[[File:Harvard Mark I program tape.agr.jpg|thumb|1944 के [[हार्वर्ड मार्क I]] के लिए एक प्रोग्राम टेप, जो पहले डिजिटल कंप्यूटरों में से एक था। ध्यान दें कि भौतिक पैच छिद्रित छिद्रों को कवर करके ठीक करने के लिए उपयोग किए जाते हैं।]]ऐतिहासिक रूप से, सॉफ़्टवेयर आपूर्तिकर्ताओं ने [[कागज का टेप]] या [[छिद्रित कार्ड]] पर पैच वितरित किए, यह उम्मीद करते हुए कि प्राप्तकर्ता मूल टेप (या डेक) के संकेतित भाग को काट देगा, और प्रतिस्थापन खंड में (इसलिए नाम) पैच कर देगा। बाद में पैच वितरण में चुंबकीय टेप का इस्तेमाल किया गया। फिर, हटाने योग्य डिस्क ड्राइव के आविष्कार के बाद, सॉफ़्टवेयर डेवलपर द्वारा [[फ्लॉपी डिस्क]] या बाद में, [[मेल]] के माध्यम से [[CD-ROM|सीडी रोम]] के माध्यम से पैच आए। व्यापक रूप से उपलब्ध [[इंटरनेट]] एक्सेस के साथ, डेवलपर की वेब साइट से या स्वचालित सॉफ़्टवेयर अपडेट के माध्यम से पैच [[डाउनलोड]] करना सामान्यता अंतिम उपयोगकर्ताओं के लिए उपलब्ध हो जाता है। एप्पल के [[Mac OS 9|मैक ओएस 9]] और माइक्रोसॉफ्टके  [[Windows ME|विंडोज एम्इ]] से शुरू होकर, पीसी ऑपरेटिंग निकाय ने इंटरनेट के माध्यम से स्वचालित सॉफ़्टवेयर अपडेट प्राप्त करने की क्षमता प्राप्त की।


लक्ष्य प्रोग्राम को अपडेट करने के लिए कंप्यूटर प्रोग्राम अक्सर पैच समन्वयित कर सकते हैं। स्वचालन अंतिम उपयोगकर्ता के कार्य को सरल करता है{{snd}} उन्हें केवल एक अपडेट प्रोग्राम को निष्पादित करने की आवश्यकता होती है, जिसके बाद वह प्रोग्राम सुनिश्चित करता है कि लक्ष्य को अपडेट करना पूरी तरह से और सही तरीके से हो रहा है। [[Microsoft Windows NT]] और उसके उत्तराधिकारियों के लिए सर्विस पैक और कई व्यावसायिक सॉफ़्टवेयर उत्पादों के लिए ऐसी स्वचालित रणनीतियाँ अपनाई जाती हैं।
लक्ष्य प्रोग्राम को अपडेट करने के लिए कंप्यूटर प्रोग्राम सामान्यता पैच समन्वयित कर सकते हैं। स्वचालन अंतिम उपयोगकर्ता के कार्य को सरल करता है{{snd}} उन्हें केवल एक अपडेट प्रोग्राम को निष्पादित करने की आवश्यकता होती है, जिसके बाद वह प्रोग्राम सुनिश्चित करता है कि लक्ष्य को अपडेट करना पूरी तरह से और सही तरीके से हो रहा है। [[Microsoft Windows NT|माइक्रोसॉफ्ट विंडोज एनटी]] और उसके उत्तराधिकारियों के लिए सर्विस पैक और कई व्यावसायिक सॉफ़्टवेयर उत्पादों के लिए ऐसी स्वचालित रणनीतियाँ अपनाई जाती हैं।


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


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


ऑपरेटिंग सिस्टम और [[कंप्यूटर का सर्वर]] सॉफ़्टवेयर के मामले में, सुरक्षा छिद्रों को ठीक करने में पैच की विशेष रूप से महत्वपूर्ण भूमिका होती है। कुछ महत्वपूर्ण पैच में ड्राइवरों के साथ समस्याएँ शामिल हैं।<ref>{{cite book
ऑपरेटिंग निकाय और [[कंप्यूटर का सर्वर]] सॉफ़्टवेयर के विषय में, सुरक्षा छिद्रों को ठीक करने में पैच की विशेष रूप से महत्वपूर्ण भूमिका होती है। कुछ महत्वपूर्ण पैच में ड्राइवरों के साथ समस्याएँ सम्मिलित हैं।<ref>{{cite book
|last1= Liu
|last1= Liu
|first1= Ashok
|first1= Ashok
Line 65: Line 65:
|access-date= 2015-01-08
|access-date= 2015-01-08
|quote= हाई डेफिनिशन ऑडियो ड्राइवर पैच KB835221 और KB888111 [...] की स्थापना रद्द करें
|quote= हाई डेफिनिशन ऑडियो ड्राइवर पैच KB835221 और KB888111 [...] की स्थापना रद्द करें
}}</ref> पैच को अन्य पैच के पूर्व अनुप्रयोग की आवश्यकता हो सकती है, या कई स्वतंत्र सॉफ़्टवेयर घटकों के पूर्व या समवर्ती अद्यतन की आवश्यकता हो सकती है। अपडेट की सुविधा के लिए, ऑपरेटिंग सिस्टम अक्सर स्वचालित या अर्ध-स्वचालित अपडेट करने की सुविधा प्रदान करते हैं। पूरी तरह से स्वचालित अपडेट कॉर्पोरेट कंप्यूटिंग वातावरण में व्यापक लोकप्रियता हासिल करने में सफल नहीं हुए हैं, आंशिक रूप से उपरोक्त गड़बड़ियों के कारण, बल्कि इसलिए भी क्योंकि प्रशासकों को डर है कि सॉफ्टवेयर कंपनियां अपने कंप्यूटरों पर असीमित नियंत्रण हासिल कर सकती हैं।{{Citation needed|date=May 2009}} पैकेज प्रबंधन प्रणालियां पैच ऑटोमेशन की विभिन्न डिग्री पेश कर सकती हैं।
}}</ref> पैच को अन्य पैच के पूर्व अनुप्रयोग की आवश्यकता हो सकती है, या कई स्वतंत्र सॉफ़्टवेयर घटकों के पूर्व या समवर्ती अद्यतन की आवश्यकता हो सकती है। अपडेट की सुविधा के लिए, ऑपरेटिंग निकाय सामान्यता स्वचालित या अर्ध-स्वचालित अपडेट करने की सुविधा प्रदान करते हैं। पूरी तरह से स्वचालित अपडेट कॉर्पोरेट कंप्यूटिंग वातावरण में व्यापक लोकप्रियता हासिल करने में सफल नहीं हुए हैं, आंशिक रूप से उपरोक्त गड़बड़ियों के कारण, बल्कि इसलिए भी क्योंकि प्रशासकों को डर है कि सॉफ्टवेयर कंपनियां अपने कंप्यूटरों पर असीमित नियंत्रण प्राप्त कर सकती हैं।{{Citation needed|date=May 2009}} पैकेज प्रबंधन प्रणालियां पैच ऑटोमेशन की विभिन्न डिग्री प्रस्तुत कर सकती हैं।


बड़े पैमाने पर होने के कारण उपभोक्ता बाजार में पूरी तरह से स्वचालित अपडेट का उपयोग कहीं अधिक व्यापक हो गया है{{citation needed|date=January 2015}} तथ्य यह है कि [[माइक्रोसॉफ़्ट विंडोज़]] ने उनके लिए समर्थन जोड़ा{{when|date=January 2015}}, और Windows XP# सर्विस पैक 2 (2004 में उपलब्ध) ने उन्हें डिफ़ॉल्ट रूप से सक्षम किया। सतर्क उपयोगकर्ता, विशेष रूप से सिस्टम प्रशासक, पैच लगाने को तब तक के लिए टाल देते हैं जब तक कि वे फिक्स की स्थिरता को सत्यापित नहीं कर सकते। Microsoft Windows सर्वर अद्यतन सेवाएँ|(W)SUS इसका समर्थन करता है। बड़े पैच या महत्वपूर्ण परिवर्तनों के मामलों में, वितरक अक्सर विकास चरण#बीटा के रूप में योग्य डेवलपर्स के लिए पैच की उपलब्धता को सीमित कर देते हैं।
बड़े पैमाने पर होने के कारण उपभोक्ता बाजार में पूरी तरह से स्वचालित अपडेट का उपयोग कहीं अधिक व्यापक हो गया है{{citation needed|date=January 2015}} तथ्य यह है कि [[माइक्रोसॉफ़्ट विंडोज़]] ने उनके लिए समर्थन जोड़ा{{when|date=January 2015}}, और विंडोज एक्स पी सर्विस पैक 2 (2004 में उपलब्ध) ने उन्हें एक मात्र उनके ही रूप से सक्षम किया। सतर्क उपयोगकर्ता, विशेष रूप से निकाय प्रशासक, पैच लगाने को तब तक के लिए टाल देते हैं जब तक कि वे फिक्स की स्थिरता को सत्यापित नहीं कर सकते। माइक्रोसॉफ्ट विंडोज सर्वर अद्यतन सेवाएँ|(डब्लू)एस यु एस इसका समर्थन करता है। बड़े पैच या महत्वपूर्ण परिवर्तनों के मामलों में, वितरक सामान्यता विकास चरण बीटा के रूप में योग्य डेवलपर्स के लिए पैच की उपलब्धता को सीमित कर देते हैं।


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


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


कंपनियां कभी-कभी यह जानकर गेम जारी करती हैं कि उनमें बग हैं। [[कंप्यूटर गेमिंग वर्ल्ड]]{{'}}s [[स्कॉर्पिया (पत्रकार)]] ने 1994 में उन कंपनियों की भर्त्सना की- जिनका उल्लेख करना मुश्किल है- जो यह जानते हुए घटिया उत्पाद जारी करती हैं कि वे पैच और अपग्रेड के साथ काम चला सकते हैं, और जो {{'}}अपने ग्राहकों के भुगतान-परीक्षक।<ref name="cgw199404">{{Cite magazine
कंपनियां कभी-कभी यह जानकर खेल जारी करती हैं कि उनमें बग हैं। [[कंप्यूटर गेमिंग वर्ल्ड|कंप्यूटर खेलिंग वर्ल्ड]]{{'}}s [[स्कॉर्पिया (पत्रकार)]] ने 1994 में उन कंपनियों की भर्त्सना की- जिनका उल्लेख करना मुश्किल है- जो यह जानते हुए घटिया उत्पाद जारी करती हैं कि वे पैच और अपग्रेड के साथ काम चला सकते हैं, और जो {{'}}अपने ग्राहकों के भुगतान-परीक्षक।<ref name="cgw199404">{{Cite magazine
  |author=Scorpia
  |author=Scorpia
  |date=April 1994
  |date=April 1994
Line 84: Line 84:


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


ओपन-सोर्स प्रोजेक्ट्स में, लेखक आमतौर पर पैच प्राप्त करते हैं या कई लोग पैच प्रकाशित करते हैं जो विशेष समस्याओं को ठीक करते हैं या कुछ कार्यक्षमता जोड़ते हैं, जैसे प्रोजेक्ट के लोकेल के बाहर स्थानीय भाषाओं के लिए समर्थन। [[लिनक्स कर्नेल]] के शुरुआती विकास से एक उदाहरण में (इसके पूर्ण स्रोत कोड को प्रकाशित करने के लिए विख्यात), मूल लेखक [[लिनस टोरवाल्ड्स]] ने अपने मूल संस्करण के खिलाफ आवेदन करने के लिए कई [[प्रोग्रामर]] से सैकड़ों हजारों पैच प्राप्त किए। दोहराव वाले पैच के लिए, जेनेरिक पैच लिखने और उन्हें एक ही समय में कई स्थानों पर लागू करने के लिए Coccinelle (सॉफ़्टवेयर) जैसे उपकरण मौजूद हैं (आमतौर पर लिनक्स कर्नेल के मामले में सैकड़ों स्थान)।<ref>{{cite book |last1=Koyuncu |first1=Anil |last2=Bissyandé |first2=Tegawendé F. |last3=Kim |first3=Dongsun |last4=Klein |first4=Jacques |last5=Monperrus |first5=Martin |last6=Le Traon |first6=Yves |title=सॉफ्टवेयर परीक्षण और विश्लेषण पर 26वें ACM SIGSOFT अंतर्राष्ट्रीय संगोष्ठी की कार्यवाही|chapter=Impact of tool support in patch construction |date=10 July 2017 |pages=237–248 |doi=10.1145/3092703.3092713 |chapter-url=https://hal.archives-ouvertes.fr/hal-01575214/document|arxiv=1812.07416 |isbn=9781450350761 |s2cid=34750283 }}</ref>
ओपन-सोर्स प्रोजेक्ट्स में, लेखक सामान्य रूप पर पैच प्राप्त करते हैं या कई लोग पैच प्रकाशित करते हैं जो विशेष समस्याओं को ठीक करते हैं या कुछ कार्यक्षमता जोड़ते हैं, जैसे प्रोजेक्ट के लोकेल के बाहर स्थानीय भाषाओं के लिए समर्थन। [[लिनक्स कर्नेल]] के शुरुआती विकास से एक उदाहरण में (इसके पूर्ण स्रोत कोड को प्रकाशित करने के लिए विख्यात), मूल लेखक [[लिनस टोरवाल्ड्स]] ने अपने मूल संस्करण के खिलाफ आवेदन करने के लिए कई [[प्रोग्रामर]] से सैकड़ों हजारों पैच प्राप्त किए। दोहराव वाले पैच के लिए, जेनेरिक पैच लिखने और उन्हें एक ही समय में कई स्थानों पर लागू करने के लिए Coccinelle (सॉफ़्टवेयर) जैसे उपकरण मौजूद हैं (सामान्य रूप पर लिनक्स कर्नेल के विषय में सैकड़ों स्थान)।<ref>{{cite book |last1=Koyuncu |first1=Anil |last2=Bissyandé |first2=Tegawendé F. |last3=Kim |first3=Dongsun |last4=Klein |first4=Jacques |last5=Monperrus |first5=Martin |last6=Le Traon |first6=Yves |title=सॉफ्टवेयर परीक्षण और विश्लेषण पर 26वें ACM SIGSOFT अंतर्राष्ट्रीय संगोष्ठी की कार्यवाही|chapter=Impact of tool support in patch construction |date=10 July 2017 |pages=237–248 |doi=10.1145/3092703.3092713 |chapter-url=https://hal.archives-ouvertes.fr/hal-01575214/document|arxiv=1812.07416 |isbn=9781450350761 |s2cid=34750283 }}</ref>
[[अमरीका की एक मूल जनजाति]] एचटीटीपी सर्वर मूल रूप से कई पैच के रूप में विकसित हुआ था, जिसे [[ब्रायन बेह्लडॉर्फ]] ने [[एनसीएसए एचटीटीपीडी]] को बेहतर बनाने के लिए एकत्र किया था, इसलिए एक नाम जिसका अर्थ है कि यह पैच का एक संग्रह है ([[अपाचे HTTP सर्वर]]#नाम| एक पैची सर्वर)। परियोजना की आधिकारिक साइट पर अक्सर पूछे जाने वाले प्रश्न में कहा गया है कि 'अपाचे' नाम अपाचे के मूल अमेरिकी भारतीय जनजाति के सम्मान से चुना गया था। हालाँकि, 'एक पैची सर्वर' की व्याख्या शुरू में परियोजना की वेबसाइट पर दी गई थी।<ref>{{cite web|url=http://www.apache.org/info.html |title=अपाचे HTTP सर्वर प्रोजेक्ट|date=15 June 1997 |url-status=bot: unknown |archive-url=https://web.archive.org/web/19970615081902/http://www.apache.org/info.html |archive-date=15 June 1997 }}</ref>
[[अमरीका की एक मूल जनजाति]] एचटीटीपी सर्वर मूल रूप से कई पैच के रूप में विकसित हुआ था, जिसे [[ब्रायन बेह्लडॉर्फ]] ने [[एनसीएसए एचटीटीपीडी]] को बेहतर बनाने के लिए एकत्र किया था, इसलिए एक नाम जिसका अर्थ है कि यह पैच का एक संग्रह है ([[अपाचे HTTP सर्वर]]#नाम| एक पैची सर्वर)। परियोजना की आधिकारिक साइट पर सामान्यता पूछे जाने वाले प्रश्न में कहा गया है कि 'अपाचे' नाम अपाचे के मूल अमेरिकी भारतीय जनजाति के सम्मान से चुना गया था। हालाँकि, 'एक पैची सर्वर' की व्याख्या शुरू में परियोजना की वेबसाइट पर दी गई थी।<ref>{{cite web|url=http://www.apache.org/info.html |title=अपाचे HTTP सर्वर प्रोजेक्ट|date=15 June 1997 |url-status=bot: unknown |archive-url=https://web.archive.org/web/19970615081902/http://www.apache.org/info.html |archive-date=15 June 1997 }}</ref>




Line 94: Line 94:
=== हॉटफिक्स ===
=== हॉटफिक्स ===
{{Main|Hotfix}}
{{Main|Hotfix}}
एक हॉटफिक्स या क्विक फिक्स इंजीनियरिंग अपडेट (क्यूएफई अपडेट) एक एकल, संचयी पैकेज है जिसमें जानकारी (अक्सर एक या अधिक फाइलों के रूप में) शामिल होती है जिसका उपयोग सॉफ्टवेयर उत्पाद (यानी, एक सॉफ्टवेयर बग) में समस्या का समाधान करने के लिए किया जाता है। सामान्यतया, किसी विशिष्ट ग्राहक स्थिति को संबोधित करने के लिए हॉटफिक्सेस बनाए जाते हैं। [[Microsoft]] ने एक बार इस शब्द का उपयोग किया था लेकिन नई शब्दावली के पक्ष में रुक गया: सामान्य वितरण रिलीज़ (GDR) और सीमित वितरण रिलीज़ (LDR)। [[तूफ़ानी मनोरंजन]], हालांकि, एक हॉटफिक्स को गेम में किए गए बदलाव के रूप में परिभाषित करता है, जो काफी महत्वपूर्ण माना जाता है कि इसे नियमित सामग्री पैच तक बंद नहीं किया जा सकता है।
एक हॉटफिक्स या क्विक फिक्स इंजीनियरिंग अपडेट (क्यूएफई अपडेट) एक एकल, संचयी पैकेज है जिसमें जानकारी (सामान्यता एक या अधिक फाइलों के रूप में) सम्मिलित होती है जिसका उपयोग सॉफ्टवेयर उत्पाद (यानी, एक सॉफ्टवेयर बग) में समस्या का समाधान करने के लिए किया जाता है। सामान्यतया, किसी विशिष्ट ग्राहक स्थिति को संबोधित करने के लिए हॉटफिक्सेस बनाए जाते हैं। माइक्रोसॉफ्टने एक बार इस शब्द का उपयोग किया था लेकिन नई शब्दावली के पक्ष में रुक गया: सामान्य वितरण रिलीज़ (GDR) और सीमित वितरण रिलीज़ (LDR)। [[तूफ़ानी मनोरंजन]], यद्यपि, एक हॉटफिक्स को खेल में किए गए बदलाव के रूप में परिभाषित करता है, जो काफी महत्वपूर्ण माना जाता है कि इसे नियमित सामग्री पैच तक बंद नहीं किया जा सकता है।


=== प्वाइंट रिलीज ===
=== प्वाइंट रिलीज ===
{{Main|Point release}}
{{Main|Point release}}
एक बिंदु रिलीज एक सॉफ्टवेयर प्रोजेक्ट की एक [[मामूली रिलीज]] है, विशेष रूप से महत्वपूर्ण [[फ़ीचर (सॉफ्टवेयर डिज़ाइन)]] जोड़ने के बजाय बग को ठीक करने या छोटे क्लीनअप करने का इरादा है। अक्सर, एक बड़ी या छोटी रिलीज़ में बहुत सारे बग ठीक करने के लिए होते हैं, जिससे पॉइंट रिलीज़ की आवश्यकता होती है।
एक बिंदु रिलीज एक सॉफ्टवेयर प्रोजेक्ट की एक [[मामूली रिलीज]] है, विशेष रूप से महत्वपूर्ण [[फ़ीचर (सॉफ्टवेयर डिज़ाइन)|फ़ीचर (सॉफ्टवेयर रचित )]] जोड़ने के अतिरिक्तबग को ठीक करने या छोटे क्लीनअप करने का इरादा है। सामान्यता, एक बड़ी या छोटी रिलीज़ में बहुत सारे बग ठीक करने के लिए होते हैं, जिससे पॉइंट रिलीज़ की आवश्यकता होती है।


=== कार्यक्रम अस्थायी सुधार ===
=== कार्यक्रम अस्थायी सुधार ===
{{Main|Program temporary fix}}
{{Main|Program temporary fix}}
कार्यक्रम अस्थायी सुधार या उत्पाद अस्थायी सुधार (पीटीएफ), तिथि के आधार पर, एकल बग फिक्स, या फिक्स के समूह के लिए मानक आईबीएम शब्दावली है, जो ग्राहकों के लिए स्थापित करने के लिए तैयार रूप में वितरित किया जाता है। एक PTF को कभी-कभी "ZAP" कहा जाता था।<ref>{{Cite web|url=https://www.ibm.com/support/knowledgecenter/zosbasics/com.ibm.zos.zdatamgmt/zsysprogc_utilities_SPZAP.htm|title=SPZAP (उर्फ सुपरज़ैप): प्रोग्राम या डेटा को गतिशील रूप से अपडेट करें|website=IBM Knowledge Center|language=en-US|access-date=2020-02-23}}</ref>
कार्यक्रम अस्थायी सुधार या उत्पाद अस्थायी सुधार (पीटीएफ), तिथि के आधार पर, एकल बग फिक्स, या फिक्स के समूह के लिए मानक आईबीएम शब्दावली है, जो ग्राहकों के लिए स्थापित करने के लिए तैयार रूप में वितरित किया जाता है। एक PTF को कभी-कभी "ZAP" कहा जाता था।<ref>{{Cite web|url=https://www.ibm.com/support/knowledgecenter/zosbasics/com.ibm.zos.zdatamgmt/zsysprogc_utilities_SPZAP.htm|title=SPZAP (उर्फ सुपरज़ैप): प्रोग्राम या डेटा को गतिशील रूप से अपडेट करें|website=IBM Knowledge Center|language=en-US|access-date=2020-02-23}}</ref>
ग्राहक कभी-कभी परिवर्णी शब्द को जीभ-में-गाल तरीके से स्थायी अस्थायी सुधार के रूप में समझाते हैं या अधिक व्यावहारिक रूप से शायद यह ठीक करता है, क्योंकि उनके पास PTF को ऑपरेटिंग सिस्टम का एक स्थायी हिस्सा बनाने का विकल्प होता है यदि पैच समस्या को ठीक करता है।
ग्राहक कभी-कभी परिवर्णी शब्द को जीभ-में-गाल तरीके से स्थायी अस्थायी सुधार के रूप में समझाते हैं या अधिक व्यावहारिक रूप से शायद यह ठीक करता है, क्योंकि उनके पास PTF को ऑपरेटिंग निकाय का एक स्थायी हिस्सा बनाने का विकल्प होता है यदि पैच समस्या को ठीक करता है।


=== {{Anchor|SECURITY}}सुरक्षा पैच ===
=== {{Anchor|SECURITY}}सुरक्षा पैच ===
एक सुरक्षा पैच एक भेद्यता द्वारा वर्णित कमजोरी को ठीक करने के लिए एक परिसंपत्ति पर लागू किया गया परिवर्तन है। यह सुधारात्मक कार्रवाई सफल शोषण को रोकेगी और किसी संपत्ति में विशिष्ट भेद्यता का फायदा उठाने के लिए खतरे की क्षमता को हटा देगी या कम कर देगी। पैच प्रबंधन [[भेद्यता प्रबंधन]] का एक हिस्सा है{{snd}} कमजोरियों की पहचान, वर्गीकरण, उपचार और कम करने का चक्रीय अभ्यास।
एक सुरक्षा पैच एक भेद्यता द्वारा वर्णित कमजोरी को ठीक करने के लिए एक परिसंपत्ति पर लागू किया गया परिवर्तन है। यह सुधारात्मक कार्रवाई सफल शोषण को रोकेगी और किसी संपत्ति में विशिष्ट भेद्यता का फायदा उठाने के लिए खतरे की क्षमता को हटा देगी या कम कर देगी। पैच प्रबंधन [[भेद्यता प्रबंधन]] का एक हिस्सा है{{snd}} कमजोरियों की पहचान, वर्गीकरण, उपचार और कम करने का चक्रीय अभ्यास।


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


ये सुरक्षा पैच यह सुनिश्चित करने के लिए महत्वपूर्ण हैं कि व्यवसाय प्रक्रिया प्रभावित न हो। 2017 में, WannaCry रैंसमवेयर अटैक नामक एक रैंसमवेयर से कंपनियां प्रभावित हुईं, जो माइक्रोसॉफ्ट विंडोज के कुछ संस्करणों में फाइलों को एन्क्रिप्ट करती है और बिटकॉइन के माध्यम से फिरौती की मांग करती है। इसके जवाब में, Microsoft ने एक पैच जारी किया जो रैंसमवेयर को चलने से रोकता है।
ये सुरक्षा पैच यह सुनिश्चित करने के लिए महत्वपूर्ण हैं कि व्यवसाय प्रक्रिया प्रभावित न हो। 2017 में, WannaCry रैंसमवेयर अटैक नामक एक रैंसमवेयर से कंपनियां प्रभावित हुईं, जो माइक्रोसॉफ्ट विंडोज के कुछ संस्करणों में फाइलों को एन्क्रिप्ट करती है और बिटकॉइन के माध्यम से फिरौती की मांग करती है। इसके जवाब में, माइक्रोसॉफ्टने एक पैच जारी किया जो रैंसमवेयर को चलने से रोकता है।


=== सर्विस पैक ===
=== सर्विस पैक ===
{{Main|Service pack}}
{{Main|Service pack}}
एक सर्विस पैक या एसपी या एक फीचर पैक (एफपी) में एक इंस्टाल करने योग्य पैकेज के रूप में वितरित सॉफ़्टवेयर प्रोग्राम में अपडेट, फिक्स या एन्हांसमेंट का संग्रह शामिल होता है। कंपनियां अक्सर एक सर्विस पैक जारी करती हैं जब किसी दिए गए प्रोग्राम के लिए अलग-अलग पैच की संख्या एक निश्चित (मनमानी) सीमा तक पहुंच जाती है, या सॉफ़्टवेयर रिलीज को उपयोगकर्ताओं की प्रतिक्रिया और बग ट्रैकिंग जैसे सीमित संख्या में शेष मुद्दों के साथ स्थिर होना दिखाया गया है [[बगज़ के साथ]] ऑफिस सूट, ऑपरेटिंग सिस्टम, डेटाबेस सॉफ्टवेयर, या नेटवर्क प्रबंधन जैसे बड़े सॉफ्टवेयर अनुप्रयोगों में, उत्पाद के रिलीज के पहले या दो साल के भीतर सर्विस पैक जारी करना असामान्य नहीं है। कई अलग-अलग पैच स्थापित करने की तुलना में सर्विस पैक स्थापित करना आसान और कम त्रुटि-प्रवण है, और भी अधिक जब एक नेटवर्क पर कई कंप्यूटरों को अपडेट करते हैं, जहां सर्विस पैक सामान्य होते हैं।
एक सर्विस पैक या एसपी या एक फीचर पैक (एफपी) में एक इंस्टाल करने योग्य पैकेज के रूप में वितरित सॉफ़्टवेयर प्रोग्राम में अपडेट, फिक्स या एन्हांसमेंट का संग्रह सम्मिलित होता है। कंपनियां सामान्यता एक सर्विस पैक जारी करती हैं जब किसी दिए गए प्रोग्राम के लिए अलग-अलग पैच की संख्या एक निश्चित (मनमानी) सीमा तक पहुंच जाती है, या सॉफ़्टवेयर रिलीज को उपयोगकर्ताओं की प्रतिक्रिया और बग ट्रैकिंग जैसे सीमित संख्या में शेष मुद्दों के साथ स्थिर होना दिखाया गया है [[बगज़ के साथ]] ऑफिस सूट, ऑपरेटिंग निकाय, डेटाबेस सॉफ्टवेयर, या नेटवर्क प्रबंधन जैसे बड़े सॉफ्टवेयर अनुप्रयोगों में, उत्पाद के रिलीज के पहले या दो साल के भीतर सर्विस पैक जारी करना असामान्य नहीं है। कई अलग-अलग पैच स्थापित करने की तुलना में सर्विस पैक स्थापित करना आसान और कम त्रुटि-प्रवण है, और भी अधिक जब एक नेटवर्क पर कई कंप्यूटरों को अपडेट करते हैं, जहां सर्विस पैक सामान्य होते हैं।


=== अनौपचारिक पैच ===
=== अनौपचारिक पैच ===
{{Main|Unofficial patch}}
{{Main|Unofficial patch}}
एक अनौपचारिक पैच मूल [[सॉफ्टवेयर डेवलपर]] के बजाय किसी तृतीय पक्ष द्वारा लिखे गए प्रोग्राम के लिए एक पैच है। एक साधारण पैच के समान, यह [[सॉफ्टवेयर बग]] या कमियों को दूर करता है। उदाहरण सुरक्षा विशेषज्ञों द्वारा सुरक्षा सुधार हैं जब सॉफ़्टवेयर निर्माताओं द्वारा आधिकारिक पैच स्वयं में बहुत अधिक समय लेता है।<ref name="hsecurity2007">{{cite web|url=http://www.h-online.com/security/news/item/Unofficial-patch-for-Windows-URI-problem-733796.html |date=2007-10-16 |title=विंडोज यूआरआई समस्या के लिए अनौपचारिक पैच|publisher=The H Security |first=Mike |last=Barwise |access-date=2012-01-29}}</ref><ref>{{cite web|url=http://www.computerweekly.com/news/2240077005/Another-unofficial-IE-patch-offered-to-counter-critical-flaw |title=एक अन्य अनौपचारिक आईई पैच ने महत्वपूर्ण दोष का मुकाबला करने की पेशकश की|date=2006-03-30 |quote="माइक्रोसॉफ्ट के इंटरनेट एक्सप्लोरर ब्राउज़र में एक महत्वपूर्ण दोष का मुकाबला करने के लिए एक और अनौपचारिक पैच जारी किया गया है।"|publisher=[[Computer Weekly]] |access-date=2013-07-09}}</ref> अन्य उदाहरण एक वीडियो गेम के [[खेल समुदाय]] द्वारा बनाए गए अनौपचारिक पैच हैं जो असमर्थित परित्यागवेयर बन गए।<ref name="mythalive2004">{{cite web|url=http://linuxdevcenter.com/pub/a/linux/2004/06/10/mythdevelopers.html|title=मिथकों को जिंदा रखना|first=Howard |last=Wen |date=2004-06-10 |access-date=2012-12-22 |publisher=linuxdevcenter.com |quote=''[...]मिथ ट्रिलॉजी के प्रशंसकों ने इस विचार को एक कदम आगे बढ़ाया है: उनके पास मिथ गेम्स के स्रोत कोड तक आधिकारिक पहुंच है। MythDevelopers के नाम से संगठित, प्रोग्रामरों, कलाकारों और अन्य प्रतिभाशाली लोगों का यह सर्व-स्वयंसेवक समूह, Myth गेम श्रृंखला के आगे के विकास में सुधार करने और उसका समर्थन करने के लिए अपना समय समर्पित करता है।''}}</ref><ref name="timcalltopower2">{{cite web|url=http://timreview.ca/article/294 |title=कला के स्रोत को खोलना|date=2009-10-01 |first=John |last=Bell |quote=''[...]कि शीर्षक के लिए कोई और पैच आगामी नहीं होगा। समुदाय अनुमानित रूप से परेशान था। गेम को छोड़ने के बजाय, उपयोगकर्ताओं ने फैसला किया कि अगर एक्टिवेशन बग्स को ठीक नहीं करने वाला था, तो वे करेंगे। वे स्रोत को खोलने के लिए एक्टिविज़न प्राप्त करके खेल को बचाना चाहते थे ताकि इसे उस बिंदु से आगे जीवित रखा जा सके जहाँ एक्टिविज़न ने रुचि खो दी। प्रशंसक मंचों पर सक्रिय विकास टीम के सदस्यों की कुछ मदद से, वे अंततः 2003 के अक्टूबर में पावर II के स्रोत कोड को कॉल जारी करने के लिए एक्टिविज़न को समझाने में सक्षम थे।''|publisher=Technology Innovation Management Review |access-date=2012-12-30 |url-status=dead |archive-url=https://web.archive.org/web/20140330084636/http://timreview.ca/article/294 |archive-date=2014-03-30 }}</ref>
एक अनौपचारिक पैच मूल [[सॉफ्टवेयर डेवलपर]] के अतिरिक्तकिसी तृतीय पक्ष द्वारा लिखे गए प्रोग्राम के लिए एक पैच है। एक साधारण पैच के समान, यह [[सॉफ्टवेयर बग]] या कमियों को दूर करता है। उदाहरण सुरक्षा विशेषज्ञों द्वारा सुरक्षा सुधार हैं जब सॉफ़्टवेयर निर्माताओं द्वारा आधिकारिक पैच स्वयं में बहुत अधिक समय लेता है।<ref name="hsecurity2007">{{cite web|url=http://www.h-online.com/security/news/item/Unofficial-patch-for-Windows-URI-problem-733796.html |date=2007-10-16 |title=विंडोज यूआरआई समस्या के लिए अनौपचारिक पैच|publisher=The H Security |first=Mike |last=Barwise |access-date=2012-01-29}}</ref><ref>{{cite web|url=http://www.computerweekly.com/news/2240077005/Another-unofficial-IE-patch-offered-to-counter-critical-flaw |title=एक अन्य अनौपचारिक आईई पैच ने महत्वपूर्ण दोष का मुकाबला करने की पेशकश की|date=2006-03-30 |quote="माइक्रोसॉफ्ट के इंटरनेट एक्सप्लोरर ब्राउज़र में एक महत्वपूर्ण दोष का मुकाबला करने के लिए एक और अनौपचारिक पैच जारी किया गया है।"|publisher=[[Computer Weekly]] |access-date=2013-07-09}}</ref> अन्य उदाहरण एक वीडियो खेल के [[खेल समुदाय]] द्वारा बनाए गए अनौपचारिक पैच हैं जो असमर्थित परित्यागवेयर बन गए।<ref name="mythalive2004">{{cite web|url=http://linuxdevcenter.com/pub/a/linux/2004/06/10/mythdevelopers.html|title=मिथकों को जिंदा रखना|first=Howard |last=Wen |date=2004-06-10 |access-date=2012-12-22 |publisher=linuxdevcenter.com |quote=''[...]मिथ ट्रिलॉजी के प्रशंसकों ने इस विचार को एक कदम आगे बढ़ाया है: उनके पास मिथ गेम्स के स्रोत कोड तक आधिकारिक पहुंच है। MythDevelopers के नाम से संगठित, प्रोग्रामरों, कलाकारों और अन्य प्रतिभाशाली लोगों का यह सर्व-स्वयंसेवक समूह, Myth गेम श्रृंखला के आगे के विकास में सुधार करने और उसका समर्थन करने के लिए अपना समय समर्पित करता है।''}}</ref><ref name="timcalltopower2">{{cite web|url=http://timreview.ca/article/294 |title=कला के स्रोत को खोलना|date=2009-10-01 |first=John |last=Bell |quote=''[...]कि शीर्षक के लिए कोई और पैच आगामी नहीं होगा। समुदाय अनुमानित रूप से परेशान था। गेम को छोड़ने के बजाय, उपयोगकर्ताओं ने फैसला किया कि अगर एक्टिवेशन बग्स को ठीक नहीं करने वाला था, तो वे करेंगे। वे स्रोत को खोलने के लिए एक्टिविज़न प्राप्त करके खेल को बचाना चाहते थे ताकि इसे उस बिंदु से आगे जीवित रखा जा सके जहाँ एक्टिविज़न ने रुचि खो दी। प्रशंसक मंचों पर सक्रिय विकास टीम के सदस्यों की कुछ मदद से, वे अंततः 2003 के अक्टूबर में पावर II के स्रोत कोड को कॉल जारी करने के लिए एक्टिविज़न को समझाने में सक्षम थे।''|publisher=Technology Innovation Management Review |access-date=2012-12-30 |url-status=dead |archive-url=https://web.archive.org/web/20140330084636/http://timreview.ca/article/294 |archive-date=2014-03-30 }}</ref>




Line 127: Line 127:
== {{Anchor|HOT-PATCHING}}हॉट पैचिंग ==
== {{Anchor|HOT-PATCHING}}हॉट पैचिंग ==
{{Main|Dynamic software updating}}
{{Main|Dynamic software updating}}
हॉट पैचिंग, जिसे लाइव पैचिंग या डायनेमिक सॉफ़्टवेयर अपडेटिंग के रूप में भी जाना जाता है, सिस्टम या संबंधित प्रोग्राम को बंद किए बिना और फिर से शुरू किए बिना पैच का अनुप्रयोग है। यह सिस्टम या प्रोग्राम द्वारा प्रदान की जाने वाली सेवा की अनुपलब्धता से संबंधित समस्याओं का समाधान करता है।<ref>{{cite web|url=http://www.oracle.com/technology/oramag/oracle/07-sep/o57field.html |title=ओरेकल पत्रिका|publisher=Oracle.com |access-date=2013-01-04 |url-status=dead |archive-url=https://web.archive.org/web/20080514023816/http://www.oracle.com/technology/oramag/oracle/07-sep/o57field.html |archive-date=2008-05-14 }}</ref> सिस्टम को रोके बिना लिनक्स कर्नेल को अपडेट करने के लिए विधि का उपयोग किया जा सकता है।<ref>{{Cite web|url=https://developer.ibm.com/technologies/linux/tutorials/live-patching-the-linux-kernel/|title = Linux कर्नेल को लाइव पैच करना}}</ref><ref>{{Cite web|url=https://www.infosecurity-magazine.com/blogs/linux-kernel-live-patching/|title = लिनक्स कर्नेल लाइव पैचिंग: यह क्या है और इसकी आवश्यकता किसे है|date = 6 March 2020}}</ref>
हॉट पैचिंग, जिसे लाइव पैचिंग या डायनेमिक सॉफ़्टवेयर अपडेटिंग के रूप में भी जाना जाता है, निकाय या संबंधित प्रोग्राम को बंद किए बिना और फिर से शुरू किए बिना पैच का अनुप्रयोग है। यह निकाय या प्रोग्राम द्वारा प्रदान की जाने वाली सेवा की अनुपलब्धता से संबंधित समस्याओं का समाधान करता है।<ref>{{cite web|url=http://www.oracle.com/technology/oramag/oracle/07-sep/o57field.html |title=ओरेकल पत्रिका|publisher=Oracle.com |access-date=2013-01-04 |url-status=dead |archive-url=https://web.archive.org/web/20080514023816/http://www.oracle.com/technology/oramag/oracle/07-sep/o57field.html |archive-date=2008-05-14 }}</ref> निकाय को रोके बिना लिनक्स कर्नेल को अपडेट करने के लिए विधि का उपयोग किया जा सकता है।<ref>{{Cite web|url=https://developer.ibm.com/technologies/linux/tutorials/live-patching-the-linux-kernel/|title = Linux कर्नेल को लाइव पैच करना}}</ref><ref>{{Cite web|url=https://www.infosecurity-magazine.com/blogs/linux-kernel-live-patching/|title = लिनक्स कर्नेल लाइव पैचिंग: यह क्या है और इसकी आवश्यकता किसे है|date = 6 March 2020}}</ref>
एक पैच जिसे इस तरह से लगाया जा सकता है उसे हॉट पैच या लाइव पैच कहा जाता है। मोबाइल ऐप स्पेस में यह एक आम बात होती जा रही है।<ref>{{Cite web|url=https://www.fireeye.com/blog/threat-research/2016/01/hot_or_not_the_bene.html|title=गर्म या नहीं? आईओएस रिमोट हॉट पैचिंग के लाभ और जोखिम « थ्रेट रिसर्च ब्लॉग|website=FireEye|access-date=2016-10-26}}</ref> Rollout.io जैसी कंपनियां iOS इकोसिस्टम में हॉट पैच डिलीवर करने के लिए स्विजलिंग मेथड का इस्तेमाल करती हैं।<ref>{{Cite web|url=https://techcrunch.com/2015/09/22/rollout-io-puts-mobile-developers-back-in-control-of-their-apps/|title=Rollout.io मोबाइल डेवलपर्स को उनके ऐप्स के नियंत्रण में वापस लाता है|last=Perez|first=Sarah|website=TechCrunch|access-date=2016-10-26}}</ref> हॉट-पैचिंग iOS ऐप्स के लिए एक अन्य तरीका JSPatch है।<ref>{{Cite web|url=https://github.com/बैंग590/जेएसपीच|title=बैंग590/जेएसपीच|website=GitHub|access-date=2016-10-26}}</ref>
एक पैच जिसे इस तरह से लगाया जा सकता है उसे हॉट पैच या लाइव पैच कहा जाता है। मोबाइल ऐप स्पेस में यह एक आम बात होती जा रही है।<ref>{{Cite web|url=https://www.fireeye.com/blog/threat-research/2016/01/hot_or_not_the_bene.html|title=गर्म या नहीं? आईओएस रिमोट हॉट पैचिंग के लाभ और जोखिम « थ्रेट रिसर्च ब्लॉग|website=FireEye|access-date=2016-10-26}}</ref> Rollout.io जैसी कंपनियां iOS इकोनिकाय में हॉट पैच डिलीवर करने के लिए स्विजलिंग मेथड का इस्तेमाल करती हैं।<ref>{{Cite web|url=https://techcrunch.com/2015/09/22/rollout-io-puts-mobile-developers-back-in-control-of-their-apps/|title=Rollout.io मोबाइल डेवलपर्स को उनके ऐप्स के नियंत्रण में वापस लाता है|last=Perez|first=Sarah|website=TechCrunch|access-date=2016-10-26}}</ref> हॉट-पैचिंग iOS ऐप्स के लिए एक अन्य तरीका JSPatch है।<ref>{{Cite web|url=https://github.com/बैंग590/जेएसपीच|title=बैंग590/जेएसपीच|website=GitHub|access-date=2016-10-26}}</ref>
अंतर्निहित बुनियादी ढांचे को अपडेट करते समय क्लाउड प्रदाता अक्सर ग्राहकों के लिए डाउनटाइम से बचने के लिए हॉट पैचिंग का उपयोग करते हैं।<ref>{{Cite web|url=https://techcommunity.microsoft.com/t5/Azure-SQL-Database/Hot-Patching-SQL-Server-Engine-in-Azure-SQL-Database/ba-p/849700|title=Azure SQL डेटाबेस में हॉट पैचिंग SQL सर्वर इंजन|date=2019-09-11|website=TECHCOMMUNITY.MICROSOFT.COM|language=en|access-date=2019-09-15}}</ref>
अंतर्निहित बुनियादी ढांचे को अपडेट करते समय क्लाउड प्रदाता सामान्यता ग्राहकों के लिए डाउनटाइम से बचने के लिए हॉट पैचिंग का उपयोग करते हैं।<ref>{{Cite web|url=https://techcommunity.microsoft.com/t5/Azure-SQL-Database/Hot-Patching-SQL-Server-Engine-in-Azure-SQL-Database/ba-p/849700|title=Azure SQL डेटाबेस में हॉट पैचिंग SQL सर्वर इंजन|date=2019-09-11|website=TECHCOMMUNITY.MICROSOFT.COM|language=en|access-date=2019-09-15}}</ref>




== स्लिपस्ट्रीमिंग ==
== स्लिपस्ट्रीमिंग ==
कंप्यूटिंग में, स्लिपस्ट्रीमिंग उनके मूल ऐप की [[स्थापना (कंप्यूटर प्रोग्राम)]] फ़ाइलों में पैच (सर्विस पैक सहित) को एकीकृत करने का कार्य है, ताकि परिणाम अपडेट किए गए ऐप की सीधी स्थापना की अनुमति दे सके।<ref>{{cite web|last1=Karp|first1=David|title=एक XP SP3 रिकवरी डिस्क बनाएँ|url=https://www.pcmag.com/article2/0,2817,2325399,00.asp|website=[[PC Magazine]]|publisher=[[Ziff Davis]]|date=14 July 2008}}</ref><ref>{{cite web|last1=Thurrott|first1=Paul|title=सर्विस पैक 3 (SP3) के साथ स्लिपस्ट्रीमिंग Windows XP|url=http://winsupersite.com/article/windows-xp2/slipstreaming-windows-xp-with-service-pack-3-sp3-128464|website=Supersite for Windows|publisher=[[Penton (company)|Penton]]|date=7 May 2008}}</ref>
कंप्यूटिंग में, स्लिपस्ट्रीमिंग उनके मूल ऐप की [[स्थापना (कंप्यूटर प्रोग्राम)]] फ़ाइलों में पैच (सर्विस पैक सहित) को एकीकृत करने का कार्य है, ताकि परिणाम अपडेट किए गए ऐप की सीधी स्थापना की अनुमति दे सके।<ref>{{cite web|last1=Karp|first1=David|title=एक XP SP3 रिकवरी डिस्क बनाएँ|url=https://www.pcmag.com/article2/0,2817,2325399,00.asp|website=[[PC Magazine]]|publisher=[[Ziff Davis]]|date=14 July 2008}}</ref><ref>{{cite web|last1=Thurrott|first1=Paul|title=सर्विस पैक 3 (SP3) के साथ स्लिपस्ट्रीमिंग Windows XP|url=http://winsupersite.com/article/windows-xp2/slipstreaming-windows-xp-with-service-pack-3-sp3-128464|website=Supersite for Windows|publisher=[[Penton (company)|Penton]]|date=7 May 2008}}</ref>
स्लिपस्ट्रीमिंग की प्रकृति का मतलब है कि इसमें समय और काम का प्रारंभिक परिव्यय शामिल है, लेकिन लंबी अवधि में बहुत समय (और, विस्तार से, पैसा) बचा सकता है। यह उन प्रशासकों के लिए विशेष रूप से महत्वपूर्ण है जिन्हें बड़ी संख्या में कंप्यूटरों का प्रबंधन करने का काम सौंपा गया है, जहां प्रत्येक कंप्यूटर पर एक ऑपरेटिंग सिस्टम स्थापित करने के लिए विशिष्ट अभ्यास मूल मीडिया का उपयोग करना होगा और फिर स्थापना पूर्ण होने के बाद प्रत्येक कंप्यूटर को अपडेट करना होगा। अधिक अप-टू-डेट (स्लिपस्ट्रीमेड) स्रोत के साथ शुरू करने और स्लिपस्ट्रीम स्रोत में शामिल नहीं किए गए कुछ अपडेट को डाउनलोड और इंस्टॉल करने की आवश्यकता के मुकाबले इसमें बहुत अधिक समय लगेगा।
स्लिपस्ट्रीमिंग की प्रकृति का मतलब है कि इसमें समय और काम का प्रारंभिक परिव्यय सम्मिलित है, लेकिन लंबी अवधि में बहुत समय (और, विस्तार से, पैसा) बचा सकता है। यह उन प्रशासकों के लिए विशेष रूप से महत्वपूर्ण है जिन्हें बड़ी संख्या में कंप्यूटरों का प्रबंधन करने का काम सौंपा गया है, जहां प्रत्येक कंप्यूटर पर एक ऑपरेटिंग निकाय स्थापित करने के लिए विशिष्ट अभ्यास मूल मीडिया का उपयोग करना होगा और फिर स्थापना पूर्ण होने के बाद प्रत्येक कंप्यूटर को अपडेट करना होगा। अधिक अप-टू-डेट (स्लिपस्ट्रीमेड) स्रोत के साथ शुरू करने और स्लिपस्ट्रीम स्रोत में सम्मिलित नहीं किए गए कुछ अपडेट को डाउनलोड और इंस्टॉल करने की आवश्यकता के मुकाबले इसमें बहुत अधिक समय लगेगा।


हालांकि, सभी पैच इस तरीके से लागू नहीं किए जा सकते हैं और एक नुकसान यह है कि अगर यह पता चलता है कि एक निश्चित पैच बाद की समस्याओं के लिए जिम्मेदार है, तो उक्त पैच को मूल, गैर-स्लिपस्ट्रीम स्थापना स्रोत का उपयोग किए बिना हटाया नहीं जा सकता है।
यद्यपि, सभी पैच इस तरीके से लागू नहीं किए जा सकते हैं और एक नुकसान यह है कि अगर यह पता चलता है कि एक निश्चित पैच बाद की समस्याओं के लिए जिम्मेदार है, तो उक्त पैच को मूल, गैर-स्लिपस्ट्रीम स्थापना स्रोत का उपयोग किए बिना हटाया नहीं जा सकता है।


== सॉफ्टवेयर अपडेट सिस्टम ==
== सॉफ्टवेयर अपडेट निकाय ==
{{See also|Category:Software update managers|Push technology|Pull technology|Software verification}}
{{See also|Category:Software update managers|Push technology|Pull technology|Software verification}}
सॉफ़्टवेयर अपडेट सिस्टम उपयोगकर्ताओं और सॉफ़्टवेयर डेवलपर्स द्वारा अद्यतनों को प्रबंधित करने की अनुमति देते हैं। [[पेट्या ([[मैलवेयर]])]] में, वित्तीय सॉफ्टवेयर MeDoc के अपडेट सिस्टम को इसके अपडेट के माध्यम से मैलवेयर फैलाने के लिए समझौता किया गया है।<ref>{{cite web|last1=Thomson|first1=Iain|title=वायरस (खांसी, खांसी, पेट्या) FedEx पर डाक जाता है, शेयर रुके|website=[[The Register]]|url=https://www.theregister.co.uk/2017/06/28/fedex_tnt_express_virus_attack/|access-date=29 June 2017}}</ref><ref>{{cite web|title=नए पेट्या डिस्ट्रीब्यूशन वेक्टर्स सतह पर बुदबुदा रहे हैं|url=https://threatpost.com/new-petya-distribution-vectors-bubbling-to-surface/126577/|publisher=Threatpost|access-date=29 June 2017|date=28 June 2017}}</ref> टोर ब्लॉग पर साइबर सुरक्षा विशेषज्ञ माइक पेरी कहते हैं कि [[नियतात्मक संकलन]], वितरित बिल्ड संभावित रूप से मैलवेयर से बचाव का एकमात्र तरीका है जो सॉफ्टवेयर विकास और [[सॉफ्टवेयर निर्माण]] प्रक्रियाओं पर हमला करता है ताकि एक ही, आधिकारिक रूप से हस्ताक्षरित, तात्कालिक अपडेट में लाखों मशीनों को संक्रमित किया जा सके।<ref>{{cite web|title=नियतात्मक निर्माण भाग एक: साइबर युद्ध और वैश्विक समझौता {{!}} टोर ब्लॉग|url=https://blog.torproject.org/blog/deterministic-builds-part-one-cyberwar-and-global-compromise|website=blog.torproject.org|access-date=11 July 2017|language=en}}</ref> अद्यतन प्रबंधक सुरक्षा अद्यतनों को जल्दी और व्यापक रूप से लागू करने की अनुमति भी देते हैं। [[लिनक्स]] के अद्यतन प्रबंधक जैसे सिनैप्टिक (सॉफ़्टवेयर) उपयोगकर्ताओं को उनकी मशीन पर स्थापित सभी सॉफ़्टवेयर को अपडेट करने की अनुमति देते हैं। सिनैप्टिक जैसे एप्लिकेशन मैलवेयर के खिलाफ निष्ठा सुनिश्चित करने के लिए लागू होने से पहले स्रोत/स्थानीय फ़ाइलों को सत्यापित करने के लिए क्रिप्टोग्राफ़िक चेकसम का उपयोग करते हैं।<ref>{{cite book|last1=Proffitt|first1=Brian|title=उबंटू का परिचय: डेस्कटॉप लिनक्स|date=2008|publisher=Cengage Learning|isbn=978-1598637656|url=https://books.google.com/books?id=Fe8LAAAAQBAJ&pg=PA141|access-date=11 July 2017|language=en}}</ref><ref>{{cite book|last1=Magazines|first1=S. P. H.|title=WM|date=2007|publisher=SPH Magazines|url=https://books.google.com/books?id=G-sDAAAAMBAJ&pg=PT96|access-date=11 July 2017|language=en}}</ref>
सॉफ़्टवेयर अपडेट निकाय उपयोगकर्ताओं और सॉफ़्टवेयर डेवलपर्स द्वारा अद्यतनों को प्रबंधित करने की अनुमति देते हैं। [[पेट्या ([[मैलवेयर]])]] में, वित्तीय सॉफ्टवेयर MeDoc के अपडेट निकाय को इसके अपडेट के माध्यम से मैलवेयर फैलाने के लिए समझौता किया गया है।<ref>{{cite web|last1=Thomson|first1=Iain|title=वायरस (खांसी, खांसी, पेट्या) FedEx पर डाक जाता है, शेयर रुके|website=[[The Register]]|url=https://www.theregister.co.uk/2017/06/28/fedex_tnt_express_virus_attack/|access-date=29 June 2017}}</ref><ref>{{cite web|title=नए पेट्या डिस्ट्रीब्यूशन वेक्टर्स सतह पर बुदबुदा रहे हैं|url=https://threatpost.com/new-petya-distribution-vectors-bubbling-to-surface/126577/|publisher=Threatpost|access-date=29 June 2017|date=28 June 2017}}</ref> टोर ब्लॉग पर साइबर सुरक्षा विशेषज्ञ माइक पेरी कहते हैं कि [[नियतात्मक संकलन]], वितरित बिल्ड संभावित रूप से मैलवेयर से बचाव का एकमात्र तरीका है जो सॉफ्टवेयर विकास और [[सॉफ्टवेयर निर्माण]] प्रक्रियाओं पर हमला करता है ताकि एक ही, आधिकारिक रूप से हस्ताक्षरित, तात्कालिक अपडेट में लाखों मशीनों को संक्रमित किया जा सके।<ref>{{cite web|title=नियतात्मक निर्माण भाग एक: साइबर युद्ध और वैश्विक समझौता {{!}} टोर ब्लॉग|url=https://blog.torproject.org/blog/deterministic-builds-part-one-cyberwar-and-global-compromise|website=blog.torproject.org|access-date=11 July 2017|language=en}}</ref> अद्यतन प्रबंधक सुरक्षा अद्यतनों को जल्दी और व्यापक रूप से लागू करने की अनुमति भी देते हैं। [[लिनक्स]] के अद्यतन प्रबंधक जैसे सिनैप्टिक (सॉफ़्टवेयर) उपयोगकर्ताओं को उनकी मशीन पर स्थापित सभी सॉफ़्टवेयर को अपडेट करने की अनुमति देते हैं। सिनैप्टिक जैसे एप्लिकेशन मैलवेयर के खिलाफ निष्ठा सुनिश्चित करने के लिए लागू होने से पहले स्रोत/स्थानीय फ़ाइलों को सत्यापित करने के लिए क्रिप्टोग्राफ़िक चेकसम का उपयोग करते हैं।<ref>{{cite book|last1=Proffitt|first1=Brian|title=उबंटू का परिचय: डेस्कटॉप लिनक्स|date=2008|publisher=Cengage Learning|isbn=978-1598637656|url=https://books.google.com/books?id=Fe8LAAAAQBAJ&pg=PA141|access-date=11 July 2017|language=en}}</ref><ref>{{cite book|last1=Magazines|first1=S. P. H.|title=WM|date=2007|publisher=SPH Magazines|url=https://books.google.com/books?id=G-sDAAAAMBAJ&pg=PT96|access-date=11 July 2017|language=en}}</ref>




Line 175: Line 175:
*चक्रीय अतिरेक की जाँच
*चक्रीय अतिरेक की जाँच
*MMORPG
*MMORPG
*शोषण (ऑनलाइन गेमिंग)
*शोषण (ऑनलाइन खेलिंग)
*गुबरैला (सॉफ्टवेयर)
*गुबरैला (सॉफ्टवेयर)
*पुस्तकालय (कंप्यूटर विज्ञान)
*पुस्तकालय (कंप्यूटर विज्ञान)
Line 188: Line 188:
* [https://web.archive.org/web/20160603230400/http://singe.za.net/blog/archives/763-Limiting-Vulnerability-Exposure-through-effective-Patch-Management-a-thesis.html A detailed masters dissertation dealing with security patches]
* [https://web.archive.org/web/20160603230400/http://singe.za.net/blog/archives/763-Limiting-Vulnerability-Exposure-through-effective-Patch-Management-a-thesis.html A detailed masters dissertation dealing with security patches]
* [https://web.archive.org/web/20160526200829/http://linux.yyz.us/patch-format.html Official Linux kernel patch format]
* [https://web.archive.org/web/20160526200829/http://linux.yyz.us/patch-format.html Official Linux kernel patch format]
* [https://www.techzoom.net/publications/0-day-patch 0-Day Patch - Exposing Vendors (In)security Performance] {{Webarchive|url=https://web.archive.org/web/20140131144456/http://www.techzoom.net/publications/0-day-patch/ |date=2014-01-31 }}{{snd}} a metric comparing patch performance of Microsoft and Apple
* [https://www.techzoom.net/publications/0-day-patch 0-Day Patch - Exposing Vendors (In)security Performance] {{Webarchive|url=https://web.archive.org/web/20140131144456/http://www.techzoom.net/publications/0-day-patch/ |date=2014-01-31 }}{{snd}} a metric comparing patch performance of माइक्रोसॉफ्टand एप्पल
[[श्रेणी: सॉफ्टवेयर रखरखाव]]
[[श्रेणी: सॉफ्टवेयर रखरखाव]]
[[श्रेणी: सॉफ़्टवेयर रिलीज़]]
[[श्रेणी: सॉफ़्टवेयर रिलीज़]]

Revision as of 09:55, 29 December 2022

"पैच" के अन्य उपयोगों के लिए, पैच (बहुविकल्पी) § कम्प्यूटिंग देखें।

"सॉफ़्टवेयर अपडेट" यहां रीडायरेक्ट करता है। मैक ओएस घटक के लिए, एप्पल सॉफ़्टवेयर अपडेट देखें।

इस लेख में सामान्य संदर्भों की एक सूची सम्मिलित है, लेकिन इसमें पर्याप्त संगत इनलाइन उद्धरणों का अभाव है। कृपया अधिक सटीक उद्धरण देकर इस लेख को बेहतर बनाने में सहयोग करें। (फरवरी 2018)

एक पैच एक कंप्यूटर प्रोग्राम या इसके सहायक डेटा में परिवर्तन का एक समुच्चय है जिसे इसे अपडेट करने, ठीक करने या सुधारने के लिए रचित किया गया है।[1] इसमें सुरक्षा भेद्यता को ठीक करना सम्मिलित है[1]और अन्य कंप्यूटर बग, ऐसे पैच के साथ जिन्हें सामान्य रूप पर बग फिक्स या बग फिक्स कहा जाता है।[2][better source needed] पैच सामान्यता किसी प्रोग्राम की कार्यक्षमता, उपयोगिता, या कंप्यूटर के प्रदर्शन को बेहतर बनाने के लिए लिखे जाते हैं। अधिकांश पैच सॉफ़्टवेयर विक्रेताओं द्वारा ऑपरेटिंग निकाय और एप्लिकेशन अपडेट के लिए प्रदान किए जाते हैं।

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

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

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

पैच प्रबंधन अनुप्रयोग जीवनचक्र प्रबंधन का एक हिस्सा है, और यह एक रणनीति और योजना का उपयोग करने की प्रक्रिया है कि कौन से पैच को एक निर्दिष्ट समय पर निकाय पर लागू किया जाना चाहिए।

प्रकार

बाइनरी पैच

प्राथमिक सॉफ़्टवेयर के लिए पैच सामान्य रूप पर स्रोत कोड के अतिरिक्त निष्पादन योग्य फ़ाइलों के रूप में वितरित किए जाते हैं। निष्पादित होने पर ये फ़ाइलें एक प्रोग्राम को स्मृति में लोड करती हैं जो डिस्क पर लक्ष्य प्रोग्राम में पैच कोड की स्थापना का प्रबंधन करती है।

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

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

छोटे इन-मेमोरी मशीन कोड पैच को पारस्परिक रूप से निकाय डिबग यूटिलिटी के साथ लागू किया जा सकता है, जैसे कि CP/M का DDT या MS-DOS का DEBUG डिबगर्स। व्याख्या किए गए मूलभूत कंप्यूटर में काम करने वाले प्रोग्रामर सामान्यता POKE कमांड का इस्तेमाल निकाय सर्विस रूटीन या इंटरप्रेटर की कार्यक्षमता को बदलने के लिए करते हैं।

स्रोत कोड पैच

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

बड़े पैच

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


इतिहास

1944 के हार्वर्ड मार्क I के लिए एक प्रोग्राम टेप, जो पहले डिजिटल कंप्यूटरों में से एक था। ध्यान दें कि भौतिक पैच छिद्रित छिद्रों को कवर करके ठीक करने के लिए उपयोग किए जाते हैं।

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

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

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

आवेदन

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

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

बड़े पैमाने पर होने के कारण उपभोक्ता बाजार में पूरी तरह से स्वचालित अपडेट का उपयोग कहीं अधिक व्यापक हो गया है[citation needed] तथ्य यह है कि माइक्रोसॉफ़्ट विंडोज़ ने उनके लिए समर्थन जोड़ा[when?], और विंडोज एक्स पी सर्विस पैक 2 (2004 में उपलब्ध) ने उन्हें एक मात्र उनके ही रूप से सक्षम किया। सतर्क उपयोगकर्ता, विशेष रूप से निकाय प्रशासक, पैच लगाने को तब तक के लिए टाल देते हैं जब तक कि वे फिक्स की स्थिरता को सत्यापित नहीं कर सकते। माइक्रोसॉफ्ट विंडोज सर्वर अद्यतन सेवाएँ|(डब्लू)एस यु एस इसका समर्थन करता है। बड़े पैच या महत्वपूर्ण परिवर्तनों के मामलों में, वितरक सामान्यता विकास चरण बीटा के रूप में योग्य डेवलपर्स के लिए पैच की उपलब्धता को सीमित कर देते हैं।

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

वीडियो खेल

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

कंपनियां कभी-कभी यह जानकर खेल जारी करती हैं कि उनमें बग हैं। कंप्यूटर खेलिंग वर्ल्ड's स्कॉर्पिया (पत्रकार) ने 1994 में उन कंपनियों की भर्त्सना की- जिनका उल्लेख करना मुश्किल है- जो यह जानते हुए घटिया उत्पाद जारी करती हैं कि वे पैच और अपग्रेड के साथ काम चला सकते हैं, और जो 'अपने ग्राहकों के भुगतान-परीक्षक।[6]


सॉफ्टवेयर विकास में

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

ओपन-सोर्स प्रोजेक्ट्स में, लेखक सामान्य रूप पर पैच प्राप्त करते हैं या कई लोग पैच प्रकाशित करते हैं जो विशेष समस्याओं को ठीक करते हैं या कुछ कार्यक्षमता जोड़ते हैं, जैसे प्रोजेक्ट के लोकेल के बाहर स्थानीय भाषाओं के लिए समर्थन। लिनक्स कर्नेल के शुरुआती विकास से एक उदाहरण में (इसके पूर्ण स्रोत कोड को प्रकाशित करने के लिए विख्यात), मूल लेखक लिनस टोरवाल्ड्स ने अपने मूल संस्करण के खिलाफ आवेदन करने के लिए कई प्रोग्रामर से सैकड़ों हजारों पैच प्राप्त किए। दोहराव वाले पैच के लिए, जेनेरिक पैच लिखने और उन्हें एक ही समय में कई स्थानों पर लागू करने के लिए Coccinelle (सॉफ़्टवेयर) जैसे उपकरण मौजूद हैं (सामान्य रूप पर लिनक्स कर्नेल के विषय में सैकड़ों स्थान)।[7] अमरीका की एक मूल जनजाति एचटीटीपी सर्वर मूल रूप से कई पैच के रूप में विकसित हुआ था, जिसे ब्रायन बेह्लडॉर्फ ने एनसीएसए एचटीटीपीडी को बेहतर बनाने के लिए एकत्र किया था, इसलिए एक नाम जिसका अर्थ है कि यह पैच का एक संग्रह है (अपाचे HTTP सर्वर#नाम| एक पैची सर्वर)। परियोजना की आधिकारिक साइट पर सामान्यता पूछे जाने वाले प्रश्न में कहा गया है कि 'अपाचे' नाम अपाचे के मूल अमेरिकी भारतीय जनजाति के सम्मान से चुना गया था। हालाँकि, 'एक पैची सर्वर' की व्याख्या शुरू में परियोजना की वेबसाइट पर दी गई थी।[8]


वेरिएंट

हॉटफिक्स

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

प्वाइंट रिलीज

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

कार्यक्रम अस्थायी सुधार

कार्यक्रम अस्थायी सुधार या उत्पाद अस्थायी सुधार (पीटीएफ), तिथि के आधार पर, एकल बग फिक्स, या फिक्स के समूह के लिए मानक आईबीएम शब्दावली है, जो ग्राहकों के लिए स्थापित करने के लिए तैयार रूप में वितरित किया जाता है। एक PTF को कभी-कभी "ZAP" कहा जाता था।[9] ग्राहक कभी-कभी परिवर्णी शब्द को जीभ-में-गाल तरीके से स्थायी अस्थायी सुधार के रूप में समझाते हैं या अधिक व्यावहारिक रूप से शायद यह ठीक करता है, क्योंकि उनके पास PTF को ऑपरेटिंग निकाय का एक स्थायी हिस्सा बनाने का विकल्प होता है यदि पैच समस्या को ठीक करता है।

सुरक्षा पैच

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

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

ये सुरक्षा पैच यह सुनिश्चित करने के लिए महत्वपूर्ण हैं कि व्यवसाय प्रक्रिया प्रभावित न हो। 2017 में, WannaCry रैंसमवेयर अटैक नामक एक रैंसमवेयर से कंपनियां प्रभावित हुईं, जो माइक्रोसॉफ्ट विंडोज के कुछ संस्करणों में फाइलों को एन्क्रिप्ट करती है और बिटकॉइन के माध्यम से फिरौती की मांग करती है। इसके जवाब में, माइक्रोसॉफ्टने एक पैच जारी किया जो रैंसमवेयर को चलने से रोकता है।

सर्विस पैक

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

अनौपचारिक पैच

एक अनौपचारिक पैच मूल सॉफ्टवेयर डेवलपर के अतिरिक्तकिसी तृतीय पक्ष द्वारा लिखे गए प्रोग्राम के लिए एक पैच है। एक साधारण पैच के समान, यह सॉफ्टवेयर बग या कमियों को दूर करता है। उदाहरण सुरक्षा विशेषज्ञों द्वारा सुरक्षा सुधार हैं जब सॉफ़्टवेयर निर्माताओं द्वारा आधिकारिक पैच स्वयं में बहुत अधिक समय लेता है।[10][11] अन्य उदाहरण एक वीडियो खेल के खेल समुदाय द्वारा बनाए गए अनौपचारिक पैच हैं जो असमर्थित परित्यागवेयर बन गए।[12][13]


बंदर पैच

बंदर का पैचिंग का अर्थ है किसी प्रोग्राम को स्थानीय रूप से विस्तारित या संशोधित करना (केवल प्रोग्राम के चल रहे उदाहरण को प्रभावित करना)।

हॉट पैचिंग

हॉट पैचिंग, जिसे लाइव पैचिंग या डायनेमिक सॉफ़्टवेयर अपडेटिंग के रूप में भी जाना जाता है, निकाय या संबंधित प्रोग्राम को बंद किए बिना और फिर से शुरू किए बिना पैच का अनुप्रयोग है। यह निकाय या प्रोग्राम द्वारा प्रदान की जाने वाली सेवा की अनुपलब्धता से संबंधित समस्याओं का समाधान करता है।[14] निकाय को रोके बिना लिनक्स कर्नेल को अपडेट करने के लिए विधि का उपयोग किया जा सकता है।[15][16] एक पैच जिसे इस तरह से लगाया जा सकता है उसे हॉट पैच या लाइव पैच कहा जाता है। मोबाइल ऐप स्पेस में यह एक आम बात होती जा रही है।[17] Rollout.io जैसी कंपनियां iOS इकोनिकाय में हॉट पैच डिलीवर करने के लिए स्विजलिंग मेथड का इस्तेमाल करती हैं।[18] हॉट-पैचिंग iOS ऐप्स के लिए एक अन्य तरीका JSPatch है।[19] अंतर्निहित बुनियादी ढांचे को अपडेट करते समय क्लाउड प्रदाता सामान्यता ग्राहकों के लिए डाउनटाइम से बचने के लिए हॉट पैचिंग का उपयोग करते हैं।[20]


स्लिपस्ट्रीमिंग

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

यद्यपि, सभी पैच इस तरीके से लागू नहीं किए जा सकते हैं और एक नुकसान यह है कि अगर यह पता चलता है कि एक निश्चित पैच बाद की समस्याओं के लिए जिम्मेदार है, तो उक्त पैच को मूल, गैर-स्लिपस्ट्रीम स्थापना स्रोत का उपयोग किए बिना हटाया नहीं जा सकता है।

सॉफ्टवेयर अपडेट निकाय

सॉफ़्टवेयर अपडेट निकाय उपयोगकर्ताओं और सॉफ़्टवेयर डेवलपर्स द्वारा अद्यतनों को प्रबंधित करने की अनुमति देते हैं। [[पेट्या (मैलवेयर)]] में, वित्तीय सॉफ्टवेयर MeDoc के अपडेट निकाय को इसके अपडेट के माध्यम से मैलवेयर फैलाने के लिए समझौता किया गया है।[23][24] टोर ब्लॉग पर साइबर सुरक्षा विशेषज्ञ माइक पेरी कहते हैं कि नियतात्मक संकलन, वितरित बिल्ड संभावित रूप से मैलवेयर से बचाव का एकमात्र तरीका है जो सॉफ्टवेयर विकास और सॉफ्टवेयर निर्माण प्रक्रियाओं पर हमला करता है ताकि एक ही, आधिकारिक रूप से हस्ताक्षरित, तात्कालिक अपडेट में लाखों मशीनों को संक्रमित किया जा सके।[25] अद्यतन प्रबंधक सुरक्षा अद्यतनों को जल्दी और व्यापक रूप से लागू करने की अनुमति भी देते हैं। लिनक्स के अद्यतन प्रबंधक जैसे सिनैप्टिक (सॉफ़्टवेयर) उपयोगकर्ताओं को उनकी मशीन पर स्थापित सभी सॉफ़्टवेयर को अपडेट करने की अनुमति देते हैं। सिनैप्टिक जैसे एप्लिकेशन मैलवेयर के खिलाफ निष्ठा सुनिश्चित करने के लिए लागू होने से पहले स्रोत/स्थानीय फ़ाइलों को सत्यापित करने के लिए क्रिप्टोग्राफ़िक चेकसम का उपयोग करते हैं।[26][27]


यह भी देखें

संदर्भ

  1. 1.0 1.1 "Microsoft रिकॉर्ड पर सबसे बड़ा सॉफ़्टवेयर पैच जारी करता है". Reuters. 2009-10-14. Archived from the original on 16 October 2009. Retrieved 14 October 2009.
  2. "बग फिक्स क्या है? - टेकोपेडिया से परिभाषा". techopedia.com. Retrieved 2015-07-29.
  3. "सर्विस पैक और अद्यतन केंद्र". windows.microsoft.com. Retrieved 2015-06-01.
  4. "पारिभाषिक शब्दावली". www.tavi.co.uk.
  5. Liu, Ashok (June 2012). कंप्यूटरकेयर की लैपटॉप मरम्मत कार्यपुस्तिका: क्लासिक नोटबुक कंप्यूटर समस्या निवारण और मरम्मत के 300 मामले. AuthorHouse (published 2012). p. 591. ISBN 9781477205402. Retrieved 2015-01-08. हाई डेफिनिशन ऑडियो ड्राइवर पैच KB835221 और KB888111 [...] की स्थापना रद्द करें
  6. Scorpia (April 1994). "तो आप हीरो बनना चाहते हैं?". Scorpion's View. Computer Gaming World. pp. 54–58.
  7. Koyuncu, Anil; Bissyandé, Tegawendé F.; Kim, Dongsun; Klein, Jacques; Monperrus, Martin; Le Traon, Yves (10 July 2017). "Impact of tool support in patch construction". सॉफ्टवेयर परीक्षण और विश्लेषण पर 26वें ACM SIGSOFT अंतर्राष्ट्रीय संगोष्ठी की कार्यवाही. pp. 237–248. arXiv:1812.07416. doi:10.1145/3092703.3092713. ISBN 9781450350761. S2CID 34750283.
  8. "अपाचे HTTP सर्वर प्रोजेक्ट". 15 June 1997. Archived from the original on 15 June 1997.{{cite web}}: CS1 maint: bot: original URL status unknown (link)
  9. "SPZAP (उर्फ सुपरज़ैप): प्रोग्राम या डेटा को गतिशील रूप से अपडेट करें". IBM Knowledge Center. Retrieved 2020-02-23.
  10. Barwise, Mike (2007-10-16). "विंडोज यूआरआई समस्या के लिए अनौपचारिक पैच". The H Security. Retrieved 2012-01-29.
  11. "एक अन्य अनौपचारिक आईई पैच ने महत्वपूर्ण दोष का मुकाबला करने की पेशकश की". Computer Weekly. 2006-03-30. Retrieved 2013-07-09. माइक्रोसॉफ्ट के इंटरनेट एक्सप्लोरर ब्राउज़र में एक महत्वपूर्ण दोष का मुकाबला करने के लिए एक और अनौपचारिक पैच जारी किया गया है।
  12. Wen, Howard (2004-06-10). "मिथकों को जिंदा रखना". linuxdevcenter.com. Retrieved 2012-12-22. [...]मिथ ट्रिलॉजी के प्रशंसकों ने इस विचार को एक कदम आगे बढ़ाया है: उनके पास मिथ गेम्स के स्रोत कोड तक आधिकारिक पहुंच है। MythDevelopers के नाम से संगठित, प्रोग्रामरों, कलाकारों और अन्य प्रतिभाशाली लोगों का यह सर्व-स्वयंसेवक समूह, Myth गेम श्रृंखला के आगे के विकास में सुधार करने और उसका समर्थन करने के लिए अपना समय समर्पित करता है।
  13. Bell, John (2009-10-01). "कला के स्रोत को खोलना". Technology Innovation Management Review. Archived from the original on 2014-03-30. Retrieved 2012-12-30. [...]कि शीर्षक के लिए कोई और पैच आगामी नहीं होगा। समुदाय अनुमानित रूप से परेशान था। गेम को छोड़ने के बजाय, उपयोगकर्ताओं ने फैसला किया कि अगर एक्टिवेशन बग्स को ठीक नहीं करने वाला था, तो वे करेंगे। वे स्रोत को खोलने के लिए एक्टिविज़न प्राप्त करके खेल को बचाना चाहते थे ताकि इसे उस बिंदु से आगे जीवित रखा जा सके जहाँ एक्टिविज़न ने रुचि खो दी। प्रशंसक मंचों पर सक्रिय विकास टीम के सदस्यों की कुछ मदद से, वे अंततः 2003 के अक्टूबर में पावर II के स्रोत कोड को कॉल जारी करने के लिए एक्टिविज़न को समझाने में सक्षम थे।
  14. "ओरेकल पत्रिका". Oracle.com. Archived from the original on 2008-05-14. Retrieved 2013-01-04.
  15. "Linux कर्नेल को लाइव पैच करना".
  16. "लिनक्स कर्नेल लाइव पैचिंग: यह क्या है और इसकी आवश्यकता किसे है". 6 March 2020.
  17. "गर्म या नहीं? आईओएस रिमोट हॉट पैचिंग के लाभ और जोखिम « थ्रेट रिसर्च ब्लॉग". FireEye. Retrieved 2016-10-26.
  18. Perez, Sarah. "Rollout.io मोबाइल डेवलपर्स को उनके ऐप्स के नियंत्रण में वापस लाता है". TechCrunch. Retrieved 2016-10-26.
  19. "बैंग590/जेएसपीच". GitHub. Retrieved 2016-10-26.
  20. "Azure SQL डेटाबेस में हॉट पैचिंग SQL सर्वर इंजन". TECHCOMMUNITY.MICROSOFT.COM. 2019-09-11. Retrieved 2019-09-15.
  21. Karp, David (14 July 2008). "एक XP SP3 रिकवरी डिस्क बनाएँ". PC Magazine. Ziff Davis.
  22. Thurrott, Paul (7 May 2008). "सर्विस पैक 3 (SP3) के साथ स्लिपस्ट्रीमिंग Windows XP". Supersite for Windows. Penton.
  23. Thomson, Iain. "वायरस (खांसी, खांसी, पेट्या) FedEx पर डाक जाता है, शेयर रुके". The Register. Retrieved 29 June 2017.
  24. "नए पेट्या डिस्ट्रीब्यूशन वेक्टर्स सतह पर बुदबुदा रहे हैं". Threatpost. 28 June 2017. Retrieved 29 June 2017.
  25. "नियतात्मक निर्माण भाग एक: साइबर युद्ध और वैश्विक समझौता | टोर ब्लॉग". blog.torproject.org. Retrieved 11 July 2017.
  26. Proffitt, Brian (2008). उबंटू का परिचय: डेस्कटॉप लिनक्स. Cengage Learning. ISBN 978-1598637656. Retrieved 11 July 2017.
  27. Magazines, S. P. H. (2007). WM. SPH Magazines. Retrieved 11 July 2017.


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

  • सॉफ्टवेयर प्रतिगमन
  • प्रयोज्य
  • आवेदन जीवनचक्र प्रबंधन
  • कंप्यूटर का प्रदर्शन
  • मालिकाना सॉफ्टवेयर
  • निष्पादनीय फाइल
  • सोर्स कोड
  • वेबसाइट
  • पैकेज प्रबंधन प्रणाली
  • विंडोज सर्वर अपडेट सर्विसेज
  • चक्रीय अतिरेक की जाँच
  • MMORPG
  • शोषण (ऑनलाइन खेलिंग)
  • गुबरैला (सॉफ्टवेयर)
  • पुस्तकालय (कंप्यूटर विज्ञान)
  • वानाक्राई रैंसमवेयर अटैक
  • जिम्मेदार प्रकटीकरण
  • abandonware
  • विधि स्विज़लिंग
  • सिनैप्टिक (सॉफ्टवेयर)
  • स्वचालित बग फिक्सिंग

बाहरी कड़ियाँ

श्रेणी: सॉफ्टवेयर रखरखाव श्रेणी: सॉफ़्टवेयर रिलीज़