الآن دیگه تقریباً همهٔ رایانهها از uefi پشتیبانی میکنن. به نظرم بهتره دیگه در مورد legacy صحبت نکنیم با توجه به مزایای uefi.
منم قبول دارم بهتره از uefi استفاده کرد ولی هنوز کسایی هستند که تجهیزات اونها از uefi پشتیبانی نمیکنه.
بجز رایانه من
چه مزایایی داره مگه؟ من روی لپ تاپ دیدم فقط سرعت بوتش بیشتر بود.
به طور رسمی از پارتیشنتیبل gpt پشتیبانی میکنه. بیشتر کامپیوترهای legacy هم از gpt پشتیبانی میکنند ولی بعضیهاشون مشکل دارند و اگه پارتیشنتیبل یه دیسک gpt باشه، سیستمعامل روی اون دیسک رو بوت نمیکنند.
از زبان برنامهنویسی c برای نوشتن uefi استفاده میشه، در حالی که برای legacy از اسمبلی استفاده میشه که کار باهاش سختتر از c هست.
پیاده سازیهای uefi باید یه بوتلودر داخل خودشون داشته باشند. البته معمولا این بوتلودر خیلی ساده هست ولی بعضی وقتا بدرد میخوره.
uefi نسبت به legacy مرتبتر هست. مشخصات uefi توی
https://uefi.org منتشر میشه و پیادهسازیهای مختلف اون، تا حدودی شبیه هم هستند. .(از نظر ظاهری، بعضی وقتا اینجوری نیست) به همین دلیل نوشتن درایور برای uefi سادهتره.
ولی همچنان یه سری تفاوت بین پیادهسازیهای شرکتهای مختلف وجود داره.
نصب چنتا سیستمعامل کنار هم راحتتره. برخلاف legacy، سیستم چیزی که توی اولین سکتور دیسک قرار داره رو بوت نمیکنه. بلکه سعی میکنه فایلهای EFI توی ESP رو بوت کنه.
ESP مخفف EFI system partition هست. معمولا این یه پارتیشنه که با fat32 فرمت شده. البته میتونه هر فرمت دیگهای هم باشه، به شرط اینکه که اون پیادهسازی uefi ازش پشتیبانی کنه.
فکر کنم پیادهسازیهای اپل، از +hfs یا apfs، فایلسیستمهای انحصاری اپل پشتیبانی میکنند. پشتیبانی از فایلسیستمهای خانواده fat جز مشخصات uefi هست و توی هر پیادهسازی باید پشتیبانی بشه.
فایلهای EFI، در اصل فایلهایی دودویی با قالب PE/COFF هستند. PE یه قالب برای فایلهای اجرایی، آبجکت کدها و کتابخانهها هست. توسط مایکروسافت توسعه داده شده. COFF هم یه قالب برای فایلهای اجرایی، آبجکت کدها و کتابخانهها هست. همراه unix sysV منتشر شد. دوتا قال PE و COFF تقریبا با هم سازگار هستند.
uefi چیزی به اسم secure boot داره وه با فعال کردنش، فقط فایلهای EFI بوت میشن که میشه امضای اونها رو تائید کرد و کلید که باهاش امضا شدند یا خود امضا اونها، توی لیست سیاه نباشه.
به طور پیشفرض از کلیدهای مایکروسافت استفاده میشه که به نظرم امنیت درست و حسابی نداره چون میشه با یه shim امضا شده توسط مایکروسافت، سیستم رو بوت کرد. shim امضا شده توسط مایکروسافت هم خیلی راحت پیدا میشه. اوبونتو یکی داره، دبیان همینجور، آرچ هم توی aur داره، فدورا و rhel دارند، opensuse هم فکر کنم داشته باشه.
به نظرم تا وقتی از کلیدهای مایکروسافت استفاده میشه، بیشتر از اینکه امنیت بوجود بیاد، محدودیت ایجاد میشه.
این چیزهایی بود که یادمه. اگه چیز دیگهای یادم بیاد، میگم.
اینجا راهنماهای مناسبی در مورد uefi و secure boot داره.
http://rodsbooks.com/efi-bootloaders/index.htmlوبسایت مال یکی از توسعهدهندههای اوبونتو هست. نویسنده gptfdisk و rEFInd هست. gptfdisk رو میتونید با دستور gdisk استفاده کنید.
چرا ساپورت نشه؟ در واقع شما میتونید به دو حالت ویندوز رو نصب کنید, MBR و GPT
اون فایل سیستم ها هستن که ساپورت نمیشن : )
ویندوز به طور رسمی میتونه توی حالت legacy نصب بشه ولی اجبار میکنه که پارتیشنتیبل دیسکی که قراره روش نصب بشه، dos یا همون mbr باشه.
میتونه توی حالت uefi هم نصب بشه ولی در این حالت اجبار میکنه پارتیشنتیبل دیسک، gpt باشه.
به عبارتی برای ویندوز، mbr + legacy و gpt + uefi ممکنه. gpt + legacy و mbr + uefi ممکن نیست.
این چیزهایی بود که به صورت رسمی گفته شده و نصب کننده ویندوز در اختیار کاربر قرار میده. نمیدونم از طریق تغییر registry یا کارهای دیگه میشه حالتهای دیگه رو استفاده کرد یا نه.