Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Varje program och varje operativsystem har en abstrakt datamodell. Många program exponerar inte explicit den här datamodellen, men modellen vägleder hur programmets kod skrivs. I 32-bitars programmeringsmodellen (kallas ILP32-modellen) är heltals-, lång- och pekardatatyperna 32 bitar långa. De flesta utvecklare har använt den här modellen utan att inse den. För Win32-API:ets historik har detta varit ett giltigt (men inte nödvändigtvis säkert) antagande att göra.
I 64-bitars Windows är det här antagandet om paritet i datatypstorlekar ogiltigt. Att göra alla datatyper 64 bitar långa skulle slösa utrymme, eftersom de flesta program inte behöver den ökade storleken. Program behöver dock pekare till 64-bitars data, och de behöver möjlighet att ha 64-bitars datatyper i valda fall. Dessa överväganden ledde till valet av en abstrakt datamodell med namnet LLP64 (eller P64). I LLP64-datamodellen expanderas endast pekare till 64 bitar. alla andra grundläggande datatyper (heltal och långa) är fortfarande 32 bitar långa.
Till en början har de flesta program som körs på 64-bitars Windows portats från 32-bitars Windows. Det är ett mål att samma källa, noggrant skriven, ska köras på både 32- och 64-bitars Windows. Att definiera datamodellen gör inte den här uppgiften enklare. Att se till att datamodellen endast påverkar pekardatatyper är dock det första steget. Det andra steget är att definiera en uppsättning nya datatyper som gör det möjligt för utvecklare att automatiskt storleksanpassa sina pekarrelaterade data. Detta gör att data som är associerade med pekare kan ändra storlek när pekarstorleken ändras från 32 bitar till 64 bitar. Grundläggande datatyper är fortfarande 32 bitar långa, så det sker ingen ändring i storleken på data på disken, data som delas över ett nätverk eller data som delas via minnesmappade filer. Detta underlättar utvecklare av mycket av arbetet med att portera 32-bitars kod till 64-bitars Windows.
Dessa nya datatyper har lagts till i Windows API-huvudfilerna. Därför kan du börja använda de nya typerna nu. Mer information finns i De nya datatyperna.