7 ms·
The thing is that Unix(of the day)'s source wasn't full of 100s of pages of vax assembly code .... so it was portable - just a page or two of assembly. Also pr
by Taniwha 4y ago
The thing is that Unix(of the day)'s source wasn't full of 100s of pages of vax assembly code .... so it was portable - just a page or two of assembly.
Also prior to that OSs were proprietary - if you didn't work for a hardware manufacturer you mostly didn't get to play with them much. There was no incentive to make them portable - then along came Unix and it was dropped into the hands of a generation of college kids.
Sure VMS had a better VM story (I both ported Unix and was a VMS systems hack at the time) - but you couldn't pick it up and put on anything other than a vax, it was pretty useless as an OS unless you were DEC, Unix didn't have that yoke around its neck (it had others mostly because AT&T didn't understand what it had)
- bsder 4y agoThe VMS filesystem aboslutely shit all over any offering from Unix (and still does with the exception of ZFS). The Vax FORTRAN compiler smoked everything on Unix until IBM put a good FORTRAN compiler on AIX. VMS systems had actual security that we still don't have nowadays. VMS systems could be used for real-time tasks (Intel's fab line ran on VMS for a very long time). I can go on and on ... Unix "won" by becoming the darling of the people not willing to pay money while Windows swept the field of those willing to cough up cash. However, don't mistake the virality of Unix for it being "better" than VMS.
- Taniwha 4y agoUnix is/was a lot of things, it was developing at a much faster rate than VMS - was VMS better than V6/V7 certainly (I ported V6/V7 so that the kernel ran in VMS sup/user mode in place of DCL), better than V.2 (the VM subsystems were vaguely comparable) - file systems better than Linux's (there are so many, probably not in total, and that whole record based thing was just a straightjacket on so much). The thing is you're comparing 1 VMS that didn't evolve much (it did get sort of cloned by MS) with effectively hundreds of Unix descendants. As I said I've worked intimately with both, and I don't think VMS gets as much love as it's due, but in the long run I think it was a dead end largely because it was held close by a (great!) company that died
- emmelaich 4y agoIt may have been better from a sysadmins view, but user wise I loved Unix immediately. Whereas VMS? Meh. I think this same system oriented view (as distinct from user) is what sunk DEC, HP and Sun.
- AnimalMuppet 4y ago"Free" is in fact one of the axes along which "better" can be measured.
- Taniwha 4y agoUnix of the day was not "free" you could get free access at a Uni, but outside of there you had to pay AT&T, who frankly didn't really understand what they had (which is why we now have Linux)
- pjmlp 4y agoCompared with proper commercial OSes that fee at the time was almost symbolic. They were aware of what they had, hence why their first action after being allowed to commercially take advantage of UNIX was to sue BSD.
- kjellsbells 4y agoDont forget the clustering/disaster recovery. VMS' clustering was incredible. The lesson I take from tech of this era is that good enough (and cheap) beats superior over time. Unix over VMS, Ethernet over Token Ring, etc. I posit that Unix's simplicity of that era (you really could hold the entirety of the system in your head back then, and rereading the entire manual set every few months was something considered perfectly feasible and regularly recommended for power users) was the winning formula. It certainly helped that unix was all over academia. 20 years later, when Solaris was the incredibly powerful big dog and linux was the upstart, history repeated itself.
- jonjacky 4y agoThe thing is that Unix(of the day)'s source wasn't full of 100s of pages of vax assembly code ... VMS wasn't all vax assembly either. VMS and a lot of VAX system software was mostly written in BLISS [1], a high level language intended for systems programming that was created about the same time as C. It was all there for customers to read in a big stack of microfiche cards delivered with each machine. I remember being shown the code for the VMS scheduler or maybe the dispatcher which was 'a page or two of (VAX) assembly' - I recall it was pointed out that it was one of the (few) places in VMS that did use assembly. I don't know how portable the BLISS code for VMS was, but there were BLISS compilers for several other machines besides the VAX. 1. https://en.wikipedia.org/wiki/BLISS https://en.wikipedia.org/wiki/BLISS
- Taniwha 4y agoOh I completely agree - but I also remember putting a graphical header on the first page of the output from the print symbiont (aka daemon, essentially CUPS), I had to type in pages of assembler from microfiche
- pjmlp 4y agoAnd it had bounds checking like most sane system programming languages since late 1950's.
- ch_123 4y agoMost of the kernel was in VAX assembly (I've seen source code listings of VAX/VMS circa V4.x). They were able to port the kernel over to other architectures by creating a compiler that treated VAX assembly as a high level language. This approach came with its costs - even to this day, large parts of VMS remain 32-bit only because it was not possible to automatically make 32-bit assembly code into 64-bit object code for other platforms. Even in programs which use 64-bit addressing, VMS essentially requires you to use a mix of 32-bit and 64-bit pointers in the same program.[1] A similar problem (AFAIK) befell BLISS - BLISS code for the VAX treats all values as 32-bit. There is a separate BLISS-64 compiler for the 64-bit platforms VMS was ported to, but I don't think all the BLISS-32 code was converted over to BLISS-64.[2] [1] http://www0.mi.infn.it/~calcolo/OpenVMS/ssb71/6467/6467p005.htm#chapter_10 http://www0.mi.infn.it/~calcolo/OpenVMS/ssb71/6467/6467p005.... [2] https://www.cs.tufts.edu/~nr/cs257/archive/ronald-brender/bliss.pdf https://www.cs.tufts.edu/~nr/cs257/archive/ronald-brender/bl...