Mein Linux-Rechner gibt "uname -a" wie folgt aus:
[root@tom i386]# uname -a
Linux tom 2.6.9-89.ELsmp #1 SMP Mon Apr 20 10:34:33 EDT 2009 i686 i686 i386 GNU/Linux
[root@tom i386]#
Laut Manpage von uname bedeuten die Einträge "i686 i686 i386":
- Name der Computerhardware (i686)
- Prozessortyp (i686)
- Hardwareplattform (i386)
Zusätzliche Information:
[root@tom i386]# cat /proc/cpuinfo
<snip>
vendor_id : GenuineIntel
CPU family : 6
model : 15
model name : Intel(R) Xeon(R) CPU 5148 @ 2.33 GHz
stepping : 6
CPU MHz : 2328.038
cache size : 4096 KB
</snip>
Wie kann man zwischen diesen drei Einträgen unterscheiden ("i686 i686 i386")?
linux
x86
cpu-architecture
Adil
quelle
quelle
Antworten:
Kurz Hardware-Plattform (
uname -i
) ==> Betriebssystemtyp. 32 Bit oder 64 Bit. Möglicherweise tritt ein Problem auf, wenn Sie Pakete und Plugins installiert haben, die für das Kompilieren von Code mit 32-Bit-Betriebssystemen erforderlich sind. Entfernen Sie daher besser die 32-Bit-Betriebssystem-abhängigen Plugins oder behalten Sie das 32-Bit-Betriebssystem selbst bei.Machine (
uname -m
) ===> Denken Sie an ein Motherboard, auf dem der Prozessor aufgebaut ist.Prozessor (
uname -p
) ==> CPU-Architektur, abhängig vom Befehlssatz.Wichtig:
Maschine und Prozessor sollten gleich sein. Entweder 32 Bit oder 64 Bit, nicht anders.
Die Hardwareplattform muss mit der Maschine und dem Prozessor identisch oder niedriger sein.
quelle
Der Prozessortyp (oder -name) gibt an, für welche Architektur der Prozessor erstellt wurde.
Der Name der Hardware-Maschine muss mit dem Prozessortyp kompatibel sein, dh er muss mit dem Prozessortyp identisch sein.
Und schließlich bezieht sich die Hardware-Plattform auf die gesamten Anweisungen, die die Hardware zur Verarbeitung verwendet und bei denen es sich nicht um eine höhere Version als den Prozessortyp handeln darf.
Sie können beispielsweise in einem i386-Prozessor keinen i686-Befehlssatz ausführen.
i686 bezieht sich auf die 64-Bit-Prozessoren und -Architekturen, bezieht sich jedoch auf die Plattform, dh sowohl x686 als auch x86_64, bezogen auf den Anweisungskanal (64-Bit).
i386 = 32 Bits
quelle
Mit der folgenden Option können Sie zwischen diesen drei Einträgen unterscheiden ("i686 i686 i386").
quelle