[ overview | motivations | results | contact | download | xen | links | Rick van Rein ]



BadRAM: Motivations

Motivations for this project

There are several reasons to carry a project like this. Most of these reasons motivate me; some may also motivate you to help me progress.

Commercial motivation:

It may be quite interesting from a commercial perspective to be able to sell partially defective RAMs. I am not economically gifted (or even educated) but it is quite obvious that variation makes people select what they like, and can get them accross a barrier.

Say that current-day RAM modules would cost $100. These are the 100% correct modules, all others are wasted. By selling a decent subset of the wasted ones for a profit of, say, $20 each, a new audience is addressed, namely the one that thinks $100 is a lot (mostly home users). The professional market has the tendency to go for high-quality materials, and they will continue to be willing to pay $100 per module.

Some of the professional users will however turn to the cheaper alternative; in the given example, this has a break-even point where the professional market's switch to the cheap variety makes up a fourth of total sales; not a figure I would expect!

A possibly more important reason why this idea is of commercial interest is one of competitive advantage: Being the first to start a sales line for bad RAM gives a head start which has often been shown to be crucial on a dynamic market. This technology will make it possible to start a new company label, marketing differently priced RAM modules for different guaranteed percentages of correct bytes.

Please note that a similar practice is commonplace in the processor market; if a processor fails testing at a high clock frequence, it is tested at a lower frequency and possibly sold if that succeeds. This means the model proposed here is a proven strategy, but applying it to the RAM business is at the same time innovative because it is currently considered impossible to work with partially defective RAMs.

Technical motivation:

On the technical side, one reason is the challenge to keep a stable system equally stable no matter what the RAM is like. And to seek out the mechanisms to minimise the cost of defective RAM on performance. And to find the boundaries of the technique proposed here.

Ethical motivation:

I like to preserve as much of the environment as I can. The production of chips is a very resource intensive process, and the complexity of a chip means that a lot of the produced chips are incorrect. I dislike wasting good materials, and even if they are merely `good enough' they should be taken seriously. By allowing the use of such `good enough' memory chips, I hope to help preserving the environment.

Personal motivation:

First, I would enjoy adding my twopence to the Linux operating system. I have gained so much from using it, I think it's my time to repay in some way.

This weird idea seems refreshing and new [that's hard to establish in the Linux world nowadays --- most thoughts have been thought already!]. It combines my interest in hardware and software. And, let's not forget that: It may yield me a few additional DIMMs in my PC.

Why do it for Linux?

Linux is Open Source software. This makes it more suitable than, say, Windows. Furthermore, it's architecture is quite well-done, thanks to many developers cautiously checking it from their particular perspectives.

Linux is also (to the best of my knowledge) the most flexible OS around at the moment. Furthermore, it is used most on home computers, the kind of platforms this technology (initially) aims at.