خداحافظ BIOS، سلام UEFI (قسمت اول)
روزهاي خوب BIOS قديمي تدريجاً به پايان خود نزديک مي شوند. UEFI (Unified Extensible Firmware Interface) يک راه حل قدرتمندتر را ارائه خواهد کرد که قادر است با نيازهاي سخت افزارهاي گوناگون امروزي انطباق بهتري داشته باشد. بطور خلاصه، UEFI اينترفيسي است که بر انتقال محيط پيش از بوت به سيستم عامل، نظارت مي کند. ما در اين مقاله به بررسي UEFI و بعضي از مسائل مرتبط با آن پرداخته ايم.
ممکن است شما قبلا چيزهايي درباره UEFI (يا EFI که الگوي اوليه آن به حساب مي آيد) شنيده باشيد. اينتل EFI را در سال 2003 با معماري IA64 پردازنده هاي ايتانيوم خود و تحت عنوان Boot Inittiative معرفي کرد. اين مفهوم بعداً به "Unified EFI Forum" سپرده شد که استاندارد جديد را براي تمام صنعت IT مديريت نموده و ترويج مي کند. AMI، AMD، Microsoft، Lenovo، Intel، Insyde، IBM، HP، Dell، Apple و Phonix امروزه از اعضاي پيشگام اين انجمن به حساب مي آيند. يک BIOS بر حالت واقعي (Real Mode) شانزده بيتي معماري x86 تکيه دارد، اما UEFI استقلال کامل سخت افزار و همچنين تقسيم اينترفيس ها به سرويس هاي بوت و زمان اجرا (Runtime) را معرفي مي نمايد.
تاکنون تلاش هاي زيادي براي ويرايش مفهوم اوليه BIOS انجام شده است. IBM در سال 1988 با PS/2 يک طراحي سيستم ويرايش شده را معرفي کرد تا بطور نسبي با Clone هاي BIOS مقابله کند. معماري چندکاناله (MCA) 32 بيتي IBM با ABIOS را مي توان بعنوان روشي براي فاصله گرفتن از پياده سازيهاي تقليدي BIOS در نظر گرفت.
(ARC (Advanced RISC Computing در دهه 1990 ميلادي براي تلفيق محيط هاي بوت سکوهاي MIPS و Alpha در نظر گرفته شد، اما فايد يک مسير تکاملي توسعه پذيري و امکان گوناگوني سيستم ها بود. PowerPC و SPARC نيز (OF(Open Firmware و CHRP (Common Hardware Reference Platform) خودشان را داشتند. که بخاطر عدم پذيرش ACPI، به نوعي با آن مقابله مي کردند. در انتها، BIOS هنوز بر روي سيستم هاي ما حضور دارد و هنوز مشغول انجام کار است که در طول 25 سال گذشته انجام مي داده: اطمينان از اين موضوع که سيستم عامل شما مي تواند بوت شود. اين مولفه هرگز براي تنوع گسترده سخت افزارهاي امروزي طراحي نشده بود. در واقع BIOS هنوز با اينترفيس هاي 16 بيتي و وقفه هاي نرم افزاري، روتينگ وقفه و تايمرهايي با حداکثر دقت، محدوديت فضاي اجرا ROM (يک مگابايت) و اندازه image، تعداد محدود ابزارهاي قابل راه اندازي Inittializeable Devices، موضوعي که براي فضاي سرور از اهميت حياتي برخوردار است)، ضميمه هاي انحصاري و فقدان Modularity کار مي کند (تنها براي ذکر چند نمونه از نواقص آن).
EFI يک اينترفيس نرم افزاري است که ما بين سيستم عامل و Firmware سخت افزار عمل مي نمايد و همين ويژگي به آن امکان مي دهد تا جانشين BIOS گردد. در واقع بايد بگوييم EFI به اندازه کافي پيچيده است تا بتوانيم آن را «مشابه سيستم عامل» (OS-like) بناميم. EFI نه تنها پشتيباني از درايور، اينترفيس ها و سرويس ها را ارائه مي کند، بلکه داراي پوسته اي است که به کاربران امکان مي دهد تا نرم افزارهاي کاربردي را بر روي يک اينترفيس خط فرمان اجرا نمايند.
EFI حاوي اطلاعات سيستمي است که در جداول متعددي سازماندهي شده اند و در عين حال سرويس هاي بوت و زمان اجرا را در اختيار سيستم عامل مي گذارد. سرويس هاي بوت شامل Inittialization، سرويس هاي فايل و کنسول هاي گرافيکي و متني کاربر هستند. سرويس هاي زمان اجرا عبارتند از تاريخ: ساعت و سرويس هاي NVRAM، براي امکان پذير نمودن و يا تسهيل ارتباطات بين ابزاري (Inter- device)، تمام درايورها و مولفه هاي EFI از طريق پروتکل هاي تعيين شده با يکديگر ارتباط برقرار مي کنند. درايورها نيز اهميت بالايي برخوردارند، زيرا محيط درايور ابزار EFI يعني (EBC (EFI Byte Code يک محيط مستقل از پردازنده است که هر دو جنبه راه اندازي (Initialization) و فعاليت هاي ابزار را امکان پذير مي سازد (به استثناء سخت افزار خاص سيستم عامل با ويژگي هاي معين و ملزومات پشتيباني درايوري نظير کارت هاي گرافيکي سطح بالا).
روزهايي که شما براي راه اندازي سيستم هاي عامل متفاوت به يک نرم افزار مدير بوت نياز داشتيد، ديگر گذشته اند. EFI مديريت بوت خودش را براي انجام اين کار پياده سازي مي کند. توليد کنندگان سيستم نيز فرصت هاي جديد را بدست آورده اند، زيرا ضمائم EFI مي توانند از مکان هاي گوناگون و غير فرّاري اضافه شوند. اين بدان معني است که يک توليد کننده PC مي تواند از مادربرد و سکوي دلخواه مشتري خود استفاده نمايد، در حاليکه ويژگي هاي اضافي سيستم راتوسط EFI از طريق يک پارتيشن درايو ديسک سخت سيستم و يا نهايتاً حتي از طريق بارگذاري هاي اينترنت اضافه مي کند.
Boot Camp شرکت Apple که به کاربران امکان مي دهد يک نسخه ويندوز را در يک وضعيت غيرمخرب در کنار نصب Mac OS فعلي خود نصب نمايند، عملاً بجاي Open Firmware از پياده سازي EFI اينتل بر روي Mac مبتني بر پردازنده هاي اين شرکت استفاده مي کند. اين ويژگي از آوريل سال 2005 قابل دسترسي بوده است و به نظر نمي رسد که پياده سازي آن بر روي سکوهاي x86 PC چندان دشوار باشد.
از آنجايي که ويژگي (PI (Platform Initialization در EFI يک حالت CSM(Compatibility Support Mode) را ارائه مي کند که از طريق آن مي تواند اينترفيس هاي اضافي را منتشر نمايد، امکان تأمين يک BIOS Runtime موروثي نيز وجود خواهد داشت. با در نظر گرفتن محاسن اين قابليت، انطباق سريع با EFI مي تواند براي توليد کنندگان از جذابيت بسيار بالايي برخوردار باشد، با اين حال، پشتيباني گسترده امروزي تا حدود زيادي تنها بر روي کاغذ وجود دارد.
با اين حال، ما متوجه شديم که اينتل محدوديت هايي را در رابطه با پارتيشن هاي بزرگتر از 2 ترابايت اعمال کرده است. با وجود آنکه UEFI در هنگام استفاده از (GPT (GUID Partition Table بجاي MBR مي تواند يک سيستم عامل را مجبور کند که از چنين پارتيشن بزرگي بوت شود، اما اينتل مي گويد «ROM داراي گزينه RAID تنها در صورتي به يک RAID Volume امکان مي دهد قابل بوت باشد که اندازه آن کوچکتر از 2 ترابايت باشد».
احتمالاً ويژگي هاي مبتني بر EFI نظير عملکردهاي اورکلاکينگ مجتمع هنوز در حال توسعه هستند، به همين دليل ما تصميم گرفتيم که از بررسي مادربردهاي مختلف با قابليت پشتيباني UEFI و قضاوت بر اساس محصولات نابالغ يا بلاتکليف، اجتناب کنيم. با اين حال، يک سناريو وجود دارد که عملاً خيلي زود به UEFI نياز خواهد داشت: اگر بخواهيد سيستم خود را از پارتيشني بوت کنيد که بزرگتر از 2 ترابايت است، مسلماً به UEFI و GPT نياز خواهد داشت.
تجهيزات ذخيره سازي که احتمالاً با بهره گيري از فناوري RAID از مرز ظرفيت 2 ترابايت گذشته اند، قبلاً در هنگام استفاده بعنوان Volume هاي بوت مبتني بر eSATA از اين خط عبور کرده اند. بنابراين، ما تصميم گرفتيم که يکي از پياده سازيهاي پيشرفته UEFI را انتخاب کرده و ببنيم که آيا مي توانيم با استفاده از درايوهاي سيستمي داراي ظرفيت بالا بر روي آن کار کنيم يا خير.
مادربرد آزمايشي: Intel PD55KG (با محدوديت هاي RAID)
ما يک مادربرد دسک تاپ اينتل را انتخاب کرديم تا به بررسي قابليت هاي ذخيره سازي پياده سازي فعلي UEFI بپردازيم. DP55KG محصولي بود که اينتل در هنگام عرضه سکوي P55، سوکت LGA1156 و پردازنده هاي Core i5/i7 خود را در اختيار رسانه ها گذاشت. اين يک محصول مدرن است که از تمام ويژگي هاي چيپ ست P55 بهره گيري مي نمايد. اينتل کار چنداني را براي ارتقاء بصري منو پيکربندي سيستم از طريق UEFI انجام نداده است و سبک منوي آشنا همچنان بر روي اين مادربرد بدون تغيير باقي مانده. ما با اين موضوع مشکلي نداريم، زيرا اين سکو UEFI 2.1 را بطور کامل پياده سازي مي کند. به نظر مي رسد ساير فروشندگان نظير Asus و MSI بيشتر بر روي جزييات بصري تمرکز کرده اند تا ويژگي هاي مفيد. مادربرد اينتل با يک Flash EEPROM 16 مگابايتي با قابليت پشتيباني از ACPI 3.0 و « Platform Innovation Framework for EFI Plug & play" ارائه مي شود.
اگر 4 درايو ديسک سخت را براي ايجاد يک آرايه RAID بزرگ به درگاه هاي ICH10R SATA/300 متصل کنيد، با مشکلاتي مواجه خواهيد شد. با وجود آنکه ايجاد يک آرايه بزرگ نسبتاً آسان خواهد بود (ما از دو درايو ديسک سخت 2 ترابايتي براي اين منظور استفاده کرديم)، اما اگر از ويژگي Matrix RAID شرکت اينتل استفاده کنيد، نمي توانيد سيستم خود را از اين آرايه بوت نماييد. اين موضوع امروزه حياتي به نظر نمي رسد، اما درايوهاي ديسک سخت بزرگتري در راه هستند و بزودي اين مسئله را به يک مشکل جدي تبديل مي کنند. بنابراين ما تصميم گرفتيم که از يک محصول ذخيره سازي خارجي از شرکت LaCie براي آزمايش خود استفاده کنيم. اين محصول، ظرفيت 3 ترابايت را در يک آرايه RAID5 و با يک اتصال eSATA ارائه مي نمايد.
منبع:بزرگراه رايانه 127
ادامه دارد...
ممکن است شما قبلا چيزهايي درباره UEFI (يا EFI که الگوي اوليه آن به حساب مي آيد) شنيده باشيد. اينتل EFI را در سال 2003 با معماري IA64 پردازنده هاي ايتانيوم خود و تحت عنوان Boot Inittiative معرفي کرد. اين مفهوم بعداً به "Unified EFI Forum" سپرده شد که استاندارد جديد را براي تمام صنعت IT مديريت نموده و ترويج مي کند. AMI، AMD، Microsoft، Lenovo، Intel، Insyde، IBM، HP، Dell، Apple و Phonix امروزه از اعضاي پيشگام اين انجمن به حساب مي آيند. يک BIOS بر حالت واقعي (Real Mode) شانزده بيتي معماري x86 تکيه دارد، اما UEFI استقلال کامل سخت افزار و همچنين تقسيم اينترفيس ها به سرويس هاي بوت و زمان اجرا (Runtime) را معرفي مي نمايد.
BIOS: عتيقه و همچنان رايج
تاکنون تلاش هاي زيادي براي ويرايش مفهوم اوليه BIOS انجام شده است. IBM در سال 1988 با PS/2 يک طراحي سيستم ويرايش شده را معرفي کرد تا بطور نسبي با Clone هاي BIOS مقابله کند. معماري چندکاناله (MCA) 32 بيتي IBM با ABIOS را مي توان بعنوان روشي براي فاصله گرفتن از پياده سازيهاي تقليدي BIOS در نظر گرفت.
(ARC (Advanced RISC Computing در دهه 1990 ميلادي براي تلفيق محيط هاي بوت سکوهاي MIPS و Alpha در نظر گرفته شد، اما فايد يک مسير تکاملي توسعه پذيري و امکان گوناگوني سيستم ها بود. PowerPC و SPARC نيز (OF(Open Firmware و CHRP (Common Hardware Reference Platform) خودشان را داشتند. که بخاطر عدم پذيرش ACPI، به نوعي با آن مقابله مي کردند. در انتها، BIOS هنوز بر روي سيستم هاي ما حضور دارد و هنوز مشغول انجام کار است که در طول 25 سال گذشته انجام مي داده: اطمينان از اين موضوع که سيستم عامل شما مي تواند بوت شود. اين مولفه هرگز براي تنوع گسترده سخت افزارهاي امروزي طراحي نشده بود. در واقع BIOS هنوز با اينترفيس هاي 16 بيتي و وقفه هاي نرم افزاري، روتينگ وقفه و تايمرهايي با حداکثر دقت، محدوديت فضاي اجرا ROM (يک مگابايت) و اندازه image، تعداد محدود ابزارهاي قابل راه اندازي Inittializeable Devices، موضوعي که براي فضاي سرور از اهميت حياتي برخوردار است)، ضميمه هاي انحصاري و فقدان Modularity کار مي کند (تنها براي ذکر چند نمونه از نواقص آن).
پشتيباني از UEFI
پشتيباني از UEFI
EFI يک اينترفيس نرم افزاري است که ما بين سيستم عامل و Firmware سخت افزار عمل مي نمايد و همين ويژگي به آن امکان مي دهد تا جانشين BIOS گردد. در واقع بايد بگوييم EFI به اندازه کافي پيچيده است تا بتوانيم آن را «مشابه سيستم عامل» (OS-like) بناميم. EFI نه تنها پشتيباني از درايور، اينترفيس ها و سرويس ها را ارائه مي کند، بلکه داراي پوسته اي است که به کاربران امکان مي دهد تا نرم افزارهاي کاربردي را بر روي يک اينترفيس خط فرمان اجرا نمايند.
EFI حاوي اطلاعات سيستمي است که در جداول متعددي سازماندهي شده اند و در عين حال سرويس هاي بوت و زمان اجرا را در اختيار سيستم عامل مي گذارد. سرويس هاي بوت شامل Inittialization، سرويس هاي فايل و کنسول هاي گرافيکي و متني کاربر هستند. سرويس هاي زمان اجرا عبارتند از تاريخ: ساعت و سرويس هاي NVRAM، براي امکان پذير نمودن و يا تسهيل ارتباطات بين ابزاري (Inter- device)، تمام درايورها و مولفه هاي EFI از طريق پروتکل هاي تعيين شده با يکديگر ارتباط برقرار مي کنند. درايورها نيز اهميت بالايي برخوردارند، زيرا محيط درايور ابزار EFI يعني (EBC (EFI Byte Code يک محيط مستقل از پردازنده است که هر دو جنبه راه اندازي (Initialization) و فعاليت هاي ابزار را امکان پذير مي سازد (به استثناء سخت افزار خاص سيستم عامل با ويژگي هاي معين و ملزومات پشتيباني درايوري نظير کارت هاي گرافيکي سطح بالا).
روزهايي که شما براي راه اندازي سيستم هاي عامل متفاوت به يک نرم افزار مدير بوت نياز داشتيد، ديگر گذشته اند. EFI مديريت بوت خودش را براي انجام اين کار پياده سازي مي کند. توليد کنندگان سيستم نيز فرصت هاي جديد را بدست آورده اند، زيرا ضمائم EFI مي توانند از مکان هاي گوناگون و غير فرّاري اضافه شوند. اين بدان معني است که يک توليد کننده PC مي تواند از مادربرد و سکوي دلخواه مشتري خود استفاده نمايد، در حاليکه ويژگي هاي اضافي سيستم راتوسط EFI از طريق يک پارتيشن درايو ديسک سخت سيستم و يا نهايتاً حتي از طريق بارگذاري هاي اينترنت اضافه مي کند.
Boot Camp شرکت Apple که به کاربران امکان مي دهد يک نسخه ويندوز را در يک وضعيت غيرمخرب در کنار نصب Mac OS فعلي خود نصب نمايند، عملاً بجاي Open Firmware از پياده سازي EFI اينتل بر روي Mac مبتني بر پردازنده هاي اين شرکت استفاده مي کند. اين ويژگي از آوريل سال 2005 قابل دسترسي بوده است و به نظر نمي رسد که پياده سازي آن بر روي سکوهاي x86 PC چندان دشوار باشد.
از آنجايي که ويژگي (PI (Platform Initialization در EFI يک حالت CSM(Compatibility Support Mode) را ارائه مي کند که از طريق آن مي تواند اينترفيس هاي اضافي را منتشر نمايد، امکان تأمين يک BIOS Runtime موروثي نيز وجود خواهد داشت. با در نظر گرفتن محاسن اين قابليت، انطباق سريع با EFI مي تواند براي توليد کنندگان از جذابيت بسيار بالايي برخوردار باشد، با اين حال، پشتيباني گسترده امروزي تا حدود زيادي تنها بر روي کاغذ وجود دارد.
پشتيباني صنعتي؟ ناکامي
1- Asus:
2- Foxconn:
3- Gigabyte:
4- اينتل:
با اين حال، ما متوجه شديم که اينتل محدوديت هايي را در رابطه با پارتيشن هاي بزرگتر از 2 ترابايت اعمال کرده است. با وجود آنکه UEFI در هنگام استفاده از (GPT (GUID Partition Table بجاي MBR مي تواند يک سيستم عامل را مجبور کند که از چنين پارتيشن بزرگي بوت شود، اما اينتل مي گويد «ROM داراي گزينه RAID تنها در صورتي به يک RAID Volume امکان مي دهد قابل بوت باشد که اندازه آن کوچکتر از 2 ترابايت باشد».
5- MSI:
ادامه حرکت
احتمالاً ويژگي هاي مبتني بر EFI نظير عملکردهاي اورکلاکينگ مجتمع هنوز در حال توسعه هستند، به همين دليل ما تصميم گرفتيم که از بررسي مادربردهاي مختلف با قابليت پشتيباني UEFI و قضاوت بر اساس محصولات نابالغ يا بلاتکليف، اجتناب کنيم. با اين حال، يک سناريو وجود دارد که عملاً خيلي زود به UEFI نياز خواهد داشت: اگر بخواهيد سيستم خود را از پارتيشني بوت کنيد که بزرگتر از 2 ترابايت است، مسلماً به UEFI و GPT نياز خواهد داشت.
تجهيزات ذخيره سازي که احتمالاً با بهره گيري از فناوري RAID از مرز ظرفيت 2 ترابايت گذشته اند، قبلاً در هنگام استفاده بعنوان Volume هاي بوت مبتني بر eSATA از اين خط عبور کرده اند. بنابراين، ما تصميم گرفتيم که يکي از پياده سازيهاي پيشرفته UEFI را انتخاب کرده و ببنيم که آيا مي توانيم با استفاده از درايوهاي سيستمي داراي ظرفيت بالا بر روي آن کار کنيم يا خير.
مادربرد آزمايشي: Intel PD55KG (با محدوديت هاي RAID)
ما يک مادربرد دسک تاپ اينتل را انتخاب کرديم تا به بررسي قابليت هاي ذخيره سازي پياده سازي فعلي UEFI بپردازيم. DP55KG محصولي بود که اينتل در هنگام عرضه سکوي P55، سوکت LGA1156 و پردازنده هاي Core i5/i7 خود را در اختيار رسانه ها گذاشت. اين يک محصول مدرن است که از تمام ويژگي هاي چيپ ست P55 بهره گيري مي نمايد. اينتل کار چنداني را براي ارتقاء بصري منو پيکربندي سيستم از طريق UEFI انجام نداده است و سبک منوي آشنا همچنان بر روي اين مادربرد بدون تغيير باقي مانده. ما با اين موضوع مشکلي نداريم، زيرا اين سکو UEFI 2.1 را بطور کامل پياده سازي مي کند. به نظر مي رسد ساير فروشندگان نظير Asus و MSI بيشتر بر روي جزييات بصري تمرکز کرده اند تا ويژگي هاي مفيد. مادربرد اينتل با يک Flash EEPROM 16 مگابايتي با قابليت پشتيباني از ACPI 3.0 و « Platform Innovation Framework for EFI Plug & play" ارائه مي شود.
اگر 4 درايو ديسک سخت را براي ايجاد يک آرايه RAID بزرگ به درگاه هاي ICH10R SATA/300 متصل کنيد، با مشکلاتي مواجه خواهيد شد. با وجود آنکه ايجاد يک آرايه بزرگ نسبتاً آسان خواهد بود (ما از دو درايو ديسک سخت 2 ترابايتي براي اين منظور استفاده کرديم)، اما اگر از ويژگي Matrix RAID شرکت اينتل استفاده کنيد، نمي توانيد سيستم خود را از اين آرايه بوت نماييد. اين موضوع امروزه حياتي به نظر نمي رسد، اما درايوهاي ديسک سخت بزرگتري در راه هستند و بزودي اين مسئله را به يک مشکل جدي تبديل مي کنند. بنابراين ما تصميم گرفتيم که از يک محصول ذخيره سازي خارجي از شرکت LaCie براي آزمايش خود استفاده کنيم. اين محصول، ظرفيت 3 ترابايت را در يک آرايه RAID5 و با يک اتصال eSATA ارائه مي نمايد.
منبع:بزرگراه رايانه 127
ادامه دارد...
/ج