Don't Nurse Old Hardware - Emulate It
gManZboy writes "Bob Supnik, former team lead for DEC's VAX microprossesor, has an article up on Queue about his Computer History Simulation Project and how emulating old servers may be a better way to keep them running that servicing the physical machines. So how many PDP-11's can you run on a Pentium 4 anyhow?"
I was even considering emulating existing hardware on beowulf clusters, I know it sounds like a troll or deja-vu joke but I mean it : if I have 1000 machines emulated on a beowulf of 1000 machines, then it'll be harder to get downtime if one machine physically crash.
Trolling using another account since 2005.
Everyone has been so busy emulating the GBA and Xbox that no one has thought about emulating these old servers?
Bob's emulation software SimH is a *fantastic* bit of kit. Runs vanilla OpenVMS without modification - VMS doesn't even know it's in a sim until you tell it so when you licence it.
pentium IV's can you emulate on a PowerPC?
emulating old servers may be a better way to keep them running that servicing the physical machines.
I disagree. It's not the same thing.
-- Signed: your friendly PDP-11 system operator downstairs, 3 years from retirement.
"A door is what a dog is perpetually on the wrong side of" - Ogden Nash
...on how many bugs your emulating under your Windows 2004 Emulator Edition.
.. but you forget the reason people dont upgrade is that it costs money to do so.
Steal This Sig
Before I even R'd TFA, I thought about one big problem:
How are you going to emulate a 5.25 inch drive to read old disks?
I gave up sigs almost a year ago.
Although this is a very good idea I question the stability of a new emulator vs an old proven system.
By using the original the kinks have already been worked out, quirks are known and understood, and everything just works.
By creating an emulator you have bugs to smash, that's just the way software is. Also keep in mind this seems to apply to big businesses (financial, medical) and large organizations (NASA) with legacy hardware. Since the stability of these systems is absolutely crucial why would they want to switch to a new, unproven, buggy system that stick with the old?
by Bob Supnik, Sun Microsystems
Gee, I wonder why he would be recommending buying new servers?
---
Those who can, do
Those who can't, teach
Those who don't know how, supervise
It's called Wintux
"Live Free or Die." Don't like it? Then keep out of the USA
I know of a PDP-11/73 which to this day is still cutting sheet metal for a duct factory. The damn thing just won't die. And they're not likely to emulate since the I/O board interface between the computer and their machine tools would be more expensive to implement on a custom PCI card, along with emulation drivers, than simply buying excess used PDP-11 parts. Someday they'll have to face the music and actually buy a commercial solution, but for the moment they continue maximizing their return on investment for a computer system originally purchased well over thirty years ago. And why the hell not? --M
There are emulators for old IBM mainframes (S360 S370). Hercules is one of these.
Unfortunatly, the massive cost of liscencing the MVS (OS/390, zOS) operating systems means there is no way that a normal user can run a PC based mainframe. IBM employees can do it, of course.
I guess thats also true for the PDP-11 and many old Vaxen, its just cheaper to migrate to new hardware/OS.
**TODO** Steal someone elses sig.
Methinks you underestimate how badly software projects of that sort often go.
Free Mac Mini Yeah, it's
fold the disk a couple times. duh!
"pdp-11 is much heavier than you think."
Not to anyone who's ever tried to pick one up!
Do not look into laser with remaining eye.
TOP TEN SIGNS THAT YOU'RE A VAX GEEK
Key traits identifying individuals tendencies towards abnormal preoccupation with VAX computer systems
9. When talking about building software you make reference to
compilation times in weeks and days instead of minutes and seconds.
8. You stopped purchasing new furniture when you realized that
your computers work just as well.
7. Your electricity bill is more than your monthly rent payment.
6. You've been hospitalized with muscle strain injuries after
performing some routine hardware maintenance on your computer.
5. You don't have an SO, but it's okay because your computer keeps
you warm at night.
4. While doing laundry, you occassionaly have a mental lapse and try to
wash your socks and underwear in your 11/750.
3. Friends who visit you want to know why there are old-time movie reels
stuck on your refridgerator(s).
2. Your house is pleasantly warm in the dead of winter, even with the air
conditioning turned all the way up.
1. The lights in your home dim or flicker when you reboot.
0. It doesn't matter to you if someone else's computer is faster because
you know your system could smash theirs flat if it fell over on it.
-------
Support Indy Music. Buy
I think they patented some aspects of emulation, mainly to shut down people selling GBA emus for palmtops.
Given the current state of patent law, chances are that any universal Turing machine now owes Nintendo royalties.
Real Daleks don't climb stairs - they level the building.
The article does well by pointing out a great list of problems that can be encountered when emulating a machine.
/* nothing */ }
Some of the projects on which I work are for nuclear power plants, many of which here in Canada use computers from 1972 -- I was born in 1976 -- to control the plant. While spare parts are dwindling, the prospect of having to retest all of the code is daunting, not to mention the costs of making a program as complex as an emulator in the first place.
I've seen (the assembler equivalent to) the following code used in embeded processors to perform a sleep():
counter = 500; while (counter--) {
Imaginine executing that on an emulator that didn't pay any attention to timing?
I have such warm, fuzzy memories of hacking a PDP 11 and rabidly tearing away the wrapping from each DEC Professional magazine that graced my mailbox...
Yeah, emulation sounds more reasonable than what some nut did, he got the schools old PDP 11/50, with 1 TU16 and 2 RP04 drives and had his house (I sh!t you not) raised 12 inches so he could set it up in the basement. No idea what's happened since.
A feeling of having made the same mistake before: Deja Foobar
All of them?
If you keep the old system, it is running at .8mhz, 5mhz, or some other slow speed. It still runs faster emulated, though the emulation is not efficient. It also takes care of problems of repair and replacement of parts.
Fight Spammers!
I've written emulators for devices. It depends on what you want to achieve. Emulating the interface may be relatively easy. If you used an old server to provide specific data or perhaps some kind of interface to another service, well you don't need to duplicate the entire server, you just have to implement a "jumper" system to provide a different path for the information flow.
Emulating an device comprehensively just to simplify servicing it could be futile or infeasible when you need to know the fine details of the device's characteristics. The manufacturer of a device might supply an emulator but I wonder just how many PDP-11's or machines lacking backwards compatibility still provide a vital nonupgradable function.
One may point to certain programs that used to run in DOS or in my case Win95 that don't run in XP. I want to speed up these programs on new hardware without having to buy the latest version. This is the downside of using Windows - if backwards compatibility is broken, a faster processor may force an expensive upgrade. Then again, all this backwards compatibility could be slowing Windows down.
Know your pads. One time pad: good for cryptography. Two timing pad: where to take your mistress.
the PDP-8/e Simulator for Macintosh is a LOADED system (up to 32K words of memory, KE8-E Extended Arithmetic Element, ASR 33 Console Teletype, ASR 33 Auxiliary Teletype, PC8-E High Speed Paper Tape Reader and Punch, RK8-E Disk Cartridge System, LP8-E Line Printer, and a KC8-EA Programmer's Console) that runs a quite a bit faster than the original - fastest benchmark is a G4/450 at about 22x; my 2x1.25 runs the tests well under 1sec. If you need to support an -8 legacy, this seems like the logical way to go.
Facts do not cease to exist because they are ignored. - Aldous Huxley
About fifteen years ago, I was involved in the retirement of a number of older computing systems (specifically IBM "Series/1", "System/7" and "1130"s) used in manufacturing. At the time, these systems were critical in supporting older products (most notably FAA radar displays) but had been withdrawn from regular IBM support and parts were only available from returned equipment.
I could appreciate the article's comments about engineering detective work; we had some source code on paper, some source and binary code archived on disc and some binary code saved on cassette tape (seriously). Product, tester and controller documentation was spotty to say the least. For the most part, we had enough understanding of what was happening to be able to recreate the test specifications for all the products.
The big problem was understanding actual timings and electrical parameters; few of the part numbers were built from standard TTL ("VTL" in IBM parlance) and most were built using IBM "SLT" technology implementing RTL and DTL logic.
After collating all the data we had, we decided we could: we could simulate the controller operations in a PC. In many cases, we could emulate the operation of the controller/tester hardware with basic digital I/O cards connected to a PC. Finally, in quite a few cases we were completely on our own due to unusual (for today) electrical requirements.
Due to the large number of part numbers (1500), we wanted to come up with a single solution that made the most sense and, ideally, worked for all the different part numbers. We looked at simulating the controllers with PCs and passing the I/O to the old tester hardware, emulating the tester using a PC with I/O cards or converting the tests to run on a standard InCircuit Tester (ICT).
In virtually all the cases, it made the most sense to convert the tests to run on a standard ICT tester (GenRad (new Teredyne) 228x was chosen) rather than simulate or emulate the hardware. The conversion applications generally converted the binary code into digital I/O operations (or GPIB instrument I/O) rather than come up with compilers for the original source code (although we did do this in one case). This was still a rather large job, but it was completed before parts sources for the old controlling computers completely dried up.
I suspect that from the lack of hardware interfacing information in the article, the author has run into similar problems. Despite that, having a simulator could be very useful in understanding how an old computer system operated and what is required to properly emulate/convert it into more modern hardware.
myke
Mimetics Inc. Twitter
In this situation, you could spend a couple of thousand dollars on a new machine and run your old software on it using a free emulator. Hell, the machine you just ordered for your secretary would probably out-perform the old server. The new machine will be one twentieth the size of the old, use one twentieth of the electricity and won't have twenty years of accumulated wear and tear.
If you've got a custom application written in a dead language, emulation may be the best way to continue fulfilling your requirements too. Sure, a new app in the shiny new language du jour might be nice, but if you've got proven 30 year old code and performance on the old hardware is adequate then it makes sense to keep things ticking on a virtual vax or pdp. And think of the kind of server room consolidation you could perform!
Other posters have commented on the proven behaviour of hardware v. emulators - how the latter could have bugs that aren't apparant, and may thus be unsuitable for users like NASA etc. Surely it's easier to produce a bug-for-bug compatible emulator than it is to re-write possibly millions of lines of legacy code in a bug-free manner. Sure, it's nice in the long run to re-write software with greater portability in mind, but while that's happening wouldn't it be worth making sure you can continue to run your existing programs without having to worry what will happen if some obscure I.C. elects a new Pope?
Those who complain about affect & effect on
Then it's an even worse idea. How so? They think running a critical app on hard-to-repair hardware is tough? Then they need to wait until the emulator bugs out on something subtle.
They end up with still failing "virtual" hardware, and the only consolation is that if they persist long enough, they may eventually fix it completely. Oh, at least until they need to port the emulator to Windows 2009 Gold Pro edition on the Pentium 9, then it bugs out again.
Start porting the damn apps, or rewrite them. And even as you're doing this, plan for the next changeover in 10-15 years.
"The truth is, Slashdot is basically a Gamer site."
Oh come on now, that's not fair. We also talk about pr0n.
"The first laptop I had was a pdp-11"
An LED-screen-based terminal emulator with a 300 baud modem dialing up to the PDP 11 shouldn't really count...
Do not look into laser with remaining eye.