Apa artinya "LSB" ketika merujuk ke file yang dapat dieksekusi di output dari / bin / file?

23

Saya telah menemukan istilah " LSB executable" atau " LSB shared object" di output fileperintah di Linux. Sebagai contoh:

$ file /bin/ls
/bin/ls: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 2.6.32, BuildID[sha1]=4637713da6cd9aa30d1528471c930f88a39045ff, stripped

Apa arti "LSB" dalam konteks ini?

yoyo_fun
sumber

Jawaban:

43

"LSB" di sini adalah singkatan dari "byte paling signifikan" (pertama), sebagai lawan dari "MSB", "byte paling signifikan". Ini berarti binernya adalah little-endian.

file menentukan ini dari byte keenam header ELF .

Stephen Kitt
sumber
Jawaban lain menyatakan sesuatu yang sangat berbeda ... Linux Standard Base .... Mengapa ada kebingungan mengenai hal ini? Saya pikir Anda mungkin benar. Kedengarannya seperti penjelasan yang lebih masuk akal.
yoyo_fun
7
Ada kebingungan karena "LSB" adalah akronim yang mencakup arti yang berbeda. Ini bisa berarti "Basis Standar Linux" dalam konteks lain; Namun dalam fileoutput itu berarti "byte paling signifikan" (sebagaimana dibuktikan oleh kode sumber yang saya tautkan).
Stephen Kitt
Banyak akronim yang berarti banyak hal berbeda. Namun pertanyaan saya bukan: "Apa artinya LSB?" , tetapi yang lebih spesifik tentang file yang dapat dieksekusi secara ketat dalam format ELF.
yoyo_fun
4
Ya persis; Saya tidak berpikir pertanyaan Anda tidak jelas. Namun banyak orang hanya akan berhenti di "LSB" dan membalas "Linux Standard Base".
Stephen Kitt
1
Saya berharap kebingungan berasal dari beberapa hal. 1. Menulis "LSB" sendiri untuk mengindikasikan little endian adalah hal yang tidak biasa. 2. Basis standar Linux memiliki sedikit standar tentang sistem linux modern. 3. Sebagian besar pengguna Linux mungkin tidak pernah menggunakan sistem Linux big-endian.
plugwash