Ich habe einen Debian-Server VPS und der Anbieter hat 64-Bit-Debian 5 installiert. Sollte ich nach einer 32-Bit-Installation fragen, da ich nur 750 MB RAM habe und gehört habe, dass Variablen auf 64-Bit-Systemen mehr RAM benötigen?
Ich habe einen Debian-Server VPS und der Anbieter hat 64-Bit-Debian 5 installiert. Sollte ich nach einer 32-Bit-Installation fragen, da ich nur 750 MB RAM habe und gehört habe, dass Variablen auf 64-Bit-Systemen mehr RAM benötigen?
Antworten:
Die kurze Antwort :
Variablen belegen in 64-Bit- und 32-Bit-Software nicht den doppelten Speicherplatz. Der potenzielle Speichergewinn beim Umstieg auf ein 32-Bit-Betriebssystem ist die Mühe nicht wert.
Die lange Antwort :
Zahlen können ja größer sein, aber das heißt nicht, dass sie größer sein werden. Dies gilt auch für Zahlen, nicht für Zeichenfolgen, und Zeichenfolgen belegen (im Allgemeinen) den größten Speicherbedarf in einer Anwendung.
Darüber hinaus geben viele Anwendungen explizit die Größe der Zahl an, mit der sie arbeiten möchten, da in Sprachen wie C int
jede beliebige Größe möglich ist, einschließlich einer Größe von weniger als 32 Bit. Auf meinem 64-Bit-Linux-Computer ist C int
32-Bit. Sie müssten also explizit anfordern long long
, eine 64-Bit-Nummer zu erhalten.
Im Grunde genommen werden Anwendungen nicht mehr Speicher verwenden, nur weil sie für 64-Bit kompiliert wurden.
BEARBEITEN :
Als Reaktion auf Gilles Behauptung, dass 64-Bit-Firefox doppelt so viel Speicher benötigt, habe ich einen Vergleich zwischen 32-Bit- und 64-Bit-Firefox auf meinem System durchgeführt.
Ich habe getestet, indem ich 5 Tabs gestartet habe, die geöffnet sind http://acid3.acidtests.org/ und habe den Test dreimal ausgeführt (einmal in 32-Bit, einmal in 64-Bit und dann zweimal wiederholt). Ich habe diese Site ausgewählt, weil sie JavaScript-intensiv ist und statischen Inhalt verwendet (jedes Rendering der Seite liefert dieselben Daten).
Auf dem letzten Lauf:
32-Bit: 173.244 KB rss / 918.348 KB virt
64-Bit: 184.588 KB rss / 966.624 KB virt
Ich könnte ja ausführlichere Tests machen, aber ich denke, das zeigt gut genug, dass der Größenunterschied zwischen den beiden marginal ist.
Für Systeme mit weniger als 4 GB RAM wähle ich 32-Bit-Installationen gegenüber 64-Bit-Installationen.
Bei 64-Bit-Versionen wird aufgrund der Art der Zeiger mehr Arbeitsspeicher benötigt. Bei einer Vanille-LAMP-Installation liegt dieser Wert zwischen etwa 10 und 50 Megabyte zusätzlich.
Auf einem System mit begrenztem RAM, z. B. 256 Megabyte, kann dies ein beträchtlicher Block sein.
Technisch gilt für PAE das Gleiche bis zu 64 Gigabyte, der adressierbare Speicherplatz für Anwendungen ist jedoch in jedem Fall auf 4 Gigabyte beschränkt. Daher wird bei mehr als 4 GIG empfohlen, 64-Bit zu verwenden, um die Leistungssteigerungen zu nutzen, nicht zuletzt die mit dem Overhead von PAE verbundenen.
Auf den Punkt gebracht: <4gig = 32bit | > 4gig = 64bit.
Wenn der Provider 64-Bit-Debian 5 installiert hat, empfehle ich Ihnen, bei dieser Version zu bleiben.
Unterschiede zwischen 64bit und 32bit gibt es nicht nur im Speichermanager.
Abgesehen von einigen wenigen Anwendungen, bei denen die Anzahl der Einträge sehr hoch ist und die schneller ausgeführt werden, besteht der einzige Vorteil eines 64-Bit-Systems darin, dass Sie mehr als 4 GB Arbeitsspeicher adressieren können. Da ein Teil des Adressraums für den Kernel reserviert ist, erhält ein Prozess nur etwa 2 GB oder 3 GB Adressraum (oder mehr oder weniger, abhängig von der Kernelkonfiguration). In einem Datenbank- und Webserver-Anwendungsfall planen Sie nicht, viel zu tauschen, und Sie werden nicht viel Zahlenverarbeitung durchführen. Mit nur 750 MB RAM werden Sie also keinen Nutzen aus der Verwendung eines 64-Bit-Systems ziehen können.
Die Codegröße ist zwischen i386-Code (32 Bit) und amd64-Code (64 Bit) ungefähr gleich. Der von 64-Bit-Programmen verwendete Datenspeicher ist etwas größer. Wie viel größer ist, hängt von der Anwendung ab. Ich würde erwarten, dass sich für Ihren Anwendungsfall ein merklicher, aber nicht großer Unterschied ergibt.
Angesichts der geringen Kosten und der Tatsache, dass die Verwendung von 64-Bit keinen Nutzen bringt, empfehle ich die Verwendung eines 32-Bit-Systems, wenn die Beschaffung nicht zu schwierig ist.