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?
I will have to guess, 7. Just because its a great number.
But seriously. Emulators are the way to go. I know that w/ Microsofts new initiative to let linux apps run in Windows, emulators are going mainstream. Yes, for all you anti-MS people, Windows is mainstream.
I was looking for the article about Windows Linux thing, but I cannot seem to find it at the moment.
--sig fault--
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?
If the DEC VAX systems are so antiquated, wouldn't it make more sense for businesses using these systems to simply upgrade to newer/better technology? I mean even if they have incredibly stability and "wow" factor, wouldn't it be easier than both solutions just to upgrade the software to newer systems. Uptime on many linux/unix systems are just fine for most usage, and QNX has their real time fail proof operating system, but I doubt people using VAX would even need something that powerful.
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
How do you emulate an 8 inch drive?
Stating on Slashdot that I like cheese since 1997.
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.
So how many PDP-11's can you run on a Pentium 4 anyhow?
You could shell out some bucks for Ersatz11 and find out. It runs under Linux, and it runs fast. You can even attach Q-Bus and Unibus hardware with an adapter.
Here come da fudge!
"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
Regression testing. Emulation's nice, but it ain't the same as the original hardware. Which means, people will need to regression test. Trick is, the people that know what that old PDP-ll is actually doing retired a long time ago. So who's going to write the test cases?
Been wanting to buy an old 11/780 shell for a while. Not for a bar, but to mount both my Mac and Gaming PC innards in. This'd be a real trip to run as an emulator during parties. Now to interface the VT-120... Hack the shell I suppose. Run everything USB. >:D
I hate Grammar Nazi's
Problem is... The WOW factor on these servers has gone from WOW look what it can do. To WOW your still using that.
Last one in jail is a fascist.
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 first laptop I had was a pdp-11
Know your pads. One time pad: good for cryptography. Two timing pad: where to take your mistress.
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?
Such a "translation" would be beyond meaningless. The architecture is fundamentally different, and most of the P4's cycles would have to be spent on emulating/accounting for quirky little hardware details or features. That's why it takes a 100 MHz Pentium (if not more) to properly emulate a 1 MHZ C64
The illegal we do immediately. The unconstitutional takes a little longer.
--Henry Kissinger
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 used Bob's emulator a bit, playing with the PDP-11 emulation when I had an 11 in my basement that was failing. I now use the VAX emulator running BSD. I've also used SIMH as inspiration for my own emulation project for emulating a MITS Altair 8800 (with the front panel).
The next version is done and will be released within the next week or so after I update the docs to synchronize with the changes made.
Anyway, the project page is here:
http://highgate.comm.sfu.ca/~rcini/classiccmp/Alta ir32.htm
I've recently done this with a small webserver to keep it running. Some sort of deposit had appeared on top of the electrolytic capacitors on the motherboard, and the machine became unbearably unstable.
I took out one of it's mirrored drives and connected it in a different (larger) machine and then booted it using Usermode Linux.
I found it was best to be running 2.6.7 on both the host and the uml and it is bridged onto the host's network, so it appears exactly as before.
- Brian.
For those interested in trying VMS on Linux using the SIMH emulator (entertaining if you once used it), I've written a set of installation instructions that might be of some use.
Phil
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.
But what about lesser known mainframes such as the Prime.
How sad for me to find out that not only am I obsolete, I'm also obscure. I remember PrimeOS fondly if for no other reason than it was where I cut my teeth as a young hacker.
Would have been about 1984, dialing in to a univeristy's Prime in another state. Me on my Commodore 64 with my Microbits 300 baud modem (I was the fastest kid on the block. Everyone else had 110 or baudots). It was like NetHack, but in real life. Learned to get in. Learned to navigate. Learned about these great things called directories (unavailable on my Commodore 1541 disks). When I couldn't affort to buy new floppy disks, I started storing all of my programs and files on their mainframe. They seemed to have plenty of space. I was in there for more than a year before I got caught. Ah... those were the days.
Thank for you for the trip down memory lane.
World's tallest building rises in the desert
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
Ohh we have parts! for the Prime. We are swimming in parts. And we don't see running out any time soon. We still have customers using the Prime and we still maintain them. But we would love to get our hands on some Prime emulators to help with the migration to a new platforms as well.
If something is so important that you feel the need to post it on the internet... It probably isn't that important.
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?
During a high school internship. Fascinating machine. Back then, I think it was around 84 or 85, this machine served around 5 people on plain text terminals, and as soon as you started an integrated pascal compiler everybody complained that the machine was slow as a dog. Needless to say, that the pascal compiler was slower than Turbo pascal on a normal PC (given the recursive descension nature of turbo pascal no wonder, although the pc was myriads slower) But one thing I never saw with this machine, it never fell, and the multi language binaries, as far as I can remember where you could hook different languages easily together were really nifty. No wonder the company used this machine mainly for development and holding customer data, this beast was as solid as a machine could get.
Those who complain about affect & effect on
How can you tell the DEC repair man on the side of the road?
He's the one changing out the tires, trying to figure out which one's flat...
No vaxen here, just Alphas...
...is that through resources such as Ebay, half.com, your local public library, garage sales and thrift stores, you can still get manuals for such things -- AND CHEAP! I found a PDP-11 technical programming textbook at my local Goodwill for a buck.
The Net is awesome for finding any used or out-of-print books or manuals of any kind - it used to take months to find something unusual, now it can be in your hands in a couple of days. Here are two valuable resources:
http://www.bookfinder.com/
http://used.addall.com/
You can do your own shopping at thrift stores and yard sales, finding the occasional RCA Receiving Tube Manual and such (I've done that a lot and now have about 10k books, including 20 tube manuals) but this is hit-or-miss for something specific. For a few more bucks per book, you can often find exactly what you want at one of the metasearch sites above or (if it has an ISBN number) used on amazon.com.
If you still don't find it, you can subscribe to this list:
http://www.bibliophilegroup.com/ ($30 per year subscription, two week free trial)
and send a WTB: (Want To Buy) post, where hundreds of used book dealers have large portions of their inventories they've yet to enter online, but may have it for you.
Computer manuals before 1970 or so are actually in demand and worth something (maybe $10-$25).
Tag lost or not installed.
But would a software-based emulator accurately reproduce the behavior of the infamous "More Magic" switch?
That's a serious question, by the way. How can it be proven that an emulated system will perform exactly the same way that the original system would?
Consider that even among the most popular emulators, those for videogame consoles and handhelds, you won't find many claimed by their authors to have more than 99% compatbility.
Yes, gaming hardware may possibly be more difficult to emulate than well-documented business hardware due to the number of custom chips that effectively have to be reverse-engineered, but do you want to migrate your mission-critical systems from physical hardware to emulated hardware only to find that they depend on the 1% of functionality that's not accurately emulated?
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.
A big one (not the one that funds them) is they are cool.
Useful sometimes. E.g. PDP-11 on a PCI board with a PDP-11 hardware interface is buyable. It's used, among other places, in the postal system to run hardware that needs a PDP-11. Interestingly, it used to use the PDP-11 on a chip but last I checked used an Intel CPU. XEROX had allegedly bought all the remaining PDP-11 on a chip machines for their use in copiers.
The article was pushing the "where we came from" aspects. I KNOW how hard it is to keep PDP-10 hardware running. It's rather handy in defeating patents to come up with prior art...from, say, 1964. The thing here is it's use it or lose it time. You write an emulator and you understand the machine.
Bootstrap Education. A young person can understand a CP/M machine on a level that just isn't going to happen, say, my iBook G4 and use that understanding to bootstrap up to the next level of complexity.
"The truth is, Slashdot is basically a Gamer site."
Oh come on now, that's not fair. We also talk about pr0n.
Including Edsac. IBM Series 1, PDP-8/E, VAX, CP/M, Sinclair QL, Windows PC, Oric and other obsolete stuff. Lots of fun!
So how many PDP-11's can you run on a Pentium 4 anyhow?
All of them?
Literalism isn't a form of humor, it's you being irritating.
Check out http://emulation.net/ which provides a one-stop resource for emulation on Mac OS and Mac OS X. They list 35 different computer systems for which you can get emulators. Most of them appear to be free.
///, Atari 800, Atari ST, Baby (SSEM), Commodore Amiga, Commodore 64, Commodore VIC-20, CP/M, Edsac, IBM Series/1, Macintosh 68000, Memotech MTX512, MIPS R2000, MO5, MSX, Oric, PC-9801, PDP-8/E, SAM Coupé, Sinclair QL, Sinclair ZX81, Sinclair ZX-Spectrum, TI/99, TO8, TRS-80, TRS-80 Color Computer, VAX, Windows PC, X68000
Acorn Atom, Acorn BBC Micro, Amstrad CPC, Amstrad PCW, Apple I, Apple II, Apple
If you prefer game consoles you have 13 to choose from. ROMs are hard to come by but if you look hard enough you can find them. And there is a huge selection available.
Atari 2600, Atari 5200, Colecovision, Intellivision, Nintendo, Nintendo 64, Odyssey^2, PC-Engine/TurboGrafx-16, Sega Master System, Sega Genesis, Sony Playstation, Super Nintendo, Virtual Boy
If handheld units are more your speed, there are Mac-based emulators for 11 different varieties. I haven't tried any of these, but if MacMAME and the other console emulators are any guide, these should run at full speed and beyond.
Atari Lynx, Dreamcast VMU, Gameboy, Gameboy Advance, HP-48 Calculator, Magic Cap, Neo Geo Pocket, Palm, Sega Game Gear, TI Calculator, Wonderswan
-- thinkyhead software and media