आप मदरबोर्ड के BIOS को अपडेट करने के लिए फ्लैशरोम का उपयोग कर सकते हैं ।
उदाहरण (Abit KN9 Ultra):
बोर्ड 2006 से जारी एएमडी एथलॉन 64 बोर्ड, एएम 2 सॉकेट, एनवीडिया चिपसेट है। इसमें 256 केबी की फ्लैश चिप है जो बदली जा सकती है। BIOS को 'पुरस्कार' के साथ लेबल किया गया है, जो फीनिक्स का ट्रेडमार्क लगता है।
Flashrom उस चिपसेट और उस फ़्लैश चिप का समर्थन करता है।
समर्थन को एक कमांड के साथ परीक्षण किया जा सकता है जैसे:
# flashrom --programmer internal
Calibrating delay loop... OK.
Found chipset "NVIDIA MCP55".
Enabling flash write... OK.
Enabling full flash access for board "abit KN9 Ultra"... OK.
Found PMC flash chip "Pm49FL004" (512 kB, LPC, FWH) mapped at physical address 0x00000000fff80000.
यह फ्लैश चिप की वर्तमान सामग्री का बैकअप लेने के लिए समझ में आता है, पहले:
# flashrom --programmer internal -c Pm49FL004 -r backup.bin
यह तब विक्रेता से वेनिला छवि फ़ाइल की तुलना की जा सकती है (उदाहरण के लिए xxd
और vimdiff
) का उपयोग कर ।
कुछ अंतर अपेक्षित हैं - क्योंकि कुछ BIOS फ्लैश में अतिरिक्त जानकारी (जैसे डीएमआई) और कॉन्फ़िगरेशन (जैसे मैक पते) संग्रहीत करते हैं। अबेट KN9 अल्ट्रा के मामले में भी यही है। DMI डेटा को पहले 1872 बाइट्स में संग्रहीत किया जाता है - और बूट के दौरान BIOS द्वारा आसानी से फिर से उत्पन्न होता है। मैक पते 0x74E30 ऑफसेट पर संग्रहीत किए जाते हैं।
विक्रेता फर्मवेयर फ़ाइलों को ज़िप संग्रह में पैक किया जाता है जिसमें awdflash.exe
एक BIN
फ़ाइल होती है, और जैसे M520A_23.BIN
। इस उदाहरण में, बिन फ़ाइल में BIOS छवि सम्मिलित है, अर्थात इसे सीधे कमांड के साथ फ्लैश चिप के रूप में लिखा जा सकता है:
# flashrom --programmer internal -c Pm49FL004 -w M520A_23.BIN
Calibrating delay loop... OK.
Found chipset "NVIDIA MCP55".
Enabling flash write... OK.
Enabling full flash access for board "abit KN9 Ultra"... OK.
Found PMC flash chip "Pm49FL004" (512 kB, LPC, FWH) mapped at physical address 0x00000000fff80000.
Reading old flash chip contents... done.
Erasing and writing flash chip... Erase/write done.
Verifying flash... VERIFIED.
अपडेट के आधार पर, अगले रिबूट के लिए सीएमओएस को साफ करना आवश्यक हो सकता है - अन्यथा BIOS शुरू नहीं हो सकता है। उस बोर्ड पर CMOS को जम्पर सेटिंग के जरिए साफ किया जा सकता है। सॉफ्टवेयर के माध्यम से समाशोधन भी संभव है (जैसे CmosPwd के माध्यम से )।
अद्वितीय डिफ़ॉल्ट मैक पते रखने के लिए, नई विक्रेता छवि को चमकाने से पहले पैच किया जा सकता है, जैसे:
dd if=backup.bin of=mac.bin bs=1 count=16 skip=$(echo 16 i 74E30 p | dc)
dd if=mac.bin of=M520A_23_with_mac.bin bs=1 seek=$(echo 16 i 74E30 p | dc) \
conv=notrunc
नुकसान:
- मदरबोर्ड विशिष्ट बोर्ड सक्षम (यानी राइट प्रोटेक्ट डिसेबल) कोड के कारण फ्लैश लेखन विफल हो सकता है, जो कि फ्लैशरॉम द्वारा अभी तक लागू नहीं किया गया है।