Andere Vorteile eines 64-Bit-Betriebssystems neben der Speichererweiterung?

12393
Jonathan Prior

Ich versuche jemanden von den Vorteilen eines 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 andere klar kommunizierbare Vorteile eines 64-Bit-Betriebssystems?

37
Gute Frage, ich habe das gleiche gedacht. Vielleicht sollten Sie klären, welche Art von Person Sie zu überzeugen versuchen, denn einige der nachstehenden Antworten wären viel zu technisch, wenn wir von einem gelegentlichen Computerbenutzer sprechen. Ash vor 14 Jahren 1
ashh: Das liegt daran, dass die Vor- und Nachteile von 64-Bit-Betriebssystemen sehr technisch sind. Zumindest unter Linux gibt es für nichttechnische Endbenutzer kaum einen Unterschied (selbst wenn ich ständig vergesse, ob die Maschine, die ich verwende, eine 64-Bit- oder eine 32-Bit-Maschine ist); Unter Windows gibt es mehr Inkompatibilitäten und Merkwürdigkeiten, die auf 64-Bit zu bewältigen sind, aber ansonsten wird ein nichttechnischer Endbenutzer den Unterschied kaum bemerken. CesarB vor 14 Jahren 1

7 Antworten auf die Frage

25
CesarB
  • Für x86-64 im Vergleich zu IA-32 gibt es doppelt so viele Register, dass Compiler besseren Code erzeugen können.
  • Bei den meisten Betriebssystemen ermöglicht die 64-Bit-ABI die Generierung von besserem Code als die 32-Bit-ABI (z. B. durch Übergabe von Parametern in Registern anstelle von Stapeln).
  • Einige Dinge, die auf IA-32 Erweiterungen sind, sind auf x86-64 immer vorhanden, sodass Programme sie verwenden können, ohne einen Fallback-Code (z. B. eine bestimmte Stufe von SSE) zu programmieren.
  • Last but not least 64-Bit time_t, das mit dem Erreichen von 2038 immer wichtiger wird.
Sie müssen erklären, was Sie meinen: "doppelt so viele Register, dass Compiler besseren Code erzeugen können". Was ist "besserer Code"? Ash vor 14 Jahren 1
Ich habe auch bemerkt, dass Operationen mit 64-Bit-Ganzzahlen im Vergleich zu 32-Bit-Code in 64-Bit-Code etwa viermal so schnell sind (ich wähle hier regelmäßig den falschen C-Compiler aus und frage mich, warum Lua schneller als C ist :)) Joey vor 14 Jahren 1
ashh: Register sind die Speicherorte, auf die die CPU den schnellsten Zugriff hat, aber unter x86 sind sie eine * sehr * begrenzte Ressource. Wenn Sie also viele lokale Variablen benötigen, müssen Sie diese ständig von den Registern zum Stack und wieder zurück verschieben, was Zeit braucht. Mit mehr Registern können Sie mehr von ihnen gleichzeitig in Reichweite halten, ohne den Stack verwenden zu müssen. Vergleichen Sie mit nur zwei Händen: Sie können nur zwei Dinge gleichzeitig manipulieren. Mit vier Händen können Sie doppelt so viel tun (wenn Ihr Gehirn mithält, aber das für jetzt). Joey vor 14 Jahren 4
@Johannes, du solltest deinen Kommentar als Antwort auf diese Frage hinzufügen! Ich habe rhetorisch gefragt, dass Cesar eine solche Klarstellung hinzufügen würde. Ash vor 14 Jahren 0
Ach, Cesar hat fast alles gesagt, was es zu sagen gibt, daher halte ich es für angemessen, diesen Kommentar hier zu kommentieren. Wenn er dazu neigt, kann er trotzdem in die Antwort selbst integriert werden. Joey vor 14 Jahren 0
Ich habe mich entschieden, mit dieser Antwort als Antwort zu gehen. Danke für die Hilfe! Jonathan Prior vor 14 Jahren 0
Sie benötigen keine 64-Bit-Prozessorarchitektur, um time_t mit 64 Bit zu haben. Beispielsweise unterstützt Microsoft Visual C ++ 2005 und später 64-Bit-Time_t für 32-Bit-Buildziele. bk1e vor 14 Jahren 0
Sie haben mehrere technische Gründe angegeben, ohne zu erklären, was einer von ihnen bedeutet. Was ist "besserer Code" und was bringt es dem Benutzer? Igby Largeman vor 12 Jahren 1
Der Code kann kleiner sein (benötigt weniger Speicherplatz) und kann schneller ausgeführt werden. Jamie Hanrahan vor 7 Jahren 0
7
ChrisInEdmonton

Tatsächlich können Sie unter 32-Bit-Betriebssystemen mehr als 3 GB (oder mehr als 4 GB) RAM ausführen. Mit PAE kann ein x86- oder x86-64-Prozessor auch auf einem 32-Bit-Betriebssystem auf bis zu 64 GB Arbeitsspeicher zugreifen. Es ist nicht ganz so einfach wie ein 64-Bit-Betriebssystem. Da der Speicher ausgelagert ist, ist jeder Prozess immer noch auf maximal 4 GB beschränkt. Darüber hinaus unterstützen nicht alle Betriebssysteme dies. Bei einigen 32-Bit-Windows-Versionen wurde PAE verwendet. Da dies jedoch ungünstig geschriebene Treiber unterstützen konnte, wurde die Unterstützung der meisten Versionen auf 4 GB beschränkt. Beispielsweise sind Windows XP und Windows Vista auf 4 GB beschränkt (und, wie bereits erwähnt, nur etwa 3 GB). Andererseits unterstützt Datacenter Windows Server 2008 Enterprise 64 GB RAM.

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

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 verwenden. neu242 vor 14 Jahren 0
Bei Linux besteht eine weitere Option darin, einen 64-Bit-Kernel und einen 32-Bit-Benutzerraum 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 vor 14 Jahren 0
5
Andy

Es hängt wirklich davon ab, wofür Sie das Betriebssystem verwenden möchten. Für die große Mehrheit der "normalen" Benutzer bedeutet die Umstellung auf 64-Bit nicht viel. Derzeit sind die einzigen Bereiche, in denen 64-Bit wirklich nützlich ist, wenn Sie (wie Sie bereits sagten) mehr als 4 GB Arbeitsspeicher verwenden 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, besteht kein dringender Bedarf, auf 64-Bit zu wechseln.

Für mich ist die zusätzliche Speicherunterstützung wirklich schon Grund genug, ein Upgrade durchzuführen. Ich wette, im Laufe der Zeit werden sich auch die meisten Gelegenheitsnutzer so fühlen :-) marc_s vor 14 Jahren 0
@ marc, die meisten Gelegenheitsnutzer werden sich nicht so fühlen, wenn nicht Software-Anbieter E-Mail-Clients, Webbrowser und Textverarbeitungsprogramme schreiben, die> 4 GB RAM benötigen. Andererseits bin ich sicher, dass es nicht lange dauern wird. Ash vor 14 Jahren 2
@ashh mein Firefox verwendet bereits gerne ~ 2 GB RAM. Es wird nicht so lange dauern :) Quiark vor 14 Jahren 0
4
M4dRefluX

Sie können nicht nur über mehr als 3 GB RAM verfügen, sondern jede mit 64-Bit kompilierte / geschriebene Software kann 64-Bit-Register und -Datentypen verwenden, die Anwendungen auf jeden Fall beschleunigen können, die sich in enormen Datenmengen bewegen, beispielsweise 3D-Programme. CAD, Photoshop usw.

Wenn Sie jedoch nur ein durchschnittlicher Joe sind, der nicht mit kreativen Programmen arbeitet und E-Mails liest, im Internet surft oder YouTube-Videos ansieht, werden Sie dies wahrscheinlich erst merken, wenn Sie ein Gerät anschließen, für das 64 erforderlich ist Bit-Treiber, aber der Anbieter hat keine veröffentlicht.

Ich habe dieses Problem bei vielen Gelegenheiten gehabt. Wenn Sie ein x-64-Bit-System verwenden, das Sie als Server herumliegen, stellen Sie möglicherweise eine böse Überraschung fest, wenn Sie zusätzliche Hardware hinzufügen, die Sie herumliegen. Ein gutes Beispiel für das Dilemma, das ich erlebte, war der Versuch, eine 3COM 3c509-NIC-Karte in das System aufzunehmen. Es gibt KEINE Treiber für ältere Hardware. Ich stellte fest, dass ich über ein Fass hinaus 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 besteht kein ausreichender Anreiz für Anbieter, alte Hardware zu unterstützen. Axxmasterr vor 14 Jahren 2
@Axxmasterr: ISA-Steckplätze und x64-CPU-Unterstützung auf demselben Motherboard? Ernst? Es kann nicht so viele davon geben. Ist das eine Art Industrie-PC? bk1e vor 14 Jahren 0
3
Milan Gardian

Die .NET-JIT-Engine (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 schneller laufen können.

0
Simon P Stevens

Nein, das war es schon.

Für normale Heimanwender gibt es keinen Vorteil gegenüber x64. Wenn überhaupt, weil alle Ihre Zeiger und jetzt 64 Bit sind, benötigen Sie möglicherweise mehr Arbeitsspeicher, um dasselbe zu tun.

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

0
Wim ten Brink

Wenn Sie eine gute 64-Bit-Version Ihrer beliebten 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 das Laden von Daten verarbeiten. Die Qualität der Wiedergabe eines DVD-Films auf Ihrem PC erhöht sich ebenfalls, da das System die Daten ein bisschen schneller verarbeiten kann 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 alle diese Anwendungen 32-Bit-Versionen sind!) Warum? Da das Betriebssystem selbst den zusätzlichen Speicher etwas einfacher handhaben kann, können mehr Anwendungen im Arbeitsspeicher verbleiben, was zu weniger Auslagerungen der Auslagerungsdatei führt. (Und Sie können auch eine viel größere Auslagerungsdatei haben!)

Ich habe jedoch ein Upgrade auf 64 Bit vorgenommen, da ich viele Bildmanipulationen durchführe, was ein leistungsfähiges System und viel Speicher erfordert. (Nun, ich brauche zumindest viel Gedächtnis.)