Weitere Vorteile von 64-Bit-Betriebssystemen neben der Speichererweiterung?

40

Ich versuche, jemanden von den Vorteilen des Wechsels zu einem 64-Bit-Betriebssystem zu überzeugen, aber es fällt mir schwer, andere Argumente als "Sie können mehr als 3 GB RAM verwenden" zu finden. Gibt es weitere klar kommunizierbare Vorteile eines 64-Bit-Betriebssystems?

Jonathan Prior
quelle
1
Gute Frage, ich habe das gleiche gedacht. Vielleicht sollten Sie klären, welche Art von Person Sie zu überzeugen versuchen, da einige der folgenden Antworten viel zu technisch wären, wenn es sich um einen gelegentlichen Computerbenutzer handelt.
Ash
1
ashh: das liegt daran, dass die Vor- und Nachteile von 64-Bit-Betriebssystemen alle sehr technisch sind. Zumindest unter Linux gibt es für nicht-technische Endbenutzer fast keinen merklichen Unterschied (auch wenn ich ständig vergesse, ob es sich bei der von mir verwendeten Maschine um eine 64-Bit- oder eine 32-Bit-Maschine handelt). Unter Windows gibt es unter 64-Bit mehr Inkompatibilitäten und Kuriositäten, aber ansonsten wird ein nicht-technischer Endbenutzer den Unterschied kaum bemerken.
CesarB

Antworten:

27
  • Für x86-64 gibt es im Vergleich zu IA-32 doppelt so viele Register, sodass Compiler besseren Code generieren können.
  • Bei den meisten Betriebssystemen ermöglicht die 64-Bit-ABI die Generierung eines besseren Codes als die 32-Bit-ABI (beispielsweise durch Übergabe von Parametern auf Registern anstelle auf dem Stapel).
  • Einige Dinge, die Erweiterungen von IA-32 sind, sind auf x86-64 immer vorhanden, sodass Programme sie verwenden können, ohne dass ein Fallback (z. B. eine bestimmte Stufe von SSE) codiert werden muss.
  • Last but not least 64-Bit time_t, was mit dem Jahr 2038 immer wichtiger wird.
CesarB
quelle
2
Sie müssen erklären, was Sie damit meinen: "doppelt so viele Register, wodurch Compiler besseren Code generieren können". Was ist "besserer Code"?
Ash
1
Außerdem ist mir aufgefallen, dass Operationen mit 64-Bit-Ganzzahlen im 64-Bit-Code ungefähr viermal so schnell sind wie im 32-Bit-Code (ich wähle hier regelmäßig den falschen C-Compiler aus und frage mich dann, warum Lua schneller ist als C :))
Joey
4
ashh: Register sind die Speicherorte, auf die die CPU am schnellsten zugreifen kann, bei x86 handelt es sich jedoch um eine sehr begrenzte Ressource. Wenn Sie also viele lokale Variablen benötigen, müssen Sie diese ständig von den Registern zum Stack und zurück verschieben, was einige Zeit in Anspruch nimmt. Mit mehr Registern können Sie mehr von ihnen gleichzeitig in Reichweite halten, ohne den Stapel verwenden zu müssen. Vergleichen Sie dies damit, dass Sie nur zwei Hände haben: Sie können immer nur zwei Dinge gleichzeitig manipulieren. mit vierhänden kannst du doppelt so viel machen (wenn dein gehirn mithält, aber bis auf weiteres).
Joey
@ Johannes, du solltest deinen Kommentar als Antwort auf diese Frage hinzufügen! Ich habe rhetorisch gefragt, damit Cesar eine solche Klarstellung hinzufügt.
Ash
1
Sie haben mehrere technische Gründe genannt, ohne zu erklären, was diese bedeuten. Was ist "besserer Code" und welchen Nutzen hat er für den Benutzer?
Igby Largeman
7

Tatsächlich können Sie mehr als 3 GB (oder mehr als 4 GB) RAM auf 32-Bit-Betriebssystemen ausführen. PAE bietet einem x86- oder x86-64-Prozessor die Möglichkeit, auch unter einem 32-Bit-Betriebssystem auf bis zu 64 GB Arbeitsspeicher zuzugreifen. Es ist nicht ganz so einfach wie das Ausführen eines 64-Bit-Betriebssystems. Der Speicher ist ausgelagert, sodass jeder Prozess weiterhin auf maximal 4 GB beschränkt ist. Darüber hinaus unterstützen dies nicht alle Betriebssysteme. Einige Versionen von 32-Bit-Windows verwendeten PAE, aber leider konnten sie schlecht geschriebene Treiber unterstützen. Die meisten Versionen unterstützten nur 4 GB Arbeitsspeicher. Beispielsweise sind Windows XP und Windows Vista auf 4 GB beschränkt (und belichten, wie bereits erwähnt, nur etwa 3 GB). Auf der anderen Seite unterstützt Windows Server 2008 Enterprise, Datacenter 64 GB RAM.

Der Linux-Kernel unterstützte mehr als 4 GB als Teil des 2.6-Kernels . Bei den Linux-Distributionen müssen Sie jedoch manchmal ein "Server" -Kernel-Image installieren, um diese Funktion nutzen zu können.

ChrisInEdmonton
quelle
Guter Punkt. Ich kann nicht wirklich herausfinden, warum die Leute immer noch glauben, dass sie ein 64-Bit-Betriebssystem benötigen, um mehr als 4 GB RAM zu nutzen.
Neu242
Unter Linux besteht eine andere Möglichkeit darin, einen 64-Bit-Kernel und einen 32-Bit-Benutzerbereich auszuführen, wodurch Sie vollen Zugriff auf> = 4 GB RAM erhalten, obwohl die Prozesse immer noch auf jeweils 4 GB beschränkt sind.
TRS-80,
5

Es hängt wirklich davon ab, wofür Sie das Betriebssystem verwenden möchten. Für die allermeisten "normalen" Benutzer bringt die Umstellung auf 64-Bit nicht wirklich viel. Die einzigen Bereiche, in denen 64-Bit derzeit wirklich nützlich ist, sind, wenn Sie mehr als 4 GB Arbeitsspeicher verwenden möchten (wie Sie angegeben haben) oder Berechnungen mit Zahlen durchführen möchten, die nicht in 32-Bit passen.

Letztendlich werden alle PCs und Betriebssysteme nur in 64-Bit-Versionen angeboten. Wenn sie jedoch nur im Internet surfen oder E-Mails abrufen möchten, müssen sie nicht unbedingt auf 64-Bit umsteigen.

Andy
quelle
Für mich ist die zusätzliche Speicherunterstützung bereits ein guter Grund für ein Upgrade. Ich wette mit der Zeit, die meisten Gelegenheitsnutzer werden das auch so empfinden :-)
marc_s 20.07.09
2
@marc, die meisten Gelegenheitsbenutzer werden sich nur so fühlen, wenn Softwareanbieter anfangen, E-Mail-Clients, Webbrowser und Textverarbeitungsprogramme zu schreiben, die mehr als 4 GB RAM benötigen. Andererseits bin ich sicher, dass es nicht mehr lange dauern wird, bis das passiert.
Ash
@ashh mein Firefox nutzt schon gerne ~ 2 GB RAM. Es wird nicht so lange dauern :)
Quiark
4

Sie können nicht nur mehr als 3 GB RAM haben, sondern jede Software, die für 64-Bit-Anwendungen kompiliert / geschrieben wurde, kann 64-Bit-Register und -Datentypen verwenden, wodurch Anwendungen, die sich in enormen Datenmengen bewegen, wie z. B. 3D-Programme, definitiv beschleunigt werden. CAD, Photoshop usw.

Wenn Sie jedoch nur ein durchschnittlicher Joe sind, der nicht mit kreativen Programmen arbeitet und nur E-Mails liest, im Internet surft und YouTube-Videos ansieht, werden Sie es wahrscheinlich erst bemerken, wenn Sie ein Gerät anschließen, für das 64 erforderlich sind Bittreiber, aber der Anbieter hat keine freigegeben.

Steven DeWitt
quelle
2
Ich hatte dieses Problem schon oft. Wenn Sie ein x-64-Bit-System verwenden, das als Server herumliegt, werden Sie möglicherweise eine böse Überraschung feststellen, wenn Sie zusätzliche Hardware hinzufügen, die Sie herumliegen. Ein gutes anschauliches Beispiel für das Dilemma war der Versuch, dem System eine 3COM 3c509-NIC-Karte hinzuzufügen. Es gibt KEINE Treiber für ältere Hardware. Ich stellte fest, dass ich über ein Fass war und eine Premium-Intel-NIC-Karte kaufen musste, um einen 64-Bit-Treiber zu erhalten, der funktionierte. Dieses Problem wird mit der Zeit verschwinden. Es gibt nicht genügend Anreize für Anbieter, alte Hardware zu unterstützen.
Axxmasterr
@Axxmasterr: ISA-Steckplätze und x64-CPU-Unterstützung auf demselben Motherboard? Ernst? Es kann nicht so viele von denen da draußen geben. Ist das eine Art Industrie-PC?
Mittwoch,
3

Das .NET JIT-Modul (Just-In-Time) enthält erweiterte Optimierungen in der x64-Version (z. B. Optimierung der Schwanzrekursion). Dies bedeutet, dass .NET-Anwendungen auf 64-Bit-Systemen möglicherweise schneller ausgeführt werden.

Milan Gardian
quelle
0

Nein, das war's schon.

Für allgemeine Heimanwender gibt es keinen Vorteil für x64. Wenn überhaupt, weil alle Ihre Zeiger und jetzt 64-Bit, können Sie feststellen, dass Sie mehr Speicher verwenden, um dasselbe zu tun.

Der einzige wesentliche Vorteil von x64 ist der höhere Arbeitsspeicher, der derzeit nur von Servern genutzt wird.

Simon P Stevens
quelle
0

Wenn Sie einige gute 64-Bit-Versionen Ihrer gängigen Software finden, ist ein Upgrade auf 64-Bit von Vorteil. Für bestimmte Anwendungen stehen 64-Bit-Versionen zur Verfügung. Diese Anwendungen beziehen sich jedoch in der Regel auf Bildmanipulationen, Filmbearbeitung und natürlich Tonbearbeitung. Grundsätzlich nur Anwendungen, die viele Daten verarbeiten. Die Qualität der Wiedergabe eines DVD-Films auf Ihrem PC wird ebenfalls verbessert, da das System die Daten etwas schneller verarbeiten und auch mehr Daten speichern kann, wenn auf Ihrem System mehr RAM verfügbar ist.

Es gibt auch einen kleinen Leistungsgewinn, wenn Sie dazu neigen, viele Anwendungen gleichzeitig auszuführen. (Auch wenn all diese Anwendungen 32-Bit-Versionen sind!) Warum? Da das Betriebssystem selbst den zusätzlichen Arbeitsspeicher etwas einfacher handhaben kann, können mehr Anwendungen im Arbeitsspeicher verbleiben, was zu einer geringeren Auslagerung in die Auslagerungsdatei führt. (Und Sie können auch eine viel größere Auslagerungsdatei haben!)

Ich habe jedoch ein Upgrade auf 64-Bit durchgeführt, da ich viele Bildmanipulationen vornehme, was ein leistungsstarkes System und viel Speicher erfordert. (Nun, ich brauche zumindest viel Gedächtnis.)

Wim ten Brink
quelle