32 Bit oder 64 Bit

32 Bit oder 64 Bit

Beitragvon hausi » 31. Mär 2015, 08:32 32 Bit oder 64 Bit

Ich bin mir nicht sicher, ob ich die neuen Programme 64 Bit oder 32 Bit erstellen soll. Mache ein DB Programm mit Lazarus und Zeos und Firebird.

Hausi
hausi
 
Beiträge: 132
Registriert: 23. Sep 2009, 07:44
OS, Lazarus, FPC: Winux (L 0.9.xy FPC 2.2.z) | 
CPU-Target: xxBit
Nach oben

Beitragvon m.fuchs » 31. Mär 2015, 09:00 Re: 32 Bit oder 64 Bit

Das kommt wohl sehr auf deine Zielgruppe an.

Wenn du zum Beispiel ein Programm für einen geschlossenen Kreis schreibst, der nur Windows7/64 einsetzt, dann kompiliere als 64-Bit-Exe.
Software, Bibliotheken, Vorträge und mehr: https://www.ypa-software.de
m.fuchs
 
Beiträge: 1676
Registriert: 22. Sep 2006, 18:32
Wohnort: Berlin
OS, Lazarus, FPC: Winux (L 1.6, FPC 3.0) | 
CPU-Target: x86, x64, arm
Nach oben

Beitragvon mschnell » 31. Mär 2015, 09:35 Re: 32 Bit oder 64 Bit

Soweit ich informiert bin:

- Natürlich gibt es Anwendungen, die sehr viel Speicher brauchen (> ca 2 GByte), die mnit 32 Bit gar nicht gehen.
- Ein 32 Bit Betriebssystem kann nicht mehr als ca. 2 GB RAM verwalten, deshalb liegt mehr installierte Speicher brach. Ein 64 Bit Betzriebsystem könnte den Speicher zum Vermeiden von Swapping und als Disk-Cache verwenden (auch für 32 Bit Software)
- Ein 64 Bit Programm braucht u.U., wesentlich mehr Speicher als ein 32 Bit Programm. Da der Zugriff auf den Speicher über den Cache in der CPU (der eine feste Größe hat) kann ein 64 Bit Programm langsamer als ein 32 Bit Programm sein. Gilt offensichtlich am ehesten für kleine Programme, und solche, die in mit "engen" Schleifen laufen
- Wenn tatsächlich viel mit 64 Bit Daten gearbeitet wird können 64 Bit Programme natürlich wesentlich schnell sein.

-Michael
mschnell
 
Beiträge: 3158
Registriert: 11. Sep 2006, 09:24
Wohnort: Krefeld
OS, Lazarus, FPC: svn (Window32, Linux x64, Linux ARM (QNAP) (cross+nativ) | 
CPU-Target: X32 / X64 / ARMv5
Nach oben

Beitragvon hausi » 31. Mär 2015, 09:50 Re: 32 Bit oder 64 Bit

32 Bit hat für mich den Vorteil, dass es auch auf alten Rechnern läuft und ich das Zielpublikum vergrössern kann. 32 Bit wird sicher noch lange unterstützt, wenn man bedenkt, dass der Internetexplorer 64 Bit gar nicht richtig läuft. Also er läuft schon, kann aber viele Homepages nicht anzeigen, deshalb liefert MS den Explorer 32 Bit mit. Das selbe beim Office von MS, das ist auch noch 32 Bit. Wenn 64 Bit keinen Vorteil bietet, dann denke ich, dass 32 Bit zur Zeit noch die bessere Entscheidung ist. Man kann ja immer noch später auf 64 Bit wechseln. Gehe davon aus, dass man 32 Bit Programme einfach mit dem 64 Bit Lazarus kompilieren kann.
hausi
 
Beiträge: 132
Registriert: 23. Sep 2009, 07:44
OS, Lazarus, FPC: Winux (L 0.9.xy FPC 2.2.z) | 
CPU-Target: xxBit
Nach oben

Beitragvon m.fuchs » 31. Mär 2015, 10:21 Re: 32 Bit oder 64 Bit

Du kannst es auch einfach für mehrere Systeme und Architekturen anbieten.
Software, Bibliotheken, Vorträge und mehr: https://www.ypa-software.de
m.fuchs
 
Beiträge: 1676
Registriert: 22. Sep 2006, 18:32
Wohnort: Berlin
OS, Lazarus, FPC: Winux (L 1.6, FPC 3.0) | 
CPU-Target: x86, x64, arm
Nach oben

Beitragvon marcov » 31. Mär 2015, 10:56 Re: 32 Bit oder 64 Bit

Ohne schwer wiegende Grunde: 32-bit für Applikationen, 64-bit für Services und Shell plugins.
marcov
 
Beiträge: 999
Registriert: 5. Aug 2008, 08:37
Wohnort: Eindhoven (Niederlande)
OS, Lazarus, FPC: Windows ,Linux,FreeBSD,Dos (L trunk FPC trunk) | 
CPU-Target: 32/64,PPC(+64), ARM
Nach oben

Beitragvon mischi » 31. Mär 2015, 19:08 Re: 32 Bit oder 64 Bit

Aber schon beim Erstellen von 32bit Software daran denken, dass das Programm auch als 64bit laufen soll, also nix integer als Pointer oder ähnliche faule Tricks.
MiSchi macht die fink-Pakete
mischi
 
Beiträge: 151
Registriert: 10. Nov 2009, 18:49
OS, Lazarus, FPC: Mac OS X 10.10, 1.2.4, 2.6.4 | 
CPU-Target: 32Bit/64bit
Nach oben

Beitragvon mschnell » 1. Apr 2015, 10:03 Re: 32 Bit oder 64 Bit

mischi hat geschrieben:Aber schon beim Erstellen von 32bit Software daran denken, dass das Programm auch als 64bit laufen soll, also nix integer als Pointer oder ähnliche faule Tricks.

Das ist kein Problem "32 Bit Software" - also mit 32 Bit Compiler übersetzter Source Code - verwendet auch in einem 64 Bit OS 32 Bit Pointer. (Oder meinst Du man soll ermöglichen, das Programm auch mit einem 64 Bit Compiler zu übersetzen ? )

-Michael
mschnell
 
Beiträge: 3158
Registriert: 11. Sep 2006, 09:24
Wohnort: Krefeld
OS, Lazarus, FPC: svn (Window32, Linux x64, Linux ARM (QNAP) (cross+nativ) | 
CPU-Target: X32 / X64 / ARMv5
Nach oben

Beitragvon mischi » 1. Apr 2015, 10:45 Re: 32 Bit oder 64 Bit

mschnell hat geschrieben:Das ist kein Problem "32 Bit Software" - also mit 32 Bit Compiler übersetzter Source Code - verwendet auch in einem 64 Bit OS 32 Bit Pointer. (Oder meinst Du man soll ermöglichen, das Programm auch mit einem 64 Bit Compiler zu übersetzen ? )

Letzteres.
MiSchi macht die fink-Pakete
mischi
 
Beiträge: 151
Registriert: 10. Nov 2009, 18:49
OS, Lazarus, FPC: Mac OS X 10.10, 1.2.4, 2.6.4 | 
CPU-Target: 32Bit/64bit
Nach oben

Beitragvon Antrepolit » 1. Apr 2015, 10:58 Re: 32 Bit oder 64 Bit

Grundsätzlich tendiere ich dazu, eine 32-Bit und eine 64-Bit Version zu erstellen. Was bei einfachen Dingen scheinbar keinen Unterschied macht, zeigt sich spätestens dann, wenn man eine Explorer-Erweiterung in Form einer DLL nutzt. 32-Bit-DLLs können nicht auf einem 64-Bit-System in den Explorer integriert werden. Umgekehrt natürlich auch nicht.
Auch bei der Oracle-Datenbank zeigt sich, dass die Client-DLLs Probleme bringen, wenn man mit CLOBs arbeiten möchte. Ich weiß nicht, ob das Problem in der aktuellen Laz-Version gelöst wurde. Hatte letztes Jahr einen Lösungsvorschlag an die Laz-Entwickler geschickt, der zumindest bei Oracle 12.1c unter 64-Bit die TOracleConnection fixt.

Wenn du also nur für 32-Bit entwickelst, und einen Fehler auf allen 64-Bit-Systemen erhältst, hast du automatisch die aktuellere Nutzergruppe verloren. Und wenn du nicht richtig testest, wirst du den Fehler nur noch daran merken, dass du keine neuen 64-Bit-Nutzer hinzubekommst.
Grüße, Antrepolit

care only if your os is really burning
Antrepolit
 
Beiträge: 340
Registriert: 12. Sep 2006, 07:57

Beitragvon Patito » 1. Apr 2015, 11:38 Re: 32 Bit oder 64 Bit

So langsam gibt es mehr und mehr Dinge nur noch für 64-bit.
Meine eigenen Tools benötigen inzwischen auch mal locker 6GB RAM.
Ich erinnere mich gar nicht mehr, wann ich zuletzt einen Rechner ohne 64-bit Prozessor gekauft habe.
Das muss bestimmt noch zu den Zeiten von Windows 98 gewesen sein.

Ich denke im Moment sollte man seinen Code so schreiben, dass er auf 32-bit und
64-bit läuft. So sonderlich schwierig ist das auch nicht. Man sollte einfach darauf achten keine
Pointer in 32-bit Integer zu speichern. Ich musste bei meinen Tools nur ein paar Kleinigkeiten ändern und
habe im Code kein einziges $IFDEF benötigt.
Patito
 
Beiträge: 203
Registriert: 22. Sep 2009, 12:08
OS, Lazarus, FPC: Winux (L 0.9.xy FPC 2.2.z) | 
CPU-Target: xxBit
Nach oben

Beitragvon mschnell » 1. Apr 2015, 14:19 Re: 32 Bit oder 64 Bit

Patito hat geschrieben: dass er auf 32-bit und 64-bit läuft.


Das geht nur mit Java, CIL und ähnlichen Frameworks.

Native Programme müssen immer für beide Varianten separat kompiliert (und ausgeliefert) werden.

-Michael
mschnell
 
Beiträge: 3158
Registriert: 11. Sep 2006, 09:24
Wohnort: Krefeld
OS, Lazarus, FPC: svn (Window32, Linux x64, Linux ARM (QNAP) (cross+nativ) | 
CPU-Target: X32 / X64 / ARMv5
Nach oben

Beitragvon m.fuchs » 1. Apr 2015, 14:52 Re: 32 Bit oder 64 Bit

mschnell hat geschrieben:
Patito hat geschrieben:sollte man seinen Code so schreiben, dass er auf 32-bit und 64-bit läuft.

Das geht nur mit Java, CIL und ähnlichen Frameworks.

Quark, das ist geht natürlich mit Lazarus.

mschnell hat geschrieben:Native Programme müssen immer für beide Varianten separat kompiliert (und ausgeliefert) werden.

Das hat nie jemand bestritten. Wenn du nicht sinnentstellend zitierst hättest (ich habe das mal um den roten Text erweitert), wäre das auch klar. Es geht um den Code, nicht um die daraus resultierenden Executables.
Software, Bibliotheken, Vorträge und mehr: https://www.ypa-software.de
m.fuchs
 
Beiträge: 1676
Registriert: 22. Sep 2006, 18:32
Wohnort: Berlin
OS, Lazarus, FPC: Winux (L 1.6, FPC 3.0) | 
CPU-Target: x86, x64, arm
Nach oben

• Themenende •

Zurück zu Windows



Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast

porpoises-institution
accuracy-worried