Unicorn with delicious cookie
Nous utilisons des cookies pour améliorer votre expérience de navigation. En savoir plus
Accepter
to the top
>
>
Why is it so hard to create a 64-bit ve…

Why is it so hard to create a 64-bit version of an application?

10 Fév 2011
Author:

Unfortunately, despite the seeming simplicity, it is often not enough just to rebuild a 32-bit program for a 64-bit platform and fix compiler errors to provide assured operability of the application being ported. The main issue of migrating to 64 bits is the presence of hidden 64-bit errors, i.e. cases when a code fragment that worked correctly in the 32-bit version causes errors in the 64-bit version.

Most often 64-bit errors occur in the following code fragments:

  • code based on incorrect assumptions about types' sizes (for instance, on the assumption that the pointer's size is always 4 bytes);
  • code processing large arrays whose sizes exceed 2 Gbytes in 64-bit systems;
  • code writing and reading data;
  • code containing bit operations;
  • code with complex address arithmetic;
  • obsolete code;

You may read a detailed description of each error type in the article A Collection of Examples of 64-bit Errors in Real Programs. Although all the errors in code that reveal themselves while compiling the program for 64-bit systems are related to inaccurate compliance with C/C++ standards, no real project is secure from them.

Another issue of moving to a 64-bit platform is dependence of your application on the libraries that do not have 64-bit versions since combined use of a 64-bit program and a 32-bit library is impossible in Windows systems.

A detailed description of the migration process and estimate of time and cost of porting an application to a 64-bit platform are given in this article.

References

Popular related articles

S'abonner

Comments (0)

close comment form
close form

Remplissez le formulaire ci‑dessous en 2 étapes simples :

Vos coordonnées :

Étape 1
Félicitations ! Voici votre code promo !

Type de licence souhaité :

Étape 2
Team license
Enterprise licence
** En cliquant sur ce bouton, vous déclarez accepter notre politique de confidentialité
close form
Demandez des tarifs
Nouvelle licence
Renouvellement de licence
--Sélectionnez la devise--
USD
EUR
* En cliquant sur ce bouton, vous déclarez accepter notre politique de confidentialité

close form
La licence PVS‑Studio gratuit pour les spécialistes Microsoft MVP
close form
Pour obtenir la licence de votre projet open source, s’il vous plait rempliez ce formulaire
* En cliquant sur ce bouton, vous déclarez accepter notre politique de confidentialité

close form
I want to join the test
* En cliquant sur ce bouton, vous déclarez accepter notre politique de confidentialité

close form
check circle
Votre message a été envoyé.

Nous vous répondrons à


Si l'e-mail n'apparaît pas dans votre boîte de réception, recherchez-le dans l'un des dossiers suivants:

  • Promotion
  • Notifications
  • Spam