Memristors and their potential impact on OS/kernel dev

Question about which tools to use, bugs, the best way to implement a function, etc should go here. Don't forget to see if your question is answered in the wiki first! When in doubt post here.
Post Reply
User avatar
furryfreak
Member
Member
Posts: 28
Joined: Mon Nov 03, 2008 12:45 pm
Location: SW England

Memristors and their potential impact on OS/kernel dev

Post by furryfreak »

I've just found out about a very interesting, and potentially revolutionary discovery called the memristor. Although the theory behind it has been known for some time, HP have recently built the very first working memristor. Put simply, the technology could be used as non-volatile RAM (and thus permanent storage too), processor registers/cache, and can be used to implement many of the logic gates a processor uses to perform calculations. Whats more, a memristor can be as small as 5 nanometers, thats the size of ~25 atoms. Besides the use of memristors in digital computers, they have properties very similar to synapses, and can theoretically be used to create very efficient neural nets using a kind of analogue/digital hybrid. In fact a simple circuit containing a memristor has been proven to mimic the way an amoeba remembers to react to exposure to low temperatures at consistently timed intervals. One of the inventors reckons that memristor based components could be commercially available in 3-5 years, though the technology is still very young so in terms of its use as memory and processor components, it'll be very slow, but considering how new it is, and its clock rates compared to the first transistors, it'll soon catch up.

I can't really explain this in much higher detail so heres some links:
http://uk.youtube.com/watch?v=kUOekeiqihc - Fairly basic introduction to memristors and some of their potential applications
http://uk.youtube.com/watch?v=rvA5r4LtV ... re=related - Brief summary of their physical structure and basic theory
http://blog.wired.com/gadgets/2008/04/s ... -prov.html - An article explaining some more potential applications.
http://uk.youtube.com/watch?v=QFdDPzcZw ... re=related - A symposium held at Berkly. Very long, but loads of really interesting stuff, though some of it gets very complicated in the second half of part 2 and part 3 (split into 4 parts, use the related links on the right to watch the others).

What I want to know is how do you think this'll effect OS/kernel development? or for that matter, programming as a whole?

The idea of using only non-volatile memory is amazing, but IMO it's going to make the handling and (more importantly) prevention of memory fragmentation a much higher priority.
Personaly, I hope that once both memristors and nanophotonics have been refined and become very well established, a new computer architecture will come out of it, the x86 architecture just doesn't seem scalable enough any more IMO.
User avatar
Love4Boobies
Member
Member
Posts: 2111
Joined: Fri Mar 07, 2008 5:36 pm
Location: Bucharest, Romania

Re: Memristors and their potential impact on OS/kernel dev

Post by Love4Boobies »

From what I gather (haven't checked with any sources yet, not even the ones provided by you). Memristors are a substitute for transistors. I'm not really sure how cheap building them is when compared to conventional transistors. It's very unlikely that they'll use memristors to produce larger HDDs and/or combine HDDs with RAM and maybe even CPU (which IMO would be a good thing - btw check out the IRAM project from Berkeley). The reason for that is simple: current technology is *really* cheap. If the costs go really down, perhaps - but it probably won't happen anytime soon.

Programming in general won't be affected (almost?) at all. System programming will - it will become simpler if what I said before proves to be correct. No more controllers or buses needed for memory and (incorporated) drives.
"Computers in the future may weigh no more than 1.5 tons.", Popular Mechanics (1949)
[ Project UDI ]
User avatar
furryfreak
Member
Member
Posts: 28
Joined: Mon Nov 03, 2008 12:45 pm
Location: SW England

Re: Memristors and their potential impact on OS/kernel dev

Post by furryfreak »

I'm not really sure how cheap building them is when compared to conventional transistors
The guy in the being interviewed in my first link mentions that the researchers have been making sure that the materials used are cheap and easily integrated with existing circuits such as quartz and silicon.

According to R. Stanley William (one of the inventors), all the materials and machinery needed are already available in all microprocessor fab's. In fact, HP's only fab is used for making inkjet cartridges, and they've managed to use that to manufacture these things, so thats not really a problem.
From what I gather (haven't checked with any sources yet, not even the ones provided by you). Memristors are a substitute for transistors
Well... yes and no, they can do almost everything transistors can, but the means by which to go about them are, for the most part, very different. A memristor could potentially be much more efficient at one task than a transistor, and vise versa. I very much doubt that any components (especially processors) of any computer system will be 100% memristor based for that very reason.
User avatar
Love4Boobies
Member
Member
Posts: 2111
Joined: Fri Mar 07, 2008 5:36 pm
Location: Bucharest, Romania

Re: Memristors and their potential impact on OS/kernel dev

Post by Love4Boobies »

Maybe use memristors as a replacement for latches? If transistors turn out to be cheaper and/or faster in some cases perhaps both; I can't see any reason for having 'non-volatile latches' in say, graphics hardware.
"Computers in the future may weigh no more than 1.5 tons.", Popular Mechanics (1949)
[ Project UDI ]
User avatar
Colonel Kernel
Member
Member
Posts: 1437
Joined: Tue Oct 17, 2006 6:06 pm
Location: Vancouver, BC, Canada
Contact:

Re: Memristors and their potential impact on OS/kernel dev

Post by Colonel Kernel »

Imagining if all RAM were non-volatile is a great thought-experiment in software reliability. These days we rely on the ability to flush things out once in a while to solve problems. Is a process misbehaving? Just kill it and start over! Is your machine completely borked? Just reboot it!

Imagine if rebooting no longer restored RAM to a pristine state -- If the OS effectively booted once in its entire lifetime, and never shut down. Software would have to be written in a completely different way to achieve this 100% uptime. IMO shared mutable state would have to be forbidden for all but the most trusted components in the system, or else managed completely by transactional memory.
Top three reasons why my OS project died:
  1. Too much overtime at work
  2. Got married
  3. My brain got stuck in an infinite loop while trying to design the memory manager
Don't let this happen to you!
User avatar
furryfreak
Member
Member
Posts: 28
Joined: Mon Nov 03, 2008 12:45 pm
Location: SW England

Re: Memristors and their potential impact on OS/kernel dev

Post by furryfreak »

Reboots would still be necessary to turn the processor and every thing else off/on to save power, but application data would remain. That means our use of memory would have to be much less dynamic.

But then thinking about it some more, if the processor and the other hardware itself was non-volatile, and kept its state on reboot, none of that would be a problem...
And seeing as everything would have to be redesigned in that scenario, it'd be a good excuse to drop all this legacy nonsense, and move forward.
User avatar
Brendan
Member
Member
Posts: 8561
Joined: Sat Jan 15, 2005 12:00 am
Location: At his keyboard!
Contact:

Re: Memristors and their potential impact on OS/kernel dev

Post by Brendan »

Hi,
Colonel Kernel wrote:Imagine if rebooting no longer restored RAM to a pristine state
For most modern computers, during reboot there a RAM test that serves 2 purposes - it checks if the RAM is faulty *and* it fills the RAM with zero to prevent any sensitive data (passwords, etc) from the previously booted OS from remaining in RAM (where someone using a bootable utility can extract the sensitive data from RAM after reboot).

Until it actually happens and we can know for sure, I'd assume that (except for certain sleep states), if memristors were used as RAM it wouldn't make any difference to the way we write OSs because the memristors would still be tested and zeroed by the BIOS during boot.

I'd also assume that when/if they're first released they'll be expensive, much like solid state/SDRAM disk drives are now, so they'd probably be used for storage space in high-end netbooks and things like that until prices come down.

Lastly, if the researchers had any brains they would have already patented it already, and they'll expect $$$ from any company licensed to manufacture it. Basically the price consumers pay for it may be much much more than what it actually costs to manufacture.


Cheers,

Brendan
For all things; perfection is, and will always remain, impossible to achieve in practice. However; by striving for perfection we create things that are as perfect as practically possible. Let the pursuit of perfection be our guide.
User avatar
furryfreak
Member
Member
Posts: 28
Joined: Mon Nov 03, 2008 12:45 pm
Location: SW England

Re: Memristors and their potential impact on OS/kernel dev

Post by furryfreak »

Lastly, if the researchers had any brains they would have already patented it already, and they'll expect $$$ from any company licensed to manufacture it. Basically the price consumers pay for it may be much much more than what it actually costs to manufacture.
Who says they haven't?
After reading up on this a bit, allot of companies have already patented or have pending patents regarding memristive systems... In fact this could actually be a big problem in the future... companies arguing over who patented what first etc.

One thing I should mention is that a couple of workers/representatives of HP had a very early look at some recent unpublished work of Leon Chua at the Berkly conference, a lossless version of the memristor called a "memory transistor" (memristor is a combination of the words "memory resistor"). So theres a chance they've filed a patent regarding that by now.

[edit]
another thing i should add is that memristors (and probably memory transistors), are actually a very broad range of devices, both man-made and natural. People have observed memristance in the brain, single cell organisms and previous unexplainable occurrences in various circuits. I wouldn't be surprised at all if genetic memory (DNA) had memristive properties.
User avatar
Owen
Member
Member
Posts: 1700
Joined: Fri Jun 13, 2008 3:21 pm
Location: Cambridge, United Kingdom
Contact:

Re: Memristors and their potential impact on OS/kernel dev

Post by Owen »

Doubt DNA does. The functioning of DNA is very well understood - and much simpler than many people think
User avatar
furryfreak
Member
Member
Posts: 28
Joined: Mon Nov 03, 2008 12:45 pm
Location: SW England

Re: Memristors and their potential impact on OS/kernel dev

Post by furryfreak »

Doubt DNA does. The functioning of DNA is very well understood - and much simpler than many people think
your probably right, I don't really know anything about biology, but the point remains that memristance is a natural occurrence as well as being man-made.
jal
Member
Member
Posts: 1385
Joined: Wed Oct 31, 2007 9:09 am

Re: Memristors and their potential impact on OS/kernel dev

Post by jal »

furryfreak wrote:
Doubt DNA does. The functioning of DNA is very well understood - and much simpler than many people think
your probably right, I don't really know anything about biology, but the point remains that memristance is a natural occurrence as well as being man-made.
He is very wrong, new discoveries are made frequently. Though the very basics are well understood, there is still little understanding of the whole interactive mess that is the many types of RNA and DNA, the role of 'junk' DNA, and so on and so forth. But lets not turn this into a biological debate.


JAL
User avatar
Love4Boobies
Member
Member
Posts: 2111
Joined: Fri Mar 07, 2008 5:36 pm
Location: Bucharest, Romania

Re: Memristors and their potential impact on OS/kernel dev

Post by Love4Boobies »

I wanted to point out the same things as Brendan did but unfortunately, for some reason, my ISP's range of dynamic IPs are all blocked. Luckly I have 3 ISPs (couldn't use any of the other 2 the last few days). :D
"Computers in the future may weigh no more than 1.5 tons.", Popular Mechanics (1949)
[ Project UDI ]
Post Reply