Linked by Thom Holwerda on Wed 5th Jan 2011 22:09 UTC
Windows And this is part two of the story: Microsoft has just confirmed the next version of Windows NT (referring to it as NT for clarity's sake) will be available for ARM - or more specifically, SoCs from NVIDIA, Qualcomm, and Texas Instruments. Also announced today at CES is Microsoft Office for ARM. Both Windows NT and Microsoft Office were shown running on ARM during a press conference for the fact at CES in Las Vegas.
Thread beginning with comment 456162
To view parent comment, click here.
To read all comments associated with this story, please click here.
RE: enough bits?
by lemur2 on Thu 6th Jan 2011 12:19 UTC in reply to "enough bits?"
lemur2
Member since:
2007-02-17

I sure hope they are planning to target only a future 64 bit ARM. It would be annoying if 32 bit addressing gets a new lease on life due to this. Personally, when I write a (linux) program, I generally don't even consider whether it would be portable to a 32 bit machine, just like I don't consider whether it would be portable to a 16 bit machine. I'd like it to stay that way.


The ARM Cortex-A15 MPCore CPU architecture, which is the one aimed at desktops and servers, is a 32-bit architecture. Nevertheless, it does not suffer from a limitation of 4GB of main memory, it can in fact address up to one terabyte (1TB) of main memory.

http://www.engadget.com/2010/09/09/arm-reveals-eagle-core-as-cortex...

The Cortex-A15 MPCore picks up where the A9 left off, but with reportedly five times the power of existing CPUs, raising the bar for ARM-based single- and dual-core cell phone processors up to 1.5GHz... or as high as 2.5GHz in quad-core server-friendly rigs with hardware virtualization baked in and support for well over 4GB of memory. One terabyte, actually.


I believe the Cortex-A15 MPCore architecture includes a built-in memory management unit to achieve this feat.

Edited 2011-01-06 12:21 UTC

Reply Parent Score: 2

RE[2]: enough bits?
by oiaohm on Thu 6th Jan 2011 12:53 in reply to "RE: enough bits?"
oiaohm Member since:
2009-05-30

"I sure hope they are planning to target only a future 64 bit ARM. It would be annoying if 32 bit addressing gets a new lease on life due to this. Personally, when I write a (linux) program, I generally don't even consider whether it would be portable to a 32 bit machine, just like I don't consider whether it would be portable to a 16 bit machine. I'd like it to stay that way.


The ARM Cortex-A15 MPCore CPU architecture, which is the one aimed at desktops and servers, is a 32-bit architecture. Nevertheless, it does not suffer from a limitation of 4GB of main memory, it can in fact address up to one terabyte (1TB) of main memory.

http://www.engadget.com/2010/09/09/arm-reveals-eagle-core-as-cortex...
"

Also important note the 4GB limit on 32 bit OS on a lot of x86 chips is garbage as well. PAE mode. 64gb to 128gb. 32 bit mode.

So 32 bit being limited to 4GB is mostly a market bending nothing more by Microsoft.

So we can expect MS to treat ARM the same as what they do x86. Different versions different limits nothing todo with real hardware limits.

Reply Parent Score: 1

RE[3]: enough bits?
by Thom_Holwerda on Thu 6th Jan 2011 13:02 in reply to "RE[2]: enough bits?"
Thom_Holwerda Member since:
2005-06-29

So 32 bit being limited to 4GB is mostly a market bending nothing more by Microsoft.


Lolwut?

Windows' 32bit client versions do PAE but limits the *operating system* to 4GB anyway due to problems it caused with instability with some drivers (Windows Server 32bit do support more than 4GB).

"However, by the time Windows XP SP2 was under development, client systems with more than 4GB were foreseeable, so the Windows team started broadly testing Windows XP on systems with more than 4GB of memory. Windows XP SP2 also enabled Physical Address Extensions (PAE) support by default on hardware that implements no-execute memory because its required for Data Execution Prevention (DEP), but that also enables support for more than 4GB of memory.

What they found was that many of the systems would crash, hang, or become unbootable because some device drivers, commonly those for video and audio devices that are found typically on clients but not servers, were not programmed to expect physical addresses larger than 4GB. As a result, the drivers truncated such addresses, resulting in memory corruptions and corruption side effects. Server systems commonly have more generic devices and with simpler and more stable drivers, and therefore hadn't generally surfaced these problems. The problematic client driver ecosystem led to the decision for client SKUs to ignore physical memory that resides above 4GB, even though they can theoretically address it."


http://blogs.technet.com/b/markrussinovich/archive/2008/07/21/30920...

However, *applications* in 32bit Windows can access more than 4GB if they want to using AWE (Address Windowing Extensions).

In other words, you're talking out of your ass.

Edited 2011-01-06 13:03 UTC

Reply Parent Score: 1

RE[3]: enough bits?
by Neolander on Thu 6th Jan 2011 13:14 in reply to "RE[2]: enough bits?"
Neolander Member since:
2010-03-08

PAE allows you to have more than 4 GB of addressable physical memory, but you can only map them in a 32-bit address space*. A single process thus still cannot hold more than 4 GB of data easily.

PAE is just fine for running lots of small processes on a big machine, as an example if you're running lots of small virtual machines on a server. But for the power-hungry desktop user who wants to crunch terabytes of data in some video editing software, on the other hand, I don't think it'll ever be that useful. Except if we start coding multi-process video editing software, but since developers already have issues with multiple threads I don't see this happening soon...

* AMD64 Vol2, r3.15 (11/2009), p120

Edited 2011-01-06 13:16 UTC

Reply Parent Score: 1

RE[3]: enough bits?
by phoenix on Thu 6th Jan 2011 23:39 in reply to "RE[2]: enough bits?"
phoenix Member since:
2005-07-11

Also important note the 4GB limit on 32 bit OS on a lot of x86 chips is garbage as well. PAE mode. 64gb to 128gb. 32 bit mode.

So 32 bit being limited to 4GB is mostly a market bending nothing more by Microsoft.


PAE allows the *kernel* to access more than 4 GB of RAM. However, *processes* can only see 4 GB of RAM, period. Each process can be given it's own 4 GB chunk of memory, though. But they are still limited to 4 GB.

And the kernel has to do a lot of thunking and bounce buffers and hoop jumping and whatnot to manage PAE accesses. And all your drivers need to be coded to support PAE. And all your low-level apps need to be coded to support PAE. And on and on.

PAE is a mess, and should be avoided like the plague unless there's absolutely no way to run a 64-bit OS/apps.

The only way for an app/process to access more than 4 GB of RAM (on x86) is to use a 64-bit CPU with a 64-bit kernel.

Reply Parent Score: 2