A dinosaur speaks.
This dinosaur says yay!
VMS Software Inc (VSI), which became the custodian of the venerable OpenVMS in 2014, is getting close to its Holy Grail of running the OS on x86. HP had decided that the operating system it inherited from DEC was end-of-life back in 2013, but in 2014 signed over an exclusive licence to VSI. At that time, the company's CEO …
"Brings back memories of the VMS Phone Utility (PHONE). Fun to pass the day harassing co-workers with that."
It had its other uses too. Back in 1985 I was in Massachusetts on a work trip at the time of the widely advertised (not just in the US) Hurricane Gloria. My employer had a mix of VAX and other kit, and X.25 links to their UK offshoot (with a smilar mix of kit) where my colleagues worked.
Gloria knocked out all the phones in MA and most of the computer rooms. But the VAX/VMS box where I was survived with barely a hiccup. I wanted to get a message back to Blighty to tell family and friends that all was well. The actual phone system was useless, and this is long before wide availability of email (even uucp was barely in use).
So, use VMS Phone from Massachusetts, with an X.25 link to a VAX/VMS box in the UK, to tell them that the damage was a lot less than expected, and I was fine.
I think it might have been 2400baud. Maybe 9600 at best. Those were the days.
x86 lacks the “strict hierarchy of memory access protection expected by VMS”
Actually it does have the necessary stuff. Ever since 286 - in segment mode as originally used by early OS2.
The problem is that nobody uses this mode, everyone just goes for the extremely primitive paging present from 386 onwards. That mode was incomplete to start off with and was never completed properly - it was just hacked on top with some features like big pages added later on.
The paging mode was welcome so you can map virtual to physical memory, or page it to/from disks in 4k increments (later more) instead of whole segments - especially when the segments max size jumped from 64K to 4GB (and now more). IIRC the original plan was pages and segments to be used together - segments to control permissions, pages to control memory usage.
Moreover let's remember x86 allows for four (five in later models) privilege rings, other common CPUs have less.
I don't know enough about the VMS kernel architecture to understand how it fits the x86 architecture, but it is also true that some of the old protected memory powerful features are being removed because actually almost nobody used them.
nobody uses this mode
And as far as I recall, it isn't available in Long (64-bit) mode at all. I don't know what protection rings are used on post-VAX processors, but VMS made use of all four on VAX hardware (most of the file system ran in executive mode and the command shell ran in supervisor mode). Whereas there are four rings on x86, the cost of entering and exiting them is quite high and the shorthand SYSENTER/SYSCALL instructions that were added to solve this only allow calls to Ring 0. There are probably other subtle differences too.
belatedly: does the person who downvoted jreagan have any idea who jreagan might be? Maybe a current vsi employee, maybe a long time vms compiler developer, for example?
or is the downvoter just fat fingered like some of us are sometimes?
The Alpha Architecture Handbook(s) and/or the Architecture Reference Manual(s) are freely downloadable using any decent search engine and will expand on Mr Reagan's statement about number of (apparent) modes being dependent on the PALcode in use.
The layout is somewhat different. On Alpha, the PAL code knows about the OpenVMS PTEs (page table entries) and provides the 4-modes of protection. On x86-64 (in long mode), the PTEs only have 2-modes of protection. We'll emulate the other two in the OS with shuffling around page table entries for super/exec modes.
".....MUD II....." There's a travel agency company down in one of the fancier parts of London that still runs all their business on an old VAX. Much to my delight, the sysadmins also run Moria on it, a game that consumed many hours of my life as a green techie (it seems you were either a Rogue addict or a Moria one in those days!). Now I know the old VMS techies will be breathlessly waiting for VMS clustering on x64 (if you don't know why there will be a legion of dinosaurs ready to post here endlessly as to how good VMS clustering is/was), but I'm looking forward to that ASCII dungeon.
Now I know the old VMS techies will be breathlessly waiting for VMS clustering on x64 (if you don't know why there will be a legion of dinosaurs ready to post here endlessly as to how good VMS clustering is/was), but I'm looking forward to that ASCII dungeon.
Well, we wouldn't need to if someone had come up with better and more reliable clustering. Thing is VAXcluster just works.
Luckily I don't need to look forward to Moria (in its native environment). It's getting bit chilly now anyway so booting up the VAXen just means don't have to turn up heating. Anyway, Moria has been ported to quite a few platforms anyway so you don't really need VMS to run it.
MS still has a lot to learn about clustering.
VMS Clustering came out in 1983. I was at the 'Bubble' in the woods near Marlborough, MA when the Cluster kit was being RFI Tested. I was testing a VAX 11/730 at the time.
The sofware allowed rolling software upgraded. Later releases allowed mixed hardware Architectures to be in the same cluster. Wonderful design and it really worked (after VMS 5.0)
"....Moria......" One of our resident dinosaurs just told me that, when he was applying for a VAX sysadmin job back in the '80s, he was stumped when part of the application form asked "What do you consider your greatest achievements?" Being fresh out of university, he put "I have killed the Balrog", and somehow still got the job! If VAX x64 does take off, maybe I'll have some novelty t-shirts printed to flog on eBay: "If you look at my resume, you will see that I have killed the Balrog."
If you did any programming in the VMS scripting language you would know that it is not JCL. The scripting language used by VMS is DCL. (Digital Control Language)
JCL is an IBM specific scripting language used by IBM mainframe operating systems.
You can find more information on DCL as implemented in OpenVMS here
And yes, it is an extremely powerful language that allows the use of variables to modify code during execution. (Very useful for data types like arrays that are not part of the language)
Under Windows, OS X, Linux, Raspberry Pi and others, using SimH
However, that only works for the VAX version of VMS, which at V7.3 hasn't seen any updates since about 2002. The current version is something like V8.4 (on Alpha and Itanic).
I loved EVE aka EDT/TPU. Especially the learn functionality.
To be able to use an OS that doesn't care about what case you use, and that has consistent command arguments. And using task to task processing and proxies to do stuff on other machines. Sometimes tech in the olden days was better!
All I want is DEC's diff---the one that would not only show insertions and deletions, but also figure out (correctly, so far as I ever found) sections that had moved within the file. I can't tell you how taken aback I was when I moved to Unix, and found it didn't have that facility.
I haven't encountered it in the decades since. Does it exist now somewhere I haven't run into since those halcyon diffing days? The world wonders.
I remember the Good Old Daze, supporting remote (very remote) users who wanted (God only knows why) to run ALL-IN-1 (yes, all caps, and with a '1' not a 'ONE') using VT220s over serial/dial-up lines from a VaxCluster in the head office's basement. (And don't get me started about that basement.) And, even better, supporting top of the line desktop PCs (386s! 33 and even, be still my heart, 40 glorious megahertz! Unbelievable speed!) attached to said VaxCluster using DECNet.
I think that I'll pass, thanks.
I remember the Good Old Daze, supporting remote (very remote) users who wanted (God only knows why) to run ALL-IN-1 (yes, all caps, and with a '1' not a 'ONE') using VT220s over serial/dial-up lines from a VaxCluster in the head office's basement.
Now there is one software package I wish I could forget. Need something stronger than the icon...
It's not such a dumb question. The answer is it really depends whether you what you have now is an ancient VAX from the 80s, or a pile of Itanium blade servers with a few TB of RAM. If the former, you could probably replace it with emulation on a Raspberry Pi, the latter not so much.
The money, such as it is, is with the people who have ported from VAX to Alpha to Itanium and would prefer to move to x64 next, and forget the whole sorry Itanium business. I wish VSI luck - insourcing a product from India, and rehiring the senior engineers that HP laid off to give it some love deserves it.
Will there be applications (what DEC used to call "layered software")? Otherwise it'll be a case of writing nifty DCL scripts, editing text files, purging all the old file versions, and, er, that's it.
I'm guessing that it won't emulate the exotic VAX instruction set, that supported an amazing variety of datatypes, and included features such as polynomial evaluation and vector operations in a single instruction.
Some of the utilities are already available for other operating systems:
EDT & TPU: http://www.sector7.com/vxtools/editors/
The holy grail would be to run pre-compiled applications and translated on the fly without having to recompile them. This would be similar to MacOS when it first came to PowerPC (from 68k) and some VAX code on Alpha (via a translation utility).
I had an application that I compiled on a Vax in the late '80s and ran until 2013, switching from Vax to Alpha and upgraded OS releases, without ever recompiling it. For the last 17 years I ran it, I didn't even have a license to the compiler for the language it was originally written in (Fortran).
There are attributes of VMS that have not been bettered, and I think most of them have been mentioned, plus one or two that are best left safely buried in the past.
No-one has mentioned DATATRIEVE, which I have a soft spot for: it was a really good way of spelunking around data files. I miss it. In some ways, it was the VMS equivalent of Apple's Hypercard: remarkably powerful, but underused and misunderstood.
And the Software Performance Monitor (SPM) which allowed fine-tuning of working sets and walk the fine line between excessive memory use and excessive page-faulting to disk: when you were trying to cram as many users as possible onto the system, it was invaluable. There were other reasons for using it too. And MONITOR and ACCOUNTING.
I feel like putting on my hat and driving gloves and going for a slow cruise down memory lane. Sigh.
[from memory, correction may be required]
DTR> HELP ADVANCED WOMBAT
(this one needs a graphical terminal)
DTR> PLOT WOMBAT
Further reading: https://www.ibphoenix.com/resources/documents/history/doc_295
VMS can legitimately run on a Raspberry Pi under the Simh VAX emulator using the hobbyist VMS licence.
Biting the hand that feeds IT © 1998–2019