Non-Volatile Random Access Memory (NVRAM) is as its name suggests -- a type of memory that's non-volatile -- that is, its contents won't disappear when the power is cut.
The "CMOS" of "CMOS setup utility" referred to complementary metal–oxide–semiconductor technology. This was similar to NVRAM in many ways, but as I understand it, CMOS required a small trickle of power from a battery to retain its contents. AFAIK, few or no PCs built in the last decade or two used true CMOS memory (they've used NVRAM for a long time), but the name stuck from earlier computers. I admit I'm a little foggy on this point, though.
In any event, on EFI systems, NVRAM is more important than it is on BIOS-based computers, because EFI provides mechanisms to use NVRAM to store a wider array of variables, some of which can be used to communicate between the firmware and the OS. For instance, modern BIOS systems use NVRAM to store boot order information -- hard disks before or after optical disks, order of specific disks, etc. Under EFI, this is expanded: Boot loaders are ordinary files on the EFI System Partition (ESP), so boot order information is more complex and can contain arbitrary data (filenames, for instance, can be anything legal on the filesystem). Furthermore, OSes can modify the boot order via tools like efibootmgr in Linux, bcdedit in Windows, or bless in OS X. Such tools work by writing to NVRAM in a way that's mediated by the EFI. This is just an example; NVRAM can hold any arbitrary data desired, up to the limits of the NVRAM capacity.
EFI is designed for like-architecture booting, so a 32-bit EFI can boot a 32-bit OS and a 64-bit EFI can boot a 64-bit OS. There are ways to boot cross-architecture (a 32-bit EFI booting a 64-bit OS or vice-versa), but these methods tend to be awkward and limiting. The vast majority of 64-bit (x86-64) computers ship with 64-bit EFIs, so running a 64-bit OS on them is desirable. There are a handful of exceptions (64-bit computers with 32-bit EFIs). The first generation of 64-bit Intel-based Macs come to mind for this. There are also a few modern tablets with 64-bit CPUs but 32-bit EFIs. It's easiest to run 32-bit OSes on such machines. I don't know of any server, desktop, or laptop computer with a 64-bit CPU and a 32-bit EFI, aside from those early Macs.
Most EFIs include a Compatibility Support Module (CSM) that enables booting using the older BIOS/CSM/legacy mode. If 64-bit computer with a 32-bit EFI has a CSM, it can boot a 64-bit OS in BIOS mode relatively easily. The one tablet I've got with a 32-bit EFI lacks a CSM, and I've heard similar tales about other tablets with 32-bit EFIs, so this may not be of much use for most of them. (Those early Macs have CSMs, though.)
What I am bit puzzled about (possibly as UEFI is quite complex) is that where is the physical NVRAM storage. Is it a separate memory chip on mobo itself apart from CMOS memory or does it hold this data on EFI partition itself in some form of files etc.
– patkim Jun 01 '15 at 15:28