Vista Normal

Hay nuevos artículos disponibles. Pincha para refrescar la página.
AnteayerSalida Principal

Tiny Bubbles in the Memory

31 Marzo 2025 at 08:00

We are always fascinated by bubble memory. In the late 1970s, this was the “Next Big Thing” that, as you may have guessed, was, in fact, not the next big thing at all. But there were a number of products that used it as non-volatile memory at a time when the alternative was tape or disk. [Smbakeryt] has a cool word processor with an acoustic coupler modem made by Teleram. Inside is — you guessed it — bubble memory.

The keyboard was nonfunctional, but fixable. Although we wouldn’t have guessed the problem. Bubble memory was quite high tech. It used magnetic domains circulating on a thin film of magnetic material. Under the influence of a driving field, the bubbles would march past a read-write head that could create, destroy, or read the state of the bubble.

Why didn’t it succeed? Well, hard drives got cheap and fairly rugged. The technology couldn’t compete with the high-density hard drives that could be reached with improved heads and recording strategies. Bubble memory did find use in high-vibration items, but also wound up in things like this terminal, at least one oscilloscope, and a video game.

Bubble memory evolved from twistor memory, one of several pre-disk technologies. While they are hard to come by today, you can find the occasional project that either uses some surplus or steals a part off of a device like this one.

Fitting a Spell Checker into 64 kB

27 Marzo 2025 at 02:00

By some estimates, the English language contains over a million unique words. This is perhaps overly generous, but even conservative estimates generally put the number at over a hundred thousand. Regardless of where the exact number falls between those two extremes, it’s certainly many more words than could fit in the 64 kB of memory allocated to the spell checking program on some of the first Unix machines. This article by [Abhinav Upadhyay] takes a deep dive on how the early Unix engineers accomplished the feat despite the extreme limitations of the computers they were working with.

Perhaps the most obvious way to build a spell checker is by simply looking up each word in a dictionary. With modern hardware this wouldn’t be too hard, but disks in the ’70s were extremely slow and expensive. To move the dictionary into memory it was first whittled down to around 25,000 words by various methods, including using an algorithm to remove all affixes, and then using a Bloom filter to perform the lookups. The team found that this wasn’t a big enough dictionary size, and had to change strategies to expand the number of words the spell checker could check. Hash compression was used at first, followed by hash differences and then a special compression method which achieved an almost theoretically perfect compression.

Although most computers that run spell checkers today have much more memory as well as disks which are orders of magnitude larger and faster, a lot of the innovation made by this early Unix team is still relevant for showing how various compression algorithms can be used on data in general. Large language models, for one example, are proving to be the new frontier for text-based data compression.

❌
❌