Bjoern Schliessmann wrote: > Christophe wrote: > >> To be exact, you need a 64bit Windows OS on a 64bit cpu. > > Is there a reason that can be explained in a less-than-2-KB > posting? :) I mean why Python depends on the processor type that > much.
The 64-bit version of Python is compiled for 64-bit processors. 32-bit processors don't work the same and won't run the code. The O.P. has a 64-bit Athlon processor, but is running a 32-bit OS. The processor emulates its 32-bit predecessor in "legacy mode", so 32-bit software runs. Given a 64-bit processor, why can't 64-bit applications run under a 32-bit Operating System? Because the O.S. provides the environment in which the application runs. There are several problems: system calls could be probably be thunked by a library, but the virtual memory space is a deal breaker. A 32-bit O.S. deals with 32-bit addresses; it can't support the address space of a 64-bit app. Running a 32-bit O.S., the processor stays in 32-bit legacy mode. Enabling the processor's 64-bit mode is a privileged operation; the application cannot do it. Incidentally, the other direction works pretty well: a 64-bit operating system can run 32-bit applications. The AMD64 architecture, also adopted by Intel, has a "compatibility mode" for creating 32-bit virtual address spaces within the native 64-bit address space. I'm close to the 2KB. For more, search on "AMD64 Architecture". -- --Bryan -- http://mail.python.org/mailman/listinfo/python-list