Sepertinya ada dua kamp, sekelompok kecil orang yang peduli dengan UEFI dan semua orang yang tidak benar-benar memperhatikan atau peduli selama komputer mereka bekerja. Jadi mari kita bicara tentang apa UEFI, bagaimana keadaannya, apa yang cocok untuk, dan mengapa Anda harus (atau seharusnya tidak) peduli.
Apa itu UEFI?
UEFI berarti antarmuka firmware yang diperpanjang diperpanjang, konvensional yang dipegang oleh organisasi yang dikenal sebagai Forum United EFI. Intel keluar dengan EFI (antarmuka firmware yang dapat diperluas) dan kemudian membuat spesifikasi publik sebagai UEFI. Sebagai spec, detail aplikasi berubah antara vendor dan produsen, tetapi tujuannya adalah untuk menyajikan struktur OS Bootloader yang konvensional dan dapat dimengerti. Ini membuatnya lebih mudah untuk menulis OS karena Anda tidak perlu lagi khawatir tentang semua perusahaan yang tidak berantakan yang benar-benar memulai chipset.
Beberapa IBV (Vendor BIOS independen) menawarkan implementasi UEFI mereka bahwa OEM yang memproduksi motherboard dapat lisensi dan digunakan dalam produk mereka. Beberapa contoh adalah AMI, Phoenix, dan Insyde. Anda mungkin melihat logo mereka atau hanya teks nama mereka secara singkat menyala pada layar sebelum OS pilihan Anda dengan benar.
Mari kita bicara tentang bagaimana uefi boots. Secara umum, ada beberapa fase berbeda. Kami biasanya mengatakan karena ada banyak implementasi dan banyak dari mereka melakukan hal-hal dari spec. Ada tiga fase umum: keamanan dan keamanan (detik), inisialisasi pra-EFI (PEI), dan mengarahkan lingkungan eksekusi (DXE). Masing-masing adalah sistem operasi mini. Karena Intel adalah orang yang memulai EFI dan kemudian mengubahnya menjadi UEFI, sebagian besar desain dikembangkan di sekitar bagaimana prosesor Intel boot up. Platform lain seperti lengan mungkin menahan diri dari melakukan banyak hal dalam fase SEC atau PEI.
Proses boot untuk prosesor x86 agak aneh. Mereka mulai dalam mode nyata (meskipun sebagian besar prosesor hari ini secara teknis tidak nyata), dengan ruang alamat 20-bit (1MB memori yang dapat ditangani) untuk alasan kompatibilitas mundur. Ketika prosesor terus boot, ia beralih ke mode aman dan akhirnya ke mode panjang. Dalam sistem multi-core, semua prosesor berlomba untuk mendapatkan semaphore atau membaca EAX, dan satu ditunjuk BSP (Processor Bootstrap). Yang kalah semua berhenti sampai BSP memulainya melalui IPI (interupsi antar-prosesor). Biasanya, ada chip flash SPI onboard dengan firmware dipetakan ke ujung wilayah memori 32-bit fisik. Mesin Manajemen Intel (ME) atau prosesor keamanan dan keamanan platform AMD (PSP) melakukan sebagian besar fase SEC, seperti menyiram cache dan memulai prosesor.
Setelah prosesor dimulai, PEI secara resmi dimulai. Pada sistem Intel, tidak ada sistem RAM di sebagian besar PEI. Ini karena memori perlu dilatih dan tautan diinisialisasi sebelum prosesor dapat menggunakannya. Dorongan yang selalu kejam karena lebih banyak dan lebih banyak kecepatan dari RAM menyiratkan bahwa RAM perlu diuji, dikonfigurasikan, dan dikonfigurasi pada setiap boot sebagai batang RAM yang berbeda memiliki parameter lain. Sejumlah sistem cache parameter ini untuk waktu boot yang lebih cepat, tetapi biasanya mereka perlu dibatalkan dan dilatih kembali sebagai tongkat RAM. PSP menangani pelatihan memori dan mengemas UEFI pada beberapa sistem AMD sebelum prosesor X86 utama ditarik keluar dari reset. Untuk sistem Intel, mereka menggunakan trik yang disebut XIP (eksekusi di tempat) yang mengubah berbagai cache menjadi RAM jangka pendek. Hanya ada tumpukan kecil, sejumlah kecil ruang tumpukan, dan tidak ada variabel statis untuk PEI. Banyak platform Intel Server bergantung pada pengontrol manajemen papan (BMC) untuk melatih memori, karena pelatihan memori dalam jumlah besar membutuhkan waktu yang sangat lama.
Setelah menginisialisasi RAM dan mentransfer konten cache jangka pendek, kami relokasi ke DXE. Fase DXE menawarkan dua jenis layanan: boot dan runtime. Layanan runtime dimaksudkan untuk dikonsumsi oleh OS, layanan seperti variabel non-volatile. Layanan boot dihancurkan setelah execehotservices disebut (biasanya oleh OS loader), tetapi mereka adalah layanan seperti input keyboard dan driver grafis. BDS (pemilihan perangkat boot) berjalan di DXE dan bagaimana sistem menentukan drive untuk boot (hard drive, USB, dll.).
Ini adalah ikhtisar tertentu yang sangat padat dan x86. Sejumlah arsitektur seperti lengan eschew UEFI untuk sesuatu yang jauh lebih seperti CoreBoot, Linuxboot, atau LK, di mana ia mem-boot kernel Linux kecil yang kemudian ke kernel yang jauh lebih besar. Namun, banyak platform ARM juga dapat memanfaatkan UEFI. Hanya waktu yang akan memberi tahu ke arah mana industri bergerak.
Bagaimana hal itu terjadi
Pada tahun 2005, UEFI sepenuhnya menggantikan EFI (antarmuka firmware yang dapat diperluas), Intel konvensional telah melakukan beberapa tahun sebelumnya. EFI meminjam banyak hal dari jendela periode itu, format gambar pecoff, dan UEFI, pada gilirannya, meminjam metode dari EFI. Sebelum EFI, ada BIOS lama yang baik (sistem output input dasar). Nama ini berasal dari sistem CP / M tahun 1975. Pada periode itu, BIOS adalah cara untuk mem-boot sistem untuk mem-boot dan menawarkan antarmuka yang agak seragam untuk aplikasi BY menawarkan panggilan interupsi BIOS. Panggilan telepon mengaktifkan program untuk mengakses input dan output seperti port serial, RTC, dan PC PCI. Phoenix dan lainnya merekayasa balik antarmuka eksklusif yang diproduksi IBM untuk memproduksi mesin yang kompatibel dengan IBM, yang akhirnya menyebabkan sesuatu yang dekat dengan standar.
Apakah ini lebih baik daripada BIOS?
Ya dan tidak, tergantung pada perspektif Anda. Sejumlah vendor OS seperti UEFI karena mereka biasanya membuat hidup mereka lebih sederhana karena layanan yang disediakan membuatnya mudah untuk memberikan pengalaman booting yang homogen. Komunitas Linux, biasanya berbicara, agnostik paling baik dan antagonis paling buruk menuju UEFI. Antarmuka BIOS mendorong 45 tahun pada saat penulisan dan dianggap warisan dalam segala hal. Titik lain di sudut UEFI adalah memfasilitasi memilih gadget boot yang berbeda dan memperbarui firmware pada mesin Anda. UEFI memanfaatkan Tabel Partisi GUID (GPT) atas Master Boot Record (MBR) – pertimbangan A plus karena MBR agak tidak fleksibel. Banyak platform yang dikirim hari ini didasarkan pada proyek EDK2 open-source dari Tianocore, implementasi UEFI yang mendukung X86, ARM, dan RISCV.
Keluhan terbesar dengan UEFI adalah bahwa itu adalah kotak hitam tertutup dengan akses yang tak terbayangkan ke komputer Anda dan tetap lokal setelah komputer boot. BIOS menarik karena antarmuka dikenal luas dan biasanya non-residen. UEFI dapat diperbarui lebih sederhana tetapi juga memiliki kebutuhan yang jauh lebih penting untuk pembaruan. Pembaruan UEFI dapat memutar sistem Anda sepenuhnya. Itu tidak akan boot, dan karena sekering ditiup pada unit, secara praktis secara fisik tidak mungkin untuk memperbaikinya, bahkan untuk pabrikan. Sejumlah pengujian yang signifikan masuk ke pembaruan ini, tetapi sebagian besar ragu untuk mendorong banyak pembaruan karena jumlah pekerjaan yang diperlukan.
Mengapa Anda seharusnya atau tidak harus peduli
Pada akhir hari, Anda peduli jika Anda dapat menggunakan komputer Anda untuk hal-hal yang sangat penting bagi Anda. Apakah itu memainkan permainan, menulis email, atau membuat komputer baru, itu tidak masalah selama komputer melakukan apa yang Anda inginkan. Dan booting hanyalah satu langkah terlupakan dari membuat itu terjadi. Jika Anda peduli tentang memahami setiap bagian dari kode perangkat Anda berjalan, Anda perlu mengikat untuk perjalanan yang lama. Ada bisnis seperti Librem dengan panjang panjang untuk memastikan bahwa masalah rumit seperti memori init berjalan dalam gumpalan yang tidak berpemilik. Anda masih dapat memodifikasi UEFI, [hal] menjadi contoh yang hebat untuk mengubah BIOS dari laptop sekolah tua. Alat open-source untuk memeriksa dan memahami apa yang terjadi di bawah tenda semakin baik.
Pada akhirnya itu adalah sebanyak Anda peduli dengan proses boot perangkat Anda.