Friday, 10 May 2013

An Introduction To 64-bit Computing - Assured Systems


Explaining 64-bit Computing
You may have heard people talking about 64-bit computing, be it in relation to processors, operating systems or applications. If you've searched online for information about 64-bit computing you may have seen terms such as x64, x86, memory addressing and more.

So what is 64-bit? In the simplest terms, it's the latest evolution in computer hardware and software technology.  It enables more intensive processing to be carried out faster and more efficiently.

A Brief History of Evolution
We're not talking about Darwinism here! Computing has changed so much since the beginnings, that the forefathers such as Charles Babbage and Alan Turing would most likely not recognise it today. Here is a brief history of some important events over the last two centuries - yes, two centuries!


Date
Event
1631
The first recorded use of the word computer, derived from the Latin words computus and computare, meaning 'to compute'. In the 17th century it meant 'one who carries out mathematical calculations'.
1820's
Charles Babbage, the 19th century mathematician, reasons that a mechanical device can carry out mathematical calculations more accurately, reliably and faster than a human. He begins work on what he called a 'difference engine'. Unknowingly, he is about to provide the foundations for what we all now consider to be computing.
1830's
Charles Babbage begins work on the designs for his 'analytical engine' - a more sophisticated computer which used punched cards to enable programming and calculations. Unfortunately, the machine was never built.
1911
The Computing Tabulating Recording Company is founded through a merger of three companies. The company would later change its name to IBM.
1936
Alan Turing, the British mathematician famous for designing the bombe machine which broke the German Enigma codes during World War Two, published a paper addressing the ‘Entscheidungsproblem’ by reasoning about a simple (but theoretical) computer, which is today known as a Turing Machine.
1939
HP (Hewlett-Packard) was established with a princely initial investment of approximately $500.
1946
The world’s first general-purpose electronic computer, ENIAC (Electronic Numerical Integrator And Computer) was unveiled. It was capable of 50,000 calculations per second and weighed around 30 tonnes. It was used to run computations for the hydrogen bomb and to calculate ballistic trajectories.
1949
In an article, Popular Mechanics magazine stated that “Computers in the future may weigh no more than 1.5 tons”
1957
The first Dot Matrix Printer was marketed by IBM
1965
Moore’s Law is first published, stating that the number of transistors on integrated circuits doubles approximately every two years. This oft-misquoted and misunderstood prediction has been accurate for nearly half a century.
1971
Intel unveiled the first commercially available 4-bit CPU, the 4004, which had a clock speed of 740 kHz. Used in conjunction with the 4002 support chip, it could address up to 40 bytes of RAM.
1972
Intel unveiled the first commercially available 8-bit CPU, the 8008. It had a maximum clock speed of 0.8 MHz and could address up to 16KB of RAM.
1975
The world’s largest software company, Microsoft, is founded.
1977
Ken Olsen, the founder of Digital Equipment Corporation, was quoted as saying “There is no reason anyone would want a computer in their home.” He was actually referring to having a computer to run the home, with automated doors, voice-activated taps, etc.
1978
Intel unveiled the 16-bit 8086 CPU. It had a maximum clock speed of 10 MHz and could address up to 1Mb of RMA. It was the first x86 microprocessor and would set the standard for computing for decades to come - the x86 architecture is still in use today.
1980
AT&T Bell Labs introduce the world’s first fully 32-bit CPU, the Bellmac-32A.
1981
The IBM PC has a usable RAM limit of 640KB. Bill Gates is quoted as saying “640K ought to be enough for anybody.” He never actually said this!
1991
MIPS Technologies produces the first 64-bit CPU. It would be another 12 years before a 64-bit CPU architecture which is backwards compatible with the 32-bit x86 architecture is released.
1992
OS/2 2.0 became the first commercially available 32-bit operating system, following the breakdown of the IBM/Microsoft collaboration in 1990.
2000
AMD release the full specification of their x86_64 architecture, which has now become the standard for 64-bit computing and is more commonly known as x64.
2003
The first CPU to support the x64 architecture is released – AMD’s Opteron. Theoretically, 64-bit CPUs can address up to 16 exabytes of RAM – that’s one billion gigabytes!
2005
Windows XP Professional x64 Edition is the first Windows version to support x64. Due to a general lack of third-part support however, it meets with limited success.
2009
Windows 7 is released, which fully supports x64 computing.
2010
46% of all PCs running Windows 7 have the 64-bit edition installed.



Bits?
Everything to do with computing all boils down to what are called bits. The term bit is a contraction of 'binary digit'. A binary digit can either be a 1 or a 0, but never both. You can consider bits to be logical values, such as Yes/No or True/False or as an activation state such as On/Off. The more bits a system can support and use, the more powerful and the faster it is.

RAM Limit Comparison
The main difference between the various 'bits' of computing you will notice, is the amount of RAM which can be addressed (or utilised) by the hardware and software. The limits given below are theoretical limits, and can be exceeded with compatible hardware, firmware and software - the exception to this is 64-bit, where the theoretical limit has not yet been reached due to lack of hardware support.


Bits
Theoretical Addressable Memory (bytes)

8
256
256b
16
65,536
64KB
32
4,294,967,296
4GB
64
18446744073709600000
16EB


The more RAM a system has, the more processes can be stored in memory which is quick to access, making the computer faster and more responsive. In combination with a 64-bit CPU and operating system, a computer can access and utilise huge files extremely quickly as more data can be addressed directly.

With modern Windows operating systems (Windows 7, 8, Server 2008 R2 & Server 2012), Microsoft recommend using at least a 2Ghz x64 processor with 2GB RAM. Add to that the overhead of additional programs (2GB of RAM is recommended for Microsoft Office 2013 for example) and when you consider that to run at its best the OS would be using most of that 2GB RAM, it's easy to see why 4GB+ RAM is recommended on most systems.




Hang on, what's an EB?!

You will be familiar with bytes (b), Kilobytes (KB), Megabytes (MB) and Gigabytes (GB), but many of you may have never seen the term Exabyte (EB) before. So what exactly is an Exabyte?

An Exabyte is 1,000,000,000,000,000,000 bytes or 1 billion gigabytes.

A 64-bit operating system can (theoretically) see up to 16,000,000,000,000,000,000 bytes or 16 billion gigabytes.

To put that in perspective, if you were to put all of that data onto CDs they would stretch out more than halfway around the earth. The global data volume (that is, all the data in the world) was estimated to by just over 15EB in 1993, although today it is much more.


Software compatibility

Most software is currently only available in 32-bit versions. This is larger due to previous lack of demand for 64-bit versions, lack of system compatibility and a lack of skills in developing 64-bit applications. As 64-bit operating systems and hardware matures, this is changing though. More and more applications, such as Adobe Photoshop and Internet Explorer, are available in 64-bit versions.

Such applications can handle a large amount of information at any one time, and the difference is noticeable. From our experience, Adobe Photoshop 64-bit is considerably faster than its 32-bit counterpart.


Fortunately with modern operating systems, such as Windows 7, software compatibility isn't an issue most of the time. Most new OSes have built in compatibility which allows 32-bit programs to run on a 64-bit OS.


Windows on Windows (WoW) is on such example of built in compatibility. It is essentially a virtual copy of 32-bit Windows which runs in the background (and completely transparently) and allows 32-bit programs to be installed and run on Windows 7. As an end user, you don't see anything different from normal - the programs just work as expected.


There are always exceptions of course, and it is worth checking with your software vendor to ensure that your OS is supported.


Driver compatibility

As you will know, hardware such as printers, sound cards, webcams etc. requires drivers. Usually the type of driver isn't a concern as you can simply install the hardware and the operating system installs the driver automatically (in the case of Windows 7 and Mac OSX) However with 64-bit systems, driver availability needs to be carefully considered. 

64-bit operating systems will only run 64-bit drivers. They will not accept 32-bit drivers and trying to install them will result in failure. Therefore it is extremely important to check with your hardware manufacturer to ensure that 64-bit drivers are available. For most peripherals over the last few years, this should not be a problem.


An additional consideration is if the drivers which are available are compatible with your chosen operating system. Many drivers which are available for Windows 7 with also work on Windows Embedded Standard 7, as they are an almost identical product. This isn't always the case however, so it is important to test the hardware thoroughly and if in doubt, contact the manufacturer. 


But what does this all mean for me?

It means that applications which process large amounts of data can do so more quickly and efficiently, with fewer errors. In short, it generally means faster, more efficient computing.

Because 64-bit computing can see, use and store more RAM, less time is spent using the hard drive as more operations can be carried out from RAM. As RAM is considerably faster than traditional spinning disks, more operations per second can be carried out. You could call it extreme multi-tasking!


64-bit computing is starting to mature, largely driven by the success of Windows 7 64-bit, and a greater understanding of this technology is prompting hardware and software developers to ensure their products are compatible with the latest OSes.





No comments:

Post a Comment