[geeks] Future OS
Phil Stracchino
phils at caerllewys.net
Fri Feb 5 12:38:52 CST 2016
On 02/05/16 12:38, Nathan Raymond wrote:
> Does anyone know of any efforts to create a new OS that takes advantage of
> the change we'll see in the near future where storage and RAM will blend
> into just one pool of fast storage?
>
> Right now operating systems (and a lot of computer architectures/hardware)
> have a lot of resources and overhead devoted to shuffling data around from
> disk to RAM and back again. Once memristors etc. become prevalent and the
> storage, we can drop that distinction. The entire concept of 'booting' and
> 'launching an app' can be entirely different. We'll have the opportunity to
> define some fundamentally new computing paradigms.
To a certain extent, Android and other smartphone OSs are already
working in the early stages of this paradigm, in that smartphones really
don't have any kind of serially-accessed/seeking storage at all, they
just have two pools of RAM, one dynamic and one flash.
That said, IMO Android does a terrible job of it so far. If I have
"internal" flash RAM and an "external" micro-SD flash RAM card, I expect
to be able to move non-system applications and data freely back and
forth between the two or even tell the device to treat both as just one
big shared pool. But I have an Android tablet with 16GB of "internal"
flash RAM storage and a 128GB flash RAM card in its "external" micro-SD
slot, and I've told Android to move everything possible to the
"external" card, and still the "internal" storage is >95% full while the
micro-SD card is almost empty. I have games and non-core applications
that could easily be 100% relocated to the micro-SD card ... but
Android won't allow it *even though the RAM is physically identical*.
> The other opportunity is with fast networking to drop the antiquated
> concepts of 'workstation' and 'server' and just move to the idea of
> connected resources (compute and storage). Connect things, and then run
> your apps that can tap those resources as needed. The OS will be the part
> that tracks how things are connected (their locality, bandwidth, latency,
> speeds) and manages what runs where for which user (who gets what
> resources).
The problem I have with this paradigm is that if you have a network
communications outage, you're totally dead in the water and can't even
do anything locally while you wait for the connection to come back up.
There is certainly a place for connected, distributed services, but if
you make yourself totally dependent upon that connection in real time,
you have created a fragile system that collapses if communication is
interrupted.
This brings up issues raised by SF author Mackey Chandler in his April
series. He points out that the complex, interconnected systems we have
today for MANY things were not created out of whole cloth that way -
they evolved, with complexity added to the system as it went along. And
sometimes, if the entire connected system loses enough functionality and
goes down completely, you can't start it back up again, because the
tools that you need to start it back up are dependent upon it being up.
A civilization that suffers a sufficiently severe technological crash
may have to rebuild its systems from scratch because post-crash, the
tools to bring the present, evolved form of the system back up no longer
exist *outside* the system.
> Seems to me we need a new OS for both of these things because everything
> I'm aware of on the market right now is tied down to old concepts of what
> storage is and how resources should be managed. Is there anything out there
> that's ready for this future?
To slightly diverge, another thing I expect to see come along after the
advent of pervasive memristor technology and the like is what I like to
think of as "brilliant memory". We are already seeing experimentation
into distributed processing paradigms in which processing nodes are
pushed town towards the storage layer. And, as you note, we are moving
towards a paradigm where the distinction between working memory and mass
storage could vanish.
Now, what if those were combined? Let's suppose you are searching a
huge data base for a particular piece of data. At best, the time to
find the piece of information probably scales roughly at O(n) as you
scale the size of the storage pool holding the data. You might even
achieve O(sqrt(n)) with the right distributed architecture. But if your
database were stored in brilliant memory, you might be able to simply
broadcast a question to the entire storage pool, "Does any memory block
hold this piece of information?" And have the memory block that finds
it has a match respond "Yo, got it right here." Can you imagine what
might be possible to expert or AI systems if a database, or a knowledge
base, could be searched in O(1) time?
--
Phil Stracchino
Babylon Communications
phils at caerllewys.net
phil at co.ordinate.org
Landline: 603.293.8485
More information about the geeks
mailing list