Wednesday, February 6, 2008

Vault Operating System : Some Field Notes

I'm going to list some of the basic requirements for the features to be present in the Vault OS V1.0 running on an XT compatible machine, let's say 512K RAM at startup, we'll assume no fixed media other than a floppy drive, monochrome display EGA, no battery, a single Ethernet card of some kind. This is about as elementary as you can get. You can find laptops like this thrown out in the garbage or at a garage sale for a few dollars. Most of the time, the clock battery will have to be present in order to maintain your BIOS setup, but keeping laptop batteries maintained is a real pain, so pull it out and we'll say that 12 volt laptop converters power all the machines off the common shelter voltage.

This will not include fixed media storage of database and configuration files. We'll leave this to specify later.


1. Connected to a multiuser, multinode LAN Ethernet
2. Inventory management (with specific filtering for things like "due for rotation")
3. Personnel Data (including contact information, skill set and notes)
4. Medical Data (Listing basic medical info and ordinal sets of data like radiation exposure)
5. Scheduler (calendar for given week, month & year)
6. Job manager (linked to schedule, define tasks, periodicity, specifics)
7. Diagrams (maps, floorplans, locators, technical graphics)
8. Peer-To-Peer Communications (alerts, email and realtime chat with other terminals)
9. Sensors (Display of states and detectors ... hatch open, temp, water levels, batteries, etc.)
10. Controllers (Turn stuff on and off, like lights, fans, antenna riser, water pump, genset)
11. Logger (track all history and operations with review available, possible manual entries)

We'll assume a small embedded device connected to the Ethernet handles all the hard work collating and dispatching sensor information in a true multithreaded system. So something like the "Vault-Pad" I have a prototype running for would take in all kinds of sensor feeds, either analog, digital, switches ... then package this up as an Ethernet message "to whom it may concern" at regular intervals and send it out. This hardy and reliable device runs all the time, whereas any given terminal running the Vault OS can be on or off, working or broken. Although this small device schedules and controls devices automatically like air conditioning or fans, it could also be sent messages over Ethernet as overrides, like "turn on the fans now irregardless of temperature" and other control messages. It might be possible to write a PC compatible program that turns any PC into this "Vault-Pad" by configuring it correctly and using the standard interface ports (or A/D interface cards) to read in data and control devices.

If the small embedded workhorse called the "Vault-Pad" runs 24/7, then we could postulate a central server for the database (we'll say it's a very simple ISAM database) we'll call the "ThinkBoy" that serves up data from the central base and dispatches it at request. This "server" could also "think" about the ramifications of the data, like telling people that water levels are low and calculations show that with the water demands of 8 people, the water will run out in six months. In my case I'll probably use my military embedded PC board. In any other installation it might run off a decent quality 200mhz 486 portable with a hard drive. Any terminal can talk to "ThinkBoy" by name and request database information including conclusions about things like food and water, medical supplies and aboveground radiation hazards. It would be good if a single configuration switch in the Vault OS .ini file could tell a terminal (if it has the correct capacity) to take over for the Thinkboy until it comes online again. So any terminal could operate as the server if needed. This might be as simple as diagnosing the server as faulty, pulling out it's "brain" (a compact flash memory card) and then plugging it into a terminal and configuring it to become the "Thinkboy" the next time it boots up.

The population of sensor data will be looked for circulating on the Ethernet but this won't stop anything else from working. Sensor data could consist of anything we can hook up to the "Vault-Pad" via serial, parallel, I2C or other device communication protocol. If sensor data is empty for a terminal (no recent Ethernet messages) the last timestamp of sensor data is available in the sensor monitoring screen.

What kind of maintenance would ensue if a terminal failed? Go find another cheap, zero grade junk laptop or other machine, pull the "brain" (flash card) out of the defective terminal and plug it into the new one. Minimalist Ethernet installation with the OS configuring simple check for availability when the program starts.

The design goal would be a mini-internet inside the shelter which could consist of one or a thousand terminals, all with fairly similar capabilities.

Any feedback greatly appreciated. I am really trying hard to hammer out most of these details before I start work on the new version. I will have time in coming months to work on this regularly at night so I plan to get this working as soon as possible, for my own use initially and then anybody else who wants it. I'm not going to try to make any money off this operating system, it will absolutely be freeware when I have it running inside my own shelter.

EDIT : Arachne Web Browser, 16 Bit DOS HTML Browser Desktop ... could this be the base client operating system for a WATT-32 16 bit TCP/IP local network?


Anonymous said...

Wow that whent completely over my head O_o.


Texas Arcane said...

Something interesting here to look at ... got me thinking in a couple different directions.

Might be possible to design a web browser interface in HTML code that looked something like this.

Anonymous said...

Yep...frames, tables and cgi scripts. You could have feeds coming from multiple servers intermingled on that one page. Simple. (The thing is that with an html interface, anything you need for your vault is at such a basic level that nobody even bothers to write about it any more because it's " last century," if you take my meaning.)

Now if you're looking for something for a vault-dweller to get really excited about, Mr Arcane, how about these "zero power" displays?

Obviously not quite zero power, but they may as well be. Can you imagine how many pixels would actually need to change in a one-hour period on that display you posted? And how much power a plasma or crt screen would waste updating the ones that don't?

According to the pdf brochure they're suitable for "ultra-mobile PCs" so presumably there's already some useful interface available, unlike the offerings from a lot of the other manufacturers who seem to be concentrating on providing radio-updated e-paper price stickers for supermarkets and other such useless crap (I shit you not!)


Texas Arcane said...

Saw those new zero-power displays. There is a company called Kent Systems trying to rush those to market as well. They are still too expensive, maybe when they come down in price they will be a lot cheaper as drop-in replacements for VGA or RGB PAL video displays.

Something really attractive about using Arachne as the universal client is that it can display PDF files in the browser! So you could load up your server with gigs of flash ram and have an on-demand master library of PDFs viewable from any terminal on the network! I can't tell you how many CD-ROMs of reference PDFs I have. That alone is a huge plus for Arachne, unforeseen until I tested it. I think it can also display CCD images from cameras that are attached to the Ethernet if you generate a web page to do so from the server.

The only demand here is to have a good server. The "server" should have some "minimal specs" like it must be a 486, have at least a 40 mb hard drive, maybe a couple gigs of storage on a flash card for PDFs and other data documents, etc.

I was thinking that maybe the Vault-Co ThinkPad could be incorporated into the Vault-Co ThinkBoy as one unit and also run in x86 software (16/32 bit) if it uses a Free RTOS like Watcom and other machines have. The server could run in the background serving up pages on one process while the front end runs in some 32 bit GUI that monitors sensors, activates controllers, maintains the database, etc.

My first goal would be to just get the server delivering pages on demand, then have a shell of the front end display with the SQLite database compiled in.

That PythonD for DOS system that somebody referred me to is still interesting. I need to have a closer look at it as a page server system for a local network.

CGI is freaking ugly and crude but it's the most basic assembly of HTML pages for delivery in DOS. I'd like to see if there is another way to go about it.

Texas Arcane said...

Hold the fort ...

Wow ...

Glad I did some more research ... I can't believe what I stumbled onto ... it's freaking amazing, out of this world ...

*Just installed this on my Fujitsu Stylistic 1000 Tablet ... right off the Compact Flash ... YOWZA!!!

Holy Cow, it's beautiful.

Unbelievable. I installed it onto three of my doorstop portables from a PCMCIA card (386SX-486DX 4 megs RAM avg, no hard drive) and it booted up perfectly on each one ...

Texas Arcane said...

Ay Caramba ...

HTTP Client running on 386SX with 2 MEGS of RAM?

Texas Arcane said...

I like this even better.

Basically it is an OpenGem implementation that will run on any x86, period.

I've downloaded the SDK and have been learning the API so I can code up my own apps to go on the desktop.

Texas Arcane said...

This is one of the best computing books I have ever owned and it is also the cheapest, I got it for $2.00 from the discount bin.

Windows NT Heterogeneous Networking

Basically, it shows how to connect almost any kind of remote terminal to a windows network, including DOS machines. So there's the possibility of having a decent laptop acting as the server to a dozen zero-cost $1 dogs if they are running one of the awesome one-floppy OS's listed above. This would put a Vault network within literally everybody's reach economically, if the software is there.

Anonymous said...

Something potentially usefull perhaps?

Scientists make unique knee-brace power generator :

Scientists in the United States and Canada said on Thursday they have developed a unique device that can be strapped on the knee that exploits the mechanics of human walking to generate a usable supply of electricity.

It generates enough power to charge up 10 cell phones at once, the researchers report in the journal Science.