[HN Gopher] VSI OpenVMS v9.0-G Released (x86 port)
       ___________________________________________________________________
        
       VSI OpenVMS v9.0-G Released (x86 port)
        
       Author : todsacerdoti
       Score  : 33 points
       Date   : 2021-02-17 17:47 UTC (3 hours ago)
        
 (HTM) web link (vmssoftware.com)
 (TXT) w3m dump (vmssoftware.com)
        
       | johnklos wrote:
       | It's funny how they targeted 32 bit x86 instead of just going
       | straight for 64 bit. I wonder what drove that decision.
        
         | icedchai wrote:
         | They didn't. It's x86_64 if you look at the startup screen.
        
         | johnklos wrote:
         | Only half joking - "x86" refers to 32 bit, and:
         | 
         | "Since the stack and static data on x86 is still allocated in
         | 32-bit address space, a 32-bit pointer is sufficient to point
         | to them."
         | 
         | It seems they're still expecting a lot of VAX users to migrate.
        
           | fredoralive wrote:
           | If x86 refers to 32 bit, what family do the 8086/88/186/286
           | belong to? 8080_16? :-)
           | 
           | I do suspect as time goes by x86 is just becoming more
           | synonymous with the 64 bit variant, the 32 bit and 16 bit
           | modes are increasingly irrelevant to anyone except boot ROM
           | authors and retro enthusiasts.
        
         | skissane wrote:
         | What they did is more complex than that - the OS is 64-bit, but
         | a lot of legacy apps use 32-bit pointers. All code runs in long
         | mode, but to support those legacy apps, they put code and
         | static data in first 4GB of the address space. 64-bit-clean
         | applications can allocate data above the 4GB mark. 32-bit
         | applications actually run in 64-bit mode, but they assume the
         | top 32-bits of pointers have a fixed value, which means they
         | can safely stash the pointer into a 4 byte memory area.
         | 
         | The other thing they do, is put code in the full 64-bit address
         | space, but then have the linker generate trampolines in first
         | 32-bits which jump to the actual function location so 32-bit
         | function pointers can be used for code living outside the
         | 32-bit address space.
         | 
         | I believe VMS on Alpha and Itanium did similar things.
         | Applications on VAX assumed 32-bit addresses. Even though Alpha
         | was a 64-bit architecture, to make it easy to port apps from
         | VAX, they had applications mostly use 32-bit pointers (which
         | are really 64-bit pointers with half of their value fixed), if
         | you need more memory, you have to change your application to
         | call some new APIs which return arbitrary 64-bit pointers. And
         | then the same setup was maintained when they ported to Itanium,
         | and now x86-64.
         | 
         | Actually IBM z/OS does something similar. IBM mainframes
         | originally used 24-bit addressing, in the early 1980s they
         | moved to 31-bit addressing (not 32-bit, the MSB was used as a
         | flag bit), then around 2000 they moved to 64-bit. However, even
         | in a 64-bit process, they still have the rule that all code has
         | to be in the first 2GB of memory, to simplify interoperation
         | between 31-bit and 64-bit code. But even though all code
         | pointers must be safely expressible in 31-bits, 64-bit
         | applications can use the full 64-bit address space for data.
        
       | crashdelta wrote:
       | Who's using VMS these days? (not a dig, I'm wondering)
        
         | icedchai wrote:
         | VMS is / was popular in the transaction processing industry:
         | financials, lottery, casino, etc. However, most of the folks I
         | know working in that industry moved on to other platforms over
         | a decade ago.
         | 
         | I have an AlphaStation as part of my retro collection. It has
         | OpenVMS on it, but hasn't been booted in a while.
        
         | 3nf wrote:
         | A university I worked at migrated from independent VMS systems
         | (student, finance, HR) to an ERP system. To make that
         | implementation easier, they only converted the most recent few
         | years of data.
         | 
         | Last I heard they had some sort of virtual machines emulating
         | Alpha hardware still running those legacy systems.
         | 
         | My current employer (also higher ed.) is hosting somebody's
         | ES40. Some people in higher ed. really, really liked VMS and
         | the Alpha/Itanium platforms.
        
       | unixhero wrote:
       | Oooh
        
       | trynumber9 wrote:
       | No download available? I thought it'd be fun to mess around with
       | but maybe it's for paying customers only.
        
         | mepian wrote:
         | There is the community license program, but I don't think it
         | includes the x86 port yet:
         | https://vmssoftware.com/community/community-license/
        
         | SloopJon wrote:
         | The Community License page has checkboxes for Alpha and
         | Itanium. The box for "x86 (planned)" is not yet enabled:
         | 
         | https://vmssoftware.com/community/community-license/
         | 
         | I guess I shouldn't be surprised that this is a VM-only
         | product, but there's something unsatisfying about an O/S that
         | can't boot real hardware.
        
           | spijdar wrote:
           | In this space it's not too unusual, really. It's not
           | altogether unlike modern AIX or IBM i, which effectively only
           | run on virtual machines managed by a hypervisor built into
           | the firmware on PowerVM machines. Maybe less satisfying since
           | it's less integrated with the hardware, but in a sense the
           | paravirtual devices are kind of just another type of
           | firmware/driver layer.
           | 
           | I kind of hope more (new) OSes adopt a similar model.
           | Developing cool new experimental OSes would be easier if real
           | hardware could be "ignored" in favor of just targeting virtio
           | interfaces or something, and IMO that's where the most
           | interesting OS dev is yet to happen. If you're mostly
           | interested in hardware support and raw performance, I think
           | Linux has "done it". But there's a lot left to explore, and
           | maybe it's best to find a way to get Linux to do the heavy
           | lifting.
        
           | skissane wrote:
           | > but there's something unsatisfying about an O/S that can't
           | boot real hardware
           | 
           | According to their roadmap [0] they are aiming to release
           | support for running on HPE DL380 servers bare metal this
           | year, followed by support for some 2 socket Dell servers next
           | year.
           | 
           | [0] https://vmssoftware.com/about/roadmap/
        
       | meepmorp wrote:
       | For those of use still smarting from our VAXectomies.
        
       ___________________________________________________________________
       (page generated 2021-02-17 21:00 UTC)