Saya sering mendengar orang menyebut kernel Linux sebagai image kernel Linux dan sepertinya saya tidak dapat menemukan jawaban di mesin pencari apa pun mengapa disebut sebagai image.
Ketika saya memikirkan sebuah gambar, saya hanya dapat memikirkan dua hal, baik berupa salinan disk maupun foto. Benar-benar bukan gambar foto jadi mengapa itu disebut sebagai gambar?
kernel
linux-kernel
Tony
sumber
sumber
Jawaban:
Proses boot Unix hanya memiliki kemampuan terbatas memuat program secara cerdas (memindahkannya, memuat pustaka, dll.). Oleh karena itu program awal adalah gambar yang tepat, disimpan pada disk, dari apa yang perlu dimuat ke dalam memori dan "dipanggil" untuk menjalankan kernel.
Hanya beberapa hal kemudian seperti kompresi (de-) yang ditambahkan dan meskipun bootloader yang lebih kuat sekarang ada, nama gambar telah macet.
sumber
Kata gambar juga memiliki definisi "Sebuah file yang berisi semua informasi yang dibutuhkan untuk menghasilkan salinan bekerja hidup."
sumber
Itu tidak berarti "gambar" hanyalah salinan disk 1: 1. Sama seperti foto yang mewakili kenyataan persis seperti ketika memotret, gambar dari program yang dapat dieksekusi (atau kernel) mewakili program dalam keadaan, di mana ia dapat dimuat (atau dibongkar) dalam memori sistem persis seperti dulu dan kemudian diberikan kendali padanya. Program itu kemudian dapat mulai berjalan dari keadaan itu secara konsisten. Jadi gambar kernel Linux adalah gambar (gambar keadaan) dari kernel Linux yang mampu berjalan dengan sendirinya setelah memberikan kontrol padanya.
Saat ini, bootloader memuat gambar seperti itu dari sistem file hard disk (driver diperlukan), menggantikannya dengan itu dan memberikan kontrol untuk itu. Proses booting komputer melakukan itu beberapa kali hingga sistem operasi akhirnya berjalan. Ini disebut pemuatan rantai . Atau jika program yang lebih kecil (berantai) memuat yang lebih kompleks, itu disebut bootstrap .
BIOS memuat bootloader yang juga merupakan gambar, misalnya dipanggil
boot.img
dalam kasusgrub
. Ituboot.img
bukan file (jika grub diinstal); itu adalah nama untuk bagian yang ada di Master Boot Record (MBR). Jika Anda membuangnya ke file, maka itu akan menjadi gambar dalam bentuk file yang tidak ditulis ke disk, tetapi ditulis dalam file. Ini juga merupakan representasi (gambar) dari keadaan paling awal di managrub
mampu memuat sisanya.grub
kemudian memiliki mekanisme sendiri bagaimana memuat dirinya sendiri dengan memuat gambar lain. Ini diwakili oleh berbagai tahapan dalamgrub
. Setelah itu, bootloader memuat image kernel dengan mengganti sendiri dengan konten yang diekstrak dari file itu.sumber
Sejarah kuno. istilah image berasal dari istilah Digital Equipment Corporation lama untuk output dari compiler-> linker. file adalah gambar yang dibuat dengan menafsirkan kode dan seterusnya melalui tautan untuk membuat "Gambar" yang dapat dieksekusi dari desain Anda.
sumber
Dalam matematika kernel adalah gambar terbalik dari subset dari gambar beberapa peta, jika subset sama dengan elemen identitas dalam codomain. Saya yakin nama-nama ini berasal dari konsep matematika karena mereka terkait secara signifikan dalam berbagai bidang dalam matematika. Mempertimbangkan Unix diturunkan dalam lingkungan akademis dimungkinkan penggunaan kata kernel ini dan gambarnya sama.
Jika Anda memiliki satu set yang mewakili beberapa tingkat informasi tentang OS "lengkap", jika informasi itu juga membentuk sebuah grup maka Anda dapat menentukan homomorfisme grup pada set itu atau pada dasarnya memetakan ke set lain yang memiliki ukuran berbeda maka set aslinya sepanjang mereka "menghormati" struktur perangkat asli yang menjadikannya sebuah kelompok. Anda dapat melihatnya mungkin memihak seseorang untuk memetakan set ke set yang lebih kecil atau subset dari beberapa set di mana subset lebih kecil.
Image - Gambar homomorfisme grup dan pada fungsi umum dan peta, hanyalah sebagian dari sekumpulan, yang elemennya benar-benar dipetakan. Fungsi mungkin tidak memetakan ke setiap elemen tunggal dan elemen-elemen itu tidak akan dimasukkan dalam gambar.
Kernel - Pada dasarnya hanya elemen dari set asli yang memetakan ke gambar, tetapi hanya memetakan ke elemen identitas dalam gambar. Pada dasarnya elemen-elemen yang memetakan ke 0 seperti hal dalam gambar.
Jika ukuran gambar lebih kecil maka set aslinya maka kita dapat melihat beberapa item harus dipetakan ke satu elemen tunggal. Jadi misalnya mungkin ada beberapa elemen dari kernel yang memetakan ke gambar dan kita sudah tahu mereka semua harus memetakan ke 0.
Kita dapat melihat bahwa jika kita memilih set asli untuk menjadi urutan biner terbatas atau 1 dan 0 dan codomain (set dipetakan ke) menjadi juga urutan biner, maka kita dapat membangun hal-hal seperti itu jika dan hanya jika, struktur grup yang cocok dapat didefinisikan (ini sedikit mendalam dan tidak terkait dengan pertanyaan yang diajukan).
Jadi kita melihat dengan penuh kepastian bahwa "kernel" dan "image" dari OS sepenuhnya didefinisikan dan memiliki arti matematis. Bebas dari kemungkinan penggunaan istilah lainnya.
sumber