You are currently viewing our boards as a guest which gives you limited access to view most discussions, articles and access our other FREE features. By joining our free community you will have access to post topics, communicate privately with other members (PM), respond to polls, download files, upload your own photos and access many other special features. Registration is fast, simple and absolutely free so please, join our community today!
If you have any problems with the registration process or your account login, please contact contact us.
I'm sure you've seen your share of these acronyms when you walk into your local electronics store, but did you ever really care to understand what this means for your Pocket PC? Sure, the more memory the better, but there are reasons why your device may not have loads and loads of memory. I wish I could take credit for this great explanation below but alas, Pocket PC Addict gives credit where credit is due and Mike Calligaro of the Windows Mobile Team Blog earns it to the penny. His blog talks about these different types of memory, what they mean, and what they can do for you.
RAM, ROM, NAND, NOR--that's a lot of capital letters...
I had a request that I do an entry on the differences between RAM, ROM, NAND, and NOR. Because this is much easier and less controversial than the next entry I was planning, I'll take the path of least resistance and do it first.
Why do I care?
When you go to buy a WM device, you're going to see RAM and ROM numbers advertised on the web page. I'm here to give you enough information to make an informed choice.
RAM vs. ROM
All of the capital letter acronyms we're talking about here refer to types of memory. Memory is used to hold stuff on your devices. Phone numbers, pictures, programs, music files, they all need memory to work. Ignoring old technology no one uses anymore and exotic technology that hasn't been released to the mass market yet, there are two types of memory: RAM and ROM. They're similar in that they both hold stuff. Their main differences involve speed and power.
RAM: very fast, but burns a lot of power.
ROM: much slower, but burns very little power.
Importantly, RAM needs a constant supply of power for it to remember its data. ROM doesn't. In other words, if your batteries die, you'll lose the stuff in RAM, but the stuff in ROM will still be there.
How is it used?
Before WM5, this was a complicated question. With Persistent Storage, this becomes much simpler.
ROM is where stuff is stored. All the programs and the OS that make up the software on the device are stored in ROM. Your data is stored in ROM too. And SD and CF cards are made of ROM. Effectively, your device has an SD card built into it that you can't remove.
RAM is where stuff runs. When you turn on your device, it loads programs from the ROM into the RAM and runs them from the RAM. When you play a song, it loads a bit of the song out of the ROM into the RAM, plays that bit, throws it out, and loads the next bit. When you read an email, it loads the text from ROM into RAM and displays it. When you load the next one, it throws that text out and loads the new text. Go back to the one you just threw out, and it'll load it out of ROM again.
So, by and large, the amount of RAM you have determines how many things you can run at one time. And the amount of ROM you have determines how much of your stuff you can keep around.
How much do I need?
Because of the way this hardware is made, there are natural amounts of it. Deviations from these amounts are uncommon. Basically, start at 32M and keep doubling. 32M, 64M, 128M, 256M, etc.
A "typical" WM5 device will have 64M of RAM. 32M of RAM is very reasonable, especially if the device uses "NOR" ROM (more on that later). Because of the power drain, there are downsides to having "too much" RAM though. And, for that reason, 128M of RAM is unlikely, but may be done for certain "power user" devices.
A "typical" WM5 device will have 64M of ROM as well. Other than cost, there's no downside to having more. So, assuming you can afford it, it'll never hurt to pick the model with more ROM.
There are a ton of different versions of WM5--Smartphone, PocketPC, PocketPC Phone Edition, and variations within them. And languages affect things too (i.e. Far East fonts take up a large amount of ROM). But, a rough rule of thumb is that the software that comes on the device takes around 32M. So, if you buy a typical 64M ROM device, you'll be able to store roughly 32M of your own data. Get a 128M ROM device instead, and you'll be able to store around 96M of your data.
Don't send me hate mail when you buy a 64M device with only 30M free. These are rough numbers. Every device is going to be different.
From there, it's all tradeoffs. All else being equal, I'd prefer 32M RAM, 128M ROM to 64M RAM, 64M ROM. But I'd like 64M RAM, 256M ROM even better. Of course that latter one would cost considerably more.
Watch out how these things are marketed. Someone might say, "We've got 64M ROM." Someone else might say, "We've got 30M of storage." They're probably saying the same thing. Marketing being what it is, I'm sure they'll always use the bigger number. But the smaller number is what you really care about.
What about the other capital letters?
Okay, so let's talk about NAND and NOR. These are the two main types of ROM. They're largely used the same way, and everything I've said about ROM is true of both of them. So, for the most part, you don't need to care which kind you've got. But I'll tell you about them anyway.
NOR: Faster to read, slower to write.
NAND: Slower to read, faster to write.
This is all relative. Both are considerably slower than RAM. There's one very important difference in these technologies. NOR lets you do something we call "execute in place" (XIP). Remember what I said before. To run a program, you first load it into RAM, and then you run it from there. NOR lets you run the program directly from the ROM without loading it into RAM first. This means that you can have a system with less RAM. Note that this only works for programs. You can't XIP a picture or an audio file. NAND typically compensates for not being able to XIP with price. (NAND tends to be cheaper.)
Because NAND is faster to write, and NOR is faster to read. The ideal system would have 64M of NOR and 64M of NAND. It would store all the programs in NOR and store all the user data in NAND. Since it would XIP all of the programs, it wouldn't need 64M of RAM and would drop back down to 32M, thus saving power. XIPing also means faster application load times, since you don't have to load the program into RAM before running it. A device like that would rock.
By the way, every SD and CF card is made out of NAND flash. So, no, you can't XIP programs stored on a storage card.
There are other things I could go into, but this has gotten pretty long. So I'm going to stop here. If there are a few questions, I'll answer them as comments. If there are a lot, I'll do a follow on post to cover them all.
Very interesting stuff. I would really like to know much more about the subject. Any information would not be wasted. If there are things that you can use older motherboards with existing memory on them for, I would be really interested in that. Also any diy information about ipaqs 36xx-39xx and 19xx would be wonderful even if its a link where I could do some research it would be greatly appreciated. Thanks Troy Lopez ppcaddict
I mean no offense to you - and I know that you stated that you did not write this, but were simply quoting it, but this is really a bad article. It is riddles with errors and outright fabrications, inaccurately defines the technology, and in the case of a reader who is new to computing, will make them look like a total idiot when they repeat what they "learned" here.
I won't go through this point by point, since there is no... well... point to that... But I will cover the major errors for you.
RAM and ROM use the same amount of "power" for reading data. Actually they do not use ANY power - the CPU and the system do in accessing them, but left unaccessed and on their own they take no power from the system.
RAM is Random Access Memory.
ROM is Read Only Memory.
There are two types of RAM in the average handheld, and one type of ROM.
RAM - (R)andom (A)ccess (M)emory Type 1 is the processing dedicated memory - like the Simms in a PC, it is only active and only stores information when the system is turned on. When you turn off the system, your Type 1 RAM is also turned off, and anything that is stored in it is lost. It is not used to store information, it is used by the system and OS to be the System and OS.
When you turn on your handheld the base level system runs a POST - another acronym that means (P)ower (O)n (S)elf (T)est. That translates to testing (in this order) the BIOS, the BUS, the CPU, the Type 1 RAM, and the I/O Subsystems. At that point the OS bootstrap code is pushed into the Type 1 RAM and the boot up process begins. Parts of the OS are stored and run from ROM, while other parts - like the kernel - are merely copied from ROM into RAM by the bootstrapper so that modules can be loaded onto them before the system fully boots.
RAM - (R)andom (A)ccess (M)emory Type 2 is the closest thing that we have to NVRAM or Bubble Memory to date, and the reason for that is that it is cheaper. NVRAM in the quantity and quality desired for use as a replacement for Type 2 RAM exists today and has for quote a while, but the per-unit price is still a bit on the high side, so generally speaking only the government and corporate culture can afford it.
Type 2 RAM is what a SDC, MMC, SmartCard, etc memory card uses. It is persistant, but it is NOT NVRAM (Non-Volitile) in the purist sense of the word. When you save your data - contact information, notes, etc., and you do not have an auxiliary memory supply (memory card) this is where it goes. This RAM is maintained in a powered state when the system is off to retain its data. No power, bye bye data.
(R)ead (O)nly (M)emory is just that, and is not memory that you as the user can use. It is a one-time use storage device - you get to write to it once and that is it. The OS, some of the programs, all of the graphical resources, and the system, loader, diags, all of that is stored in ROM. As I mentioned above, some of the data stored in ROM is later swapped to RAM Type 1 for the current session, but when you turn off the system, it is gone until it is swapped in again at next power up.
ROM is NOT where stuff is "stored" - you as the user do NOT store stuff in ROM. ROM is where stuff comes from but it is not where it goes.
SD and CF Cards are NOT ROM. They are a close approximation to NVRAM.
The "deviations" you quote do not begin with 32, they actually begin with 8. They are closely related to the bit structure of the computing architecture - at least that is how and why the standards that govern RAM were originally created. So your example should begin with 8, then 16, then 32 etc.
I don't mean to sound like a know it all, but this is basic computer science... The guy who wrote that is supposed to be a professional... The moon is not Cheese either.
A clarification is required around the issue of power used by WM to maintain RAM. Prior to WM5, the default OS memory usage was to divide volatile memory into two areas: storage and program. A soft reset clears the program area in the same way that a warm reboot clears a PC's memory. However, the storage area always requires a slight trickle of power to maintain its contents even when the device is not in use. A complete power-down of a pre-WM5 device is called a hard reset and the device is functionally returned to out-of-box condition. The registry is reset and user-installed apps are gone.
So on pre-WM5 devices, there is a continuous power requirement to maintain the volatile memory or suffer a hard reset. WM5 makes use of the device's non-volatile memory for storage so a true power-off can be done without requiring a system restore from an independent source.
For all pre-WM5 users, it is necessary to keep power flowing through the volatile memory at all times. This is why even unused device will slowly drain the battery maintaining the info stored in the device RAM.