porting application from 32 bit to 64 bit architecture

Discussion in 'C++' started by Pallav singh, Apr 1, 2009.

  1. Pallav singh

    Pallav singh Guest


    are these only the changes we need to do while porting application
    from 32 bit
    architecture to 64 bit architecture ??

    In 64 bit architecture, Address is 64 bit but integer is still 32 bit

    Architecture Dependencies (64 bit vs 32 bit)
    • Data Types and Sizes
    • Pointers
    Type casts, setting to 0, comparison, pointer
    • Data Alignment and Padding
    Member Alignment, Structure Alignment
    • Bit Shifts
    Result Type
    • Constants
    Constant values may have differ(related to
    size issue)
    • Library Calls and Operators
    printf, scanf, malloc, calloc, sizeof, memcpy

    Endianism (Little Endian vs Big Endian)
    • Byte Ordering
    • Initializing Multiword Entities
    • Unused Bytes
    Bit masks etc
    • Hex Constants Used as Byte Arrays
    • Data Transfer Between LE and BE Systems

    Other OS Dependencies
    • Interprocess Communication (Blocking vs Non Blocking calls)
    • Timers
    • Signals
    Reliable and unreliable
    • Communication Stacks, subsystems
    • Language Extensions
    Ex: Librairies like X11, ACE etc
    • Memory mapped files, asynchronous I/O, performance
    constraints etc

    Tools and Utilities
    • Build Environment
    Compiler flags, #pragma definitions, default
    options etc
    • Object Formats (Most systems use ELF)

    Pallav Singh
    Pallav singh, Apr 1, 2009
    1. Advertisements

Want to reply to this thread or ask your own question?

It takes just 2 minutes to sign up (and it's free!). Just click the sign up button to choose a username and then you can ask your own questions on the forum.

Share This Page