Dua direktori disediakan oleh paket yang sesuai, yang berisi file header untuk kernel. Gunakan dpkg
perintah untuk menemukan paket mana yang menyediakan direktori.
$ dpkg -S /usr/src/linux*
linux-headers-X.XX.X-XX: /usr/src/linux-headers-X.XX.X-XX
linux-headers-X.XX.X-XX-generic: /usr/src/linux-headers-X.XX.X-XX-generic
...
Direktori pertama /usr/src/linux-headers-X.X.XX-XX
terdiri dari file header untuk beberapa arsitektur, termasuk x86, amd64, powerpc dan lainnya, menghasilkan lebih banyak file dan ukuran paket yang lebih besar.
Direktori lain /usr/src/linux-headers-X.X.XX-XX-generic
tampaknya berisi sebagian besar kode sumber yang relevan dengan arsitektur x86 yang ditargetkan untuk instalasi lokal.
Paket yang sesuai telah mengisyaratkan dalam deskripsi, misalnya:
$ apt-cache show linux-headers-3.16.0-25 | grep -A3 Description-en
Description-en: Header files related to Linux kernel version 3.16.0
This package provides kernel header files for version 3.16.0, for sites
that want the latest kernel headers. Please read
/usr/share/doc/linux-lts-utopic-headers-3.16.0-25/debian.README.gz for details
Sejauh yang saya ketahui, kedua direktori hanya berisi kode sumber dan bukan binari. Dan perbedaan antara keduanya terutama arsitektur target dari kode sumber.
Terkait: Apa yang mengandung pohon sumber kernel? Apakah ini terkait dengan header kernel Linux?
Jawaban yang diperluas (2015.07.30)
karena keduanya menyimpan x86
kode terkait, apa bedanya dengan x86
kode di dua direktori? - Richard 29 Jul '15 pada 19:11
Sebagian besar direktori dan file yang terkandung di dalamnya /usr/src/linux-headers-X.X.XX-XX-generic
adalah tautan simbolik, yang menunjuk ke direktori dan file aktual di /usr/src/linux-headers-X.X.XX-XX
. Dengan kata lain, yang arch/x86
ditemukan di kedua direktori tersebut hanyalah perbedaan tautan aktual dan simbolis, dengan beberapa file asm
header yang tersisa di *-generic
counterpart.
Di antara kedua paket tersebut, satu mungkin melihat perbedaan utama lainnya adalah keberadaan config
dan generated
direktori di *-generic
mitra.
Pada pemahaman terbaik saya, saya akan berpikir bahwa *-generic
direktori memegang file header yang diperlukan untuk mengkonfigurasi dan mengkompilasi modul yang relevan dengan x86
arsitektur, tanpa membuat perubahan pada direktori sumber linux-headers-x.x.xx-xx
.
Yang terpenting, kedua direktori tersebut mungkin merupakan pendekatan "bersih" untuk mengemas dan menyusun paket pada platform masing-masing. Meskipun, saya tidak dalam posisi untuk mengklarifikasi masalah ini.
Catatan Penjawab: Saya menulis jawaban ini secara naif pada saat itu - tidak yakin apa yang benar atau salah - dan beberapa penjelasan mungkin tidak ada di antaranya. Karenanya jawaban ini sekarang adalah wiki komunitas, sehingga siapa pun dengan reputasi minimum dapat memperbaiki pos ini untuk sepenuhnya menjelaskan perbedaannya.
x86
kode terkait, apa bedanya denganx86
kode di dua direktori?