2009-11-21 10 views
7

का उपयोग कर BIOS सेटिंग्स बदलें मैं सोच रहा था कि राम प्रोग्राम और जीएफएक्स कार्ड के बीच साझा की जाने वाली मेमोरी की मात्रा को बदलने के लिए सी प्रोग्राम लिखने का कोई तरीका है या सामान्य रूप से मैं कैसे संपर्क करूं BIOS सेटिंग्स?सी भाषा

+0

http://www.microsoft.com/communities/newsgroups/en-us/default.aspx?dg=microsoft.public.vc ।भाषा और tid = f5c02216-01e2-46d4-8c99-ac6a5981313c और cat = & lang = & cr = और sloc = & p = 1 – Xinus

+1

मुझे लगता है कि ऐसा करने के लिए यह अच्छा नहीं है, "ऐसा मत करें" –

+0

मशीनों के स्वास्थ्य के लिए संभावित रूप से खतरनाक। ऐसा मत करो। – ty812

उत्तर

10

लघु जवाब: नहीं

लांग जवाब: नहीं उपयोगकर्ता के BIOS के साथ गड़बड़। ऐसा कोई कारण है कि कोई एपीआई नहीं है या ऐसा करना पसंद है। मेरा कंप्यूटर, मेरी सेटिंग्स।

13

आप I/O पोर्ट 70h और 71h के माध्यम से BIOS सेटिंग्स तक पहुंच सकते हैं। (कुछ चिपसेट्स में 72/73 या इसी तरह के एक विस्तारित सीएमओएस भी हैं।)

आप किस ओएस का उपयोग कर रहे हैं? यदि आप विंडोज चला रहे हैं, तो आप सीधे किसी एप्लिकेशन से पोर्ट I/O नहीं कर पाएंगे, आपको कर्नेल मोड ड्राइवर लिखना होगा, या WinIO जैसे तृतीय-पक्ष टूलकिट का उपयोग करना होगा। लिनक्स के तहत, आप सीएमओएस सेटिंग्स प्राप्त करने के लिए/dev/nvram का उपयोग कर सकते हैं। (लिनक्स एनवीआरएम ड्राइवर का मानना ​​है कि आपके चिपसेट के लिए समर्थन है। अन्यथा उपयोग करें/dev/port।)

एक बार जब आप सीएमओएस बिट्स पर पहुंच जाएंगे, तो अगला कार्य यह पता लगाएगा कि सीएमओएस में कौन सा स्थान वीडियो मेमोरी सेटिंग से मेल खाता है। http://ivs.cs.uni-magdeburg.de/~zbrog/asm/cmos.html

CMOS स्थानों के नक्शे मदरबोर्ड, BIOS, और BIOS राजस्व के लिए अत्यंत विशिष्ट है:

यहाँ एक (बुरी तरह अधूरा) CMOS स्मृति स्थानों के नक्शे है। (सीएमओएस मानचित्र BIOS revs के बीच बदल सकता है क्योंकि नए मेनू विकल्प जोड़े/हटा दिए जाते हैं।) हो सकता है कि आपका मदरबोर्ड विक्रेता आपको सीएमओएस मानचित्र प्रदान कर सके। उनके पास ऐसा नक्शा उत्पन्न करने के लिए उपकरण हैं (यह BIOS संकलन प्रक्रिया का हिस्सा है), लेकिन हो सकता है कि वे इसे साझा करने के इच्छुक न हों।

मानचित्र के बिना, यह निर्धारित करने के लिए अन्य विधियां हैं कि सीएमओएस में कौन सी बिट्स वीडियो मेमोरी साइज का प्रतिनिधित्व करती हैं। विभिन्न स्मृति आकारों के साथ सीएमओएस सेटिंग्स को डंप करने का प्रयास करें और पता लगाएं कि कौन से बिट बदलते हैं।

कुछ अन्य विवरण:

  1. कुछ "मानक" CMOS बिट्स के बाहर, उनमें से ज्यादातर अत्यंत मंच निर्भर कर रहे हैं, मुझे आशा है कि आप इस से बाहर एक सामान्य प्रयोजन आवेदन करने की योजना नहीं बना रहे थे ।

  2. सीएमओएस में कुछ ऑफसेट पर चेकसम हैं। सीएमओएस मूल्य बदलने के बाद, आपको परिवर्तनों को दर्शाने के लिए चेकसम को ठीक करना होगा।

  3. एक बार जब आप सेटिंग बदल देते हैं, तो यह अगले रीबूट पर प्रभावी नहीं होगा (जब BIOS CMOS सेटिंग्स को पढ़ता है और चिपसेट प्रारंभ करता है)।

  4. क्या यह इंटेल चिपसेट है? इंटेल ग्राफिक्स कोर में एक डायनामिक वीडियो मेमोरी टेक्नोलॉजी (डीवीएमटी) नामक एक जादू सुविधा होती है जो वीडियो मेमोरी उपयोग को ट्विक करती है, इस पर आधारित ग्राफिक्स-गहन चल रहा एप्लिकेशन कैसा है। http://www.intel.com/support/graphics/sb/cs-010488.htm मुझे यकीन नहीं है कि अन्य चिपसेट विक्रेताओं की एक समान तकनीक है या नहीं।

  5. यह सब आधुनिक यूईएफआई सिस्टम पर खिड़की से बाहर फेंक दें, जो आमतौर पर सेटिंग के लिए BIOS फ्लैश चिप में एक गैर-वोल्टाइल स्टोरेज विभाजन का उपयोग करता है। (कुछ CMOS स्थानों को UEFI- सिस्टम पर विरासत संगतता भर जाती है।)

संबंधित मुद्दे