Şu ana kadar cevaplanmayan sorunun bir kısmı, mikrodenetleyicilerdeki önyükleyiciler ve mikroişlemci sistemleri arasındaki fark.
Mikrodenetleyici
Çoğu mikrodenetleyici, program kodlarını içeren dahili ROM belleğine sahiptir. Bu kodun değiştirilmesi genellikle mikrodenetleyicinin programlama arabirimine bağlanan bir programlayıcı cihaz gerektirir (örneğin, ATMega üzerindeki ISS). Ancak, bu programlama arayüzleri, genellikle diğer bağlamlara kıyasla, kullanım açısından pek uygun değildir, çünkü verilen bağlamda hazır bulunmayabilirler. Örneğin, hemen hemen her bilgisayarda USB bağlantı noktaları bulunurken, ISS için gereken SPI arabirimi daha nadirdir ve ATXMega'da kullanılan PID arabirimi gibi diğer arabirimler yalnızca özel programlama donanımı tarafından desteklenir.
Örneğin, yazılımı herhangi bir harici donanım olmadan normal bir bilgisayardan güncellemek istiyorsanız, cihazı programlamak için farklı bir arabirimden (örn. Arduino'daki gibi USB üzerinden RS232, USB veya RS232) okuyan bir önyükleyici kullanabilirsiniz ortak arayüzler üzerinden.
Bununla birlikte, bu işlevselliğe ihtiyacınız yoksa, bootloader tamamen isteğe bağlıdır. Mikrodenetleyici hala kodunu bootloader olmadan tamamen çalıştırabilir.
mikroişlemci
Bir mikroişlemcide işler biraz farklıdır. Çoğu mikroişlemci, bir önyükleyici için yeterince büyük bir ROM'a sahip olsa da, bu ROM'lar tam bir işletim sistemine sahip olacak kadar büyük değildir. Öyleyse, önyükleyicinin amacı donanımı başlatmak, önyüklenebilir bir işletim sistemi aramak, yüklemek ve çalıştırmaktır. Bu yüzden bootloader her açılışta kritik öneme sahip.
X86 / x64 sistemlerinde bu önyükleyici ya BIOS ya da UEFI'dir (temel olarak BIOS'un daha yeni bir sürümü).
Bazen bir zincirde çalışan birden çok önyükleyici bile olabilir. Örneğin, Windows ve Linux işletim sistemli çift önyükleme sisteminiz varsa aşağıdakilerle sonuçlanabilir:
- BIOS / UEFI önyükleme yapar ve yüklü GRUB'u bulur. Daha sonra GRUB (= Grand Unified Bootloader) yükler
- GRUB bir çeşit Linux ve Windows Bootloader bulur. Kullanıcı Windows Önyükleyiciyi seçer.
- Windows önyükleyici başlatılır ve Windows 7 ile Windows 10'un yüklü olduğunu bulur. Kullanıcı Windows 10'u seçer.
- Windows 10 sonunda açılıyor.
Yani bu durumda, bir bootloader olarak kabul edilebilecek üç adet yazılım vardı. Hem GRUB hem de Windows Önyükleyici, kullanıcıya BIOS / UEFI'nın verdiğinden daha uygun bir önyükleme seçimi seçeneği sunmak için çoğunlukla oradadır. Aynı zamanda birden fazla işletim sisteminin aynı sabit sürücüden, hatta aynı bölümden başlatılmasını sağlar.
TLDR
Bu yüzden, her iki sistemde de bootloader benzer şeyler yapar (kullanıcının hangi kodu seçeceğini seçmesine yardımcı olur), bunu nasıl yaptıkları ve tam olarak ne yaptıkları konusunda büyük farklılıklar gösterir.