New Computers Based on Non-Volatile Random Access Memory

by Bradley A. Berg     July 18, 2003


                           Abstract

     Recent advances in non-volatile Random Access Memory (NvRam) overcome
     current limitations by improving their speed, lowering cost,
     and allowing an unlimited number of write cycles.  Computers
     built with these chips can be noiseless, turn on and off instantly,
     and access files thousands of times faster.  If operating systems
     take advantage of non-volatile memory, computer maintenance can
     also be simplified.  External NvRam drives can be a viable
     alternative to the laptop computer.

I. Introduction

Advances in Random Access Memory (NvRam) technology are going to bring some very noticable changes to desktop computers. It will be possible to make silent, solid-state computers by eliminating fans and disk drives. This will reduce the amount of electricity computers consume and allow them to turn on and off instantly. File access times will be many times faster for the first time since personal computers were introduced.

Non-volatile memory retains data after the power is shut off, unlike conventional RAM commonly used in computers. Current non-volatile memory, such as flash memory, has a limited number of write cycles (100,000 to 1 million), is much slower than dynamic RAM, and is expensive. The next generation of NvRam will begin to emerge from the labs in 2004 and will overcome these limitations.

Depending on how well the operating system takes advantage of NvRam, system adminstration costs can be significantly reduced. Using a network of diskless, dataless nodes and a central server, system maintenance can be limited to only the server. Extending this model, user's should be able to easily save their application data and desktop configuration for backup purposes. If they save their desktop on an external NvRam disc, they could migrate it to any other computer and do so safely. This scheme is a viable alternative to carrying around a bulky laptop computer.

There are several new competing technologies for NvRam. The cost and performance of the different types of chips varies. Depending on which technologies become available and when, the evolutionary path over the next 5 years will vary slightly. After that software and hardware to support many of the features described in this paper will be mainstream.




II. Instant-On and Off

NvRam can provide fast boot up and shutdown times for computers. The files needed to boot up a machine can be kept in NvRam. Instead of accessing the hard drive, the computer can boot up from the files in NvRam, which has access times thousands of times faster than disk drives. Depending on how well the operating system takes advantage of NvRam, computers can be turned on and off instantly.

Using NvRam like a small disk will noticably speed up the boot process, but will not be fast enough for instant-on. Files would still need to be loaded into main memory from NvRam, which would take a noticable amount of time. However, NvRam can also be configured like Ram. Programs preloaded in NvRam can be run directly from NvRam, bypassing the load process. This would provide instant-on, but require changes in the boot sequence.

In order to start up quickly, all files used during the startup process need to be stored in NvRam. These include files needed to start up the operating system and optionally run select user logins along with any applications invoked during login. The operating system needs to provide a mechanism to determine the files needed and preload them into NvRam.

The operating system should be able to present a login window instantly and fast logins for frequently used accounts. If a system bypasses the login screen, application startup can be sped up as well. The files needed for login need to be cached in NvRam.

Before the operating system even begins the mainboard takes time to start up. This process will need to be sped up as well. Legacy hardware intefaces with slow initialization sequences will need to be eliminated. Many devices such as network, video, and audio interfaces are being built into mainboards. Built-in devices can be designed for fast boot-up. Disk drives will need to spin up in the background.

Shutdown can also be sped up as data can be flushed to NvRam rather than to the local hard drive. However, data being flushed to the server still needs to be transmitted to it. If applications have files open on the server, they will still need to be closed before shutting down to prevent data loss. When the machine is restarted, data cached in NvRam can be fully flushed to the local hard drive (if present) as a background task.




III. Silent Computers

Disk drives can be eliminated completely from desktop computers by replacing them with NvRam. It is not a direct replacement however. We are talking about replacing a disk with NvRam that is only a fraction the size. It is much cheaper to store data on a hard drive, so a server is needed as the primary form of data storage.

Eliminating the disk drive in desktop machines reduces noise, power, and heat. It will be possible to eliminate all cooling fans as well. Solid-state machines will be totally silent, more rugged, smaller. With a low power CPU and no disk drive the power requirements are greatly reduced. A smaller power supply can be used that also does not require a fan. The savings on the electricity alone will justify the cost.

Currently Via makes the C3 processor, which can run without a cooling fan. Apple also makes fanless computers that rely on convection to circulate the air. The speed of these machines is sufficient for most desktop apllications.




IV. Mobile Storage

Computer users can keep their world on an external plugable NvRam disk and securely move it between machines. Currently USB drives are available using Flash memory, a type of NvRam. You could carry an external NvRam disk the size of a credit card rather than a bulky laptop computer. It also provides a simple backup mechanism as the external drive can be copied to an optical disc to create a backup.

An NvRam drive might hold about 1GB, but would still require data compression. The amount of data could be further reduced by just saving application data, a few select applications, and your desktop settings. Windows would have to be modified to allow the user environment on the NvRam drive to be loaded in and unloaded from a running Windows environment. Linux would be relatively easy to configure on an external NvRam drive.

An NvRam drive card could take several configurations. It might contain a couple of different port types such as USB and Firewire. People could have different cards for various activities such as work, private use, and hobby. Encryption can be used to secure the cards. Software licensing would need to change as software is installed on a card and run on many different computers.




VI. Implementation

A. Hardware

The most simple configuration is to organize NvRam like a small disk drive. It would be a card you install along with a device driver. Using NvRam as a solid state disk is an easy way to realize many of it's benefits without any changes to the operating system. This may be viable in the short term. However, to fully realize the full potential on NvRam requires software changes to drivers, the operating system, and motherboards.

With a small NvRam Drive (256MB) you can set up a Windows Terminal Server. The Terminal Server transmits display, keyboard, and mouse messages between the server and desktop computers. Applications reside and run on the server, while images are displayed on the desktop computer. For businesses with a few or many workstations, this is simple to manage and can be done with current Windows Server operating systems.

Terminal Server Clients can use generic configurations that are easy to clone, require little administration, and use minimal low cost hardware. The drawback is that response times are not as snappy.

Mainboards will be able to accept NvRam configured as addressable memory rather than as a solid state disk. A device driver may configure the NvRam so all or a portion of it appears as a disk to the operating system. As changes are made to operating systems to explicitly manage NvRam it's full potential can be realized.

Not at first, but eventually, NvRam may be cheaper and faster than RAM. As such the eventual target is a mainboard with NvRam simply replacing existing Ram. If it becomes fast enough, Static RAM used for caching can also be eliminated.




B. Operating System

Microsoft will need to make changes to Windows for a diskless thin client to be viable. NvRam disk emulators will be too small to hold an XP installation for quite some time. A portion of the operating system system needs to be installed on a file server. To keep cost in line, the server should be able to run any version of Windows or even Linux. A Windows Server platform is too costly and difficult to administer.

As Windows is initially installed there is no net access to the server, so a core version needs to be set up. Then a connection can be made to a file server and the rest of Windows can be installed. Many of the files installed on the server can be shared to save disk space.

An experiment was conducted with NT 3.51 as a proof of concept. The system path variable was extended to include copies of the winnt\ and winnt\system32\ directories shared out on the server. Then select .exe and .dll files were carefully removed. The computer was able to boot and run using only 32MB of local disk.

Linux can easilly be installed on a small NvRam drive. Lindows and MacOs, with their underlying Unix operating systems should also be able to do the same. This is nice for their users, but may also provide pressure on Microsoft to do likewise.




C. Legacy Software

Even if Windows is revised to run well connected to a file server, application software will still run into space limitations. In most cases applications can be installed to a shared network directory on the server, but many can not. Applications for desktop computers were written with only a local machine in mind. Software vendors will need to configure their programs to take a more network-centric view.

Users will need to be more careful to install personal data on the server. Application files stored on the server that are frequently used will migrate to local NvRam. This process will provide a significant performance improvement.

Consumers also purchase machines with most of the software packages they want pre-installed. To use a thin client they will need to setup their own system, which is too difficult for most. Vendors will need to deliver a thin client with an installation CD with the preinstalled software that is simple to use. They will also need assistance establishing a network connection to the file server. Wireless, phone, and power line networks can make network installation trivial.



VII. Conclusion

In the short term, businesses, gamers, Linux users, and computer professionals can use NvRam configured as a small, fast drives. This will provide high speed access to files and can be configured as solid-state terminal servers or thin clients. Such computers will be silent, consume less electricity, and cheaper.

After motherboard manufacturers on-board NvRam and Microsoft makes changes to Windows, consumers will be able to enjoy these same benefits. additionally, boot times can be nearly instantaneous. These features are needed to make PCs truely consumer devices.


      Copyright Bradley A. Berg, 2003.  All rights are reserved.