D.3. Architecture-Specific Differences This section addresses some porting issues that arise from architecture-specific differences between POWER/PowerPC architectures and others. For detailed information about the instructions and registers used by application programs for Linux/PPC, consult the PowerPC architecture books available at www.ibm.com/developerworks/eserver/articles/archguide.html. Page sizes. Currently, the 64-bit POWER and PowerPC platforms (PPC64) support the page sizes of 4K and 16MB. The 32-bit Intel platform (i386) supports 4K and 4MB (2MB in PAE mode) page sizes. Clock and time functions (clock_getres(), clock_gettime(), clock_settime()). Currently, Linux on POWER implements two types of clocks: CLOCK_REALTIME and CLOCK_MONOTONIC. For Linux on x386, two additional clocks are implemented: CLOCK_PROCESS_CPUTIME_ID and CLOCK_THREAD_CPUTIME_ID. However, PowerPC architecture provides a 64-bit Time Base Register that you can use for the high-resolution timer. You can use existing assembler operations (in your C code) to move to and from this Time Base Register. Consult Section 4 of PPC Book II Virtual Environment Architecture at www.ibm.com/developerworks/eserver/articles/archguide.html. |