Re: How to detect if Linux is 32bit or 64bit? "Marketshare"?



On 16/08/2010 00:08, Aragorn wrote:
On Sunday 15 August 2010 22:09 in comp.os.linux.misc, somebody
identifying as Peter Hanke wrote...
<snip>
In my humble opinion, if you have an x86-64 processor, use a 64-bit
operating system. It's what your hardware was designed for, and x86-64
offers a number of improvements over x86-32 (alias IA32), such as a
hardware implementation of the NX bit and more (and wider) registers.


Some programs run faster as 64-bit programs - this is mostly due to having more registers available and a more regular instruction set (less chains of prefix codes).

Others run slower as 64-bit programs, mainly because pointers are bigger and therefore take more memory, reducing your cache hit rates.

Some software makes use of hand-optimised code for critical loops, and will often have versions of that code for different processors (using SEEE, 3DNow, or whatever). These may not have 64-bit versions, and thus fall back on generic C code which may be slower.

/Very/ few programs take advantage of the wider registers - 64-bit integer arithmetic is rare. It can make a big difference to cryptography programs, however.

Few programs benefit from having direct access to more than 4 GB address space, though the system as a whole can benefit from more than 4 GB physical ram addressed as 64-bit.

There are lots of third-party programs that are only available in 32-bit versions. While these can be run on 64-bit OSs with the right libraries, it's not always as convenient or easy as with a 32-bit OS. If you are wanting support from the program supplier, they might well specify a 32-bit OS.

32-bit versions of software and distros may be more mature, tested, and supported than their 64-bit versions. It's not long ago that 64-bit was for enthusiasts and special uses (though it's been longer in the server space), though it is considered mainstream now.


All in all, it is /not/ a clear decision. If you have a low-end machine, it can make life a lot easier to use a 32-bit OS - it can save a lot of work, save duplication of libraries, and make better use of your memory and caches. Some programs may be slower than the 64-bit version, but it's rare that the difference will be significant. And there is nothing that you miss out on - anything that would run as 64-bit will run as 32-bit.

If you have (or expect to get) 4 GB or more of ram, then 64-bit is the obvious choice.

Otherwise it's a matter of taste.
.



Relevant Pages

  • Re: How to detect if Linux is 32bit or 64bit? "Marketshare"?
    ... operating system. ... hardware implementation of the NX bit and more registers. ... having more registers available and a more regular instruction set. ... Others run slower as 64-bit programs, mainly because pointers are bigger and therefore take more memory, reducing your cache hit rates. ...
    (comp.os.linux.misc)
  • L OS releases
    ... proud its upcoming Linux-based 64-bit Operating System codenamed L OS, ... L OS is based on the open source Linux ... key hardware manufacturers and researchers. ... on performance-class hardware and software technologies such as PuRam ...
    (alt.os.linux)
  • Oldskool variety
    ... mostly expect a windoze operating system. ... to code for every different hardware a different thing. ... reminder, the code, the way the BIOS does it is there. ... the serial port using billy's API, ...
    (alt.lang.asm)
  • Re: Relocating application architecture and compiler support
    ... > To do relocation using base registers would require that the OS ... there was one hardware mechanism of getting a value ... of the mainframe virtual machine operating system support dropped ...
    (comp.arch.embedded)
  • Re: Need Help Declaring a Pointer to an Array of Structures
    ... the OP defined a structure that maps onto a hardware ... of such registers, on a machine that has memory-mapped hardware ... it is just a plain old "pointer to char". ... points to an array -- or more precisely, ...
    (comp.lang.c)