We have prepared the Internet resources catalogue with the help of which you may study the peculiarities of 64-bit architectures, principles of developing 64-bit solutions thoroughly and also learn some other information which allows to release 64-bit software.
| x64 ABI vs. x86 ABI (aka Calling Conventions for AMD64 & EM64T). |
| |
This short paper is a quick overview of x64 Application Binary Interface (ABI). It is briefly reviewed main differences between x86 ABI and x64 one and their features. Also some useful links concerned such stuffs as calling convention, alignment and unwindability are listed.
|
| Gregory Tarsy and Neil Toda. Floating-Point Computing: A Comedy of Errors? |
| |
This article is attempted to explain some mess arising at use of floating-point arithmetic for numerical computing. In it the analysis of summing the sequence of square roots of the first 1000000000 positive integers is made. It is shown, that results differ at use of various platforms and various compilers. Also some ways of avoidance of similar distinctions are stated.
|
| Steve Graegert. 64-bit Data Models Explained. |
| |
This is one more short paper that is devoted to different 64-bit data models. The author observes advantages and disadvantages all general models: LP64, ILP64 and LLP64. Also as pleasant addition the author explains such concepts, as a byte order, host byte order, network byte order and alignment of data.
|
| Allan McNaughton. Bridge the Gap Between 32- and 64-bit Applications. |
| |
This is short paper about interoperation 32-bit and 64-bit applications under 64-bit Windows OS. In the article the mechanism of work of technology WOW64 and its basic advantages speaks, and also possible problems of interaction of 32-bit and 64-bit processes in the presence of this technology are considered.
|
| Converting 32-bit Applications Into 64-bit Applications: Things to Consider |
| |
This article is devoted to converting 32-bit applications to 64-bit applications when ILP32 and LP64 data models are used. The question of use of the lint utility for search of some possible problems with data types is considered. Ways of correction of the possible errors related to following 64-bit systems peculiarities are stated: changes the pointer size, size of long integers, sign extensions, structure packing, size of union members and some others. The stated ideas are illustrated by numerous C++ code examples.
|
| Andy Patrizio. How and Why Microsoft Migrated to AMD64: Case Study. |
| |
This is one more paper that is devoted to need of migration to 64-bit. Advantages of 64-bit systems and disadvantages of 32-bit systems are briefly discussed. Unfortunately almost the third part of article is devoted general phrases about what wonderful opportunities are opened by AMD64 platform and 64-bit Windows.
|
| Michael Adams. How to Compile 64-bit Code for Windows x64. |
| |
This is the sequence of steps that need to compile 64-bit code for Windows using Visual Studio 6. Some references to more detailed articles concerning the given theme are listed.
|
| Migrating 32-bit Managed Code to 64-bit. |
| |
This extensive enough whitepaper is about migrating 32-bit managed applications to 64-bit, possible migration issues and useful tools that can assist in this process. The “managed code” concept is considered. Very many migrating features are observed. Within the limits of a theme of porting 32-bit applications on 64-bit platforms such questions, as platform invoke, COM interoperability, unsafe code, marshaling and serialization are detailed discussed.
|
| Porting 32-Bit Code to 64-Bit Code. |
| |
Very very short description possible 32-to-64bit porting issues from Microsoft.
|
| Harsha Jaquasia. Porting and Optimizing Multimedia Codecs for AMD64 architecture on Microsoft Windows. |
| |
This paper is about the general optimization techniques used for multimedia encoders and decoders on AMD64 platforms under 64-bit Windows. The paper describes the various problems that developers may encounter while porting codecs to AMD64 platforms. It explains the basic principles of various porting and optimization techniques and demonstrates them with examples. The paper elaborates on how the CodeAnalyst tool is used and briefly talks about some others development tools that can be used for porting.
|
| Anderson Bailey. Tools and Techniques for Developing 64-Bit Linux Software. |
| |
This article is devoted to several Linux tools for developing 64-bit applications. The GNU Toolchain and GCC Binutils are observed. Its advantages and some peculiarities of its using are discussed. Also several useful links concerning other developing tools are listed.
|
| The Old New Thing: The history of calling conventions, part 5: amd64. |
| |
This is the part of series of papers that are devoted to calling conventions. This paper is a short description of AMD64 technology with some interesting notes and details.
|
| The Old New Thing: Why did the Win64 team choose the LLP64 model? |
| |
It is attempt to reveal the basic advantages of LLP64 data model before others for 64-bit Windows system.
|
| Matt Tyrlik, Making the transition to 64 bits |
| |
Developers porting applications to the 64-bit computing mode of the 970FX processor may face a number of issues; this excerpt from a longer Technical Library article covers some of the issues faced when porting existing 32-bit code to the new computing model.
|
| Daniel Pistelli, Moving to Windows Vista x64 |
| |
Very good article! This article is an introduction to Windows Vista and the x64 architecture. Article talk about some obvious matters of the x64 architecture, like the fact that applications can now access a larger memory range etc. This article should be considered a quick upgrade for x86/XP developers..
|
| Jeremy Gordon, Writing 64-bit programs |
| |
Article is intended for those interested in writing 64-bit assembler programs for the AMD64/EM64T processors running on x64 Windows..
|
| Eric Palmer, "CPUID for x64 Platforms and Microsoft Visual Studio* .NET 2005" |
| |
When targeting x64 platforms in Visual Studio .NET* 2005, programmers are no longer able to use inline assembly code as they did for 32-bit code. Listing is introduced for full use of the CPUID instruction.
|