विंडोज एक्सपी और नए संस्करणों पर बीएसओडी कैसे पैदा करें?


14

क्या विंडोज़ एक्सपी और नए संस्करणों पर बीएसओडी को प्रोग्राम करने का एक तरीका है? कैसे?

BTW सिर्फ स्पष्ट करने के लिए, यह दुर्भावनापूर्ण उद्देश्यों के लिए नहीं है। क्लाइंट ने अनुरोध किया कि वे अपने लैन पर टर्मिनल को इस तरह से बंद / रिबूट कर सकें। जब मैंने पूछा कि क्यों, उन्होंने कहा क्योंकि यह एक सामान्य रिबूट से तेज है ... :)

(मैं उत्सुक हूं कि "प्रोग्रामेटिकली" कौन सा हिस्सा उन लोगों को समझ में नहीं आता है जिन्होंने इसे सुपर यूजर के लिए माइग्रेट किया है। डुह)


18
यदि आपको ऐसा लगता है जिसमें ड्राइवर लिखना नहीं है, तो Microsoft को सूचित करें ताकि वे इसे ठीक कर सकें।
एरिक

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

12
आपके ग्राहक को संस्थागत रूप देने की जरूरत है और उसकी मानसिक स्थितियों का चिकित्सकीय टीम द्वारा अधिक बारीकी से पालन किया जाता है।
डारिन दिमित्रोव

9
एम्बुलेंस भी आमतौर पर अस्पताल में अपनी कार चलाने से ज्यादा तेज होती हैं। यह यात्रा का पसंदीदा तरीका नहीं है।
FreeAsInBeer

8
अपने क्लाइंट को 6 सेकंड के लिए पावर बटन को दबाने और पकड़ने के लिए कहें। या बस शक्ति कॉर्ड झटका, यह जल्दी है।
हंस पैसेंट

जवाबों:


15

कीबोर्ड चालक को बीएसओडी का कारण बताया जा सकता है:

HKLM\SYSTEM\CurrentControlSet\Services\kbdhid\Parameters

या (पुराने PS / 2 कीबोर्ड के लिए)

HKLM\SYSTEM\CurrentControlSet\Services\i8042prt\Parameters

और वहाँ एक REG_DWORDनाम निर्धारित CrashOnCtrlScrollकिया है 1

अगले रिबूट के बाद आप ब्लू स्क्रीन को Ctrl+ ScrollLk+ द्वारा बाध्य कर सकते हैं ScrollLk। इस मामले में बग चेक कोड 0xE2 (MANUALLY_INITIATED_CRASH) होगा।

यदि आप वास्तव में एक प्रोग्रामेटिक विधि चाहते हैं, तो आपको उस मशीन पर कुछ ड्राइवर में एक छेद खोजने या लिखने और एक सरल चालक को स्थापित करने की आवश्यकता है जो या तो कॉल करता है KeBugCheckया KeBugCheckEx

मज़े करो ;)

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


4
क्या ये सच है? अगर यह अच्छा है! (नहीं, मैं इसे अपने किसी भी कंप्यूटर पर परीक्षण करने के मूड में नहीं हूं।)
एंड्रियास रिब्रांडैंड

3
हां, यह वास्तव में मजाक के रूप में नहीं है। यह कुछ ड्राइवर लेखकों ने कुछ समय के लिए उपयोग किया है, हालांकि मुझे अपने सिर के ऊपर से याद नहीं था कि रजिस्ट्री स्थान क्या था। इसे मेरे नोट्स में देखना था।
0xC0000022L

मैंने प्रिंटस्क्रीन लगाकर या राम या आंतरिक हार्डिस्क का उपयोग करके बहुत अधिक मेमोरी के द्वारा एक bsod का अनुभव किया। शायद किसी सिस्टम का शोषण भी कर रहा हो।
टेक-आईओ


1

निश्चित रूप से यह सुनिश्चित करने का कारण नहीं है कि यह कैसे होता है, लेकिन मैं विस्टा और 7 में विश्वास करता हूं, यह सिस्टम विफलता पर बंद करने और बीएसओडी को नहीं दिखाने के लिए चूक करता है।


यह ठीक है, मुझे वह व्यवहार चाहिए।
तमसे सजेलेई

1
@FreeAsInBeer: वास्तव में ऐसा इसलिए है क्योंकि आपकी सिस्टम सेटिंग्स क्रैश के बाद इसे रिबूट करने के लिए कहती हैं। इसे आपके कंप्यूटर गुणों के उन्नत टैब में बदला जा सकता है। इसके अलावा, आजकल बनाए गए क्रैश डंप आमतौर पर डिफ़ॉल्ट रूप से मिनी डंप होते हैं, यही वजह है कि रिबूट इतनी तेजी से होता है कि आपको नीली स्क्रीन (शाब्दिक) देखने को नहीं मिलती है। लेकिन यह वहाँ है, मेरा विश्वास करो;)
0xC0000022L

1
@STATUS_ACCESS_DENIED: मुझे पता है, मैं बस उसे बता रहा था कि इस चर के लिए डिफ़ॉल्ट बीएसओडी को नहीं दिखाने के लिए तैयार है, इसलिए वह उस संपत्ति की जांच करना जानता था यदि उसे उम्मीद के मुताबिक एक नहीं मिला।
FreeAsInBeer

@FreeAsInBeer: काफी फेयर :)
0xC0000022L

1

आमतौर पर, बीएसओडी तब होता है जब ऑपरेटिंग सिस्टम या हार्डवेयर के भीतर कुछ गलत हो जाता है। ऑपरेटिंग सिस्टम के लेखक और हार्डवेयर विक्रेता एक जैसे बुरे सॉफ्टवेयर इंजीनियरों की सराहना नहीं करते, क्योंकि उनके उत्पाद खराब दिखते हैं और उनके उपयोगकर्ताओं के अनुभव को बर्बाद करते हैं।

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


1

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

सामान्य विंडोज मशीनों में बहुत सी अवस्थाएँ होती हैं और कर्नेल में। राज्य को सुसंगत बनाए रखने के लिए आपको जो भी सफाई की जरूरत है, ठीक है, आप इसे कम परिचालित करेंगे।

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

इसलिए, शटडाउन पर आपका कुछ लाभ स्टार्टअप पर चला गया है, क्योंकि अब यह पता लगाने की आवश्यकता है कि यह कहाँ मिल गया है क्योंकि यह पैरों के नीचे से ही कटा हुआ है। यह चॉक को चलाने और किसी भी डिस्क ब्लॉक को साफ करने की जरूरत है जो आंशिक रूप से लिखते हैं। USB कैश को बहुत बढ़ाता है। आप कैशिंग को बंद कर सकते हैं जिससे क्रैश पर डेटा खोने की संभावना कम होगी, लेकिन तब कैशिंग कुछ गति को दूर नहीं करता है। आप किन फ़ाइलों को खोने के लिए तैयार हैं?

संक्षेप में, यह एक बुरा विचार है। कोई भी उत्पादन मशीन जो ऐसा होता है, सफाई के बाद भी अस्थिर स्थिति में हो सकती है। ये गलत है।

मैं सिर्फ शटडाउन के हिट लेने और पुनः आरंभ करने के लिए कहूंगा। आपको लगता है कि जो भी समय बचत होगी उसे खो देंगे आपको पहली बार सर्वर के पुनर्निर्माण की आवश्यकता है क्योंकि यह बूट नहीं होगा या आपके प्रोग्राम शुरू नहीं हो सकते।


आपको बात याद आती है। आपके द्वारा लिखे गए ड्राइवर के साथ किसी समस्या को डीबग करते समय बीएसओडी की मांग के कारण अच्छे कारण हैं। हालाँकि, मुझे लगता है कि इस प्रश्न को कभी भी एसओ से यहाँ पर नहीं जाना चाहिए था, इसकी प्रकृति के कारण।
0xC0000022L

@STATUS_ACCESS_DENIED मैं आपके कथन से सहमत हूं, लेकिन यदि आपको मूल प्रश्न याद है, तो इसका डिबगिंग से कोई लेना-देना नहीं है, लेकिन एक सिस्टम को बंद करने का एक शॉर्टकट है। मेरी राय में एक अच्छा कारण नहीं है।
रिच होमोलका

0

उल्लेख है कि csrss.exe प्रक्रिया को मारने से बीएसओडी बन जाएगा। लेकिन नवीनतम विंडोज (8, 8.1) पर नहीं।


यह एक ऐप द्वारा किया जा सकता है। विजुअल स्टूडियो एक्सप्रेस (फ्री) में कोई भी ऐसा ऐप बना सकता है।
pbies

यह कोड 0xC000021A ( STATUS_SYSTEM_PROCESS_TERMINATED), btw है।
0xC0000022L

0

Https://www.mpgh.net/forum/showthread.php?t=1100477 से कोड स्निपेट विंडोज 10.17134 पर काम करता है

#include <windows.h>
#pragma comment(lib, "ntdll.lib")

extern "C" NTSTATUS NTAPI RtlAdjustPrivilege(ULONG Privilege, BOOLEAN Enable, BOOLEAN CurrentThread, PBOOLEAN OldValue);
extern "C" NTSTATUS NTAPI NtRaiseHardError(LONG ErrorStatus, ULONG NumberOfParameters, ULONG UnicodeStringParameterMask,
PULONG_PTR Parameters, ULONG ValidResponseOptions, PULONG Response);

void BlueScreen()
{
    BOOLEAN bl;
    ULONG Response;
    RtlAdjustPrivilege(19, TRUE, FALSE, &bl); // Enable SeShutdownPrivilege
    NtRaiseHardError(STATUS_ASSERTION_FAILURE, 0, 0, NULL, 6, &Response); // Shutdown
}

इवेंट लॉग में कोई ट्रेस नहीं लगता है। हालांकि minidump में एक ट्रेस द्वारा निश्चित रूप से होगा?

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.