Friday, July 11, 2008

Bigger is better.. computer-wise!

Burj Dubai
Bigger is better when it comes to bits, and a really small difference to the bits addresses can make an enormous difference, although there might be some physical restrictions in order to realise some dreamy performances and capacities.

After reading this post, a very, very informative post about getting your 32-bit Ubuntu to work with more than 4GiB memory, I got a question born.. so how is all this limited? I soon dug a bit deeper about 32-bit and 64-bit differences (reading freak that I am) and got to this wikipedia article.

Logically back in the 1980's, when the first personal computers were being developed, the processors were 16-bit and 24-bit. Their memory limitation is easy to be calculated: 216 (or 2^16, a short form without the use of superscript), likewise for 24-bit processors - they could support up to 2^24 bytes of RAM memory, so we have up to 64KiB (kibibytes) and 16MiB (mebibytes) RAM limitation respectively. Then came the 32-bit processors which could hold up to 4GiB of memory addresses.

In the meantime, Intel developed an extension called "Physical Address Extension", which in short terms it allowed 32-bit processors to use up to 36 bits, i.e. 2^36 = 64GiB (Gibibytes). A very vast improvement!

With the appearance of 64-bit processors it is possible to virtually use a really huge amount of RAM of 2^64 = 16 EiB (exbibytes or "exabytes"), but nowadays the problem is physical, as we can't produce such big amounts of memory - yet! Maybe in the near future, who knows. All I know is that I won't be the first person to test this exa-beast :)

To sum up, bytes do matter - vast colossal difference for just a few more bytes!

Note: During the writing of this post, I've learnt about the difference of Gigabyte (1000^3) and Gibibyte (1024^3), so I decided to respect the 2,4% difference and the correct use of GiB and KiB respectively using the IEC standard instead of SI :)

No comments: