[HN Gopher] A bit of XENIX history
       ___________________________________________________________________
        
       A bit of XENIX history
        
       Author : fanf2
       Score  : 90 points
       Date   : 2021-04-07 15:24 UTC (7 hours ago)
        
 (HTM) web link (seefigure1.com)
 (TXT) w3m dump (seefigure1.com)
        
       | tyingq wrote:
       | UnixWorld Volume 2.10 had a cover story "Bill Gates on the Future
       | of Xenix".
       | 
       | https://archive.org/details/Unix_World_Vol02_10.pdf/mode/1up
       | 
       | Note: There is a button to export it as a pdf.
        
         | msla wrote:
         | Direct link:
         | 
         | https://archive.org/details/Unix_World_Vol02_10.pdf/page/n22...
         | 
         | And downloading a PDF is great, but I've always found the in-
         | page reader pleasant enough.
        
       | m463 wrote:
       | I just remember using xenix, and the trouble we had porting some
       | software to run on it.
       | 
       | We were using SCCS, and when we would check in foo.c it would
       | become s.foo.c
       | 
       | Then trying to build with make, it wouldn't find some file or
       | wouldn't apply a c compile rule and nothing would work.
       | 
       | Turns out xenix had a filename length limitation (I don't recall
       | exactly, but maybe 12 or 15 characters?)
       | 
       | So files like longfilename.c would hit the length limitatation
       | and when checked into sccs would become s.longfilename. and
       | truncate away the filetype. and since it wasn't a c file
       | anymore...
       | 
       | But I do remember it was an operating system that might actually
       | use protected mode and extra memory of the 286 - without EMS or
       | XMS shenanigans that came to the dos world.
       | 
       | A lot of early PC & DOS development was shackled by silly
       | limitations. You couldn't write a program that didn't do all
       | kinds of checks to make sure you didn't use more than 64k because
       | of the real mode segmented memory. Same with filenames, or
       | linking+overlays or any number of things.
       | 
       | We take all that stuff for granted now. I write scripts that read
       | an entire file into memory, do things and write it back out.
       | Those things were a real headache back then.
        
         | zozbot234 wrote:
         | DOS programs could run in protected mode by using a DOS
         | extender. There were also quasi-standard interfaces that
         | enabled programs so written to interoperate with environments
         | that might use protected mode for their own operation and run
         | DOS programs in VM86 mode. This support could also be extended
         | to TSR's (background services) or device drivers.
         | 
         | Of course this was also problematic in that it could make some
         | DOS software incompatible with earlier 8086-based hardware.
        
         | ajross wrote:
         | > Turns out xenix had a filename length limitation (I don't
         | recall exactly, but maybe 12 or 15 characters?)
         | 
         | Fourteen. A Bell Labs Unix directory entry was 16 bytes: a
         | 2-byte inode number followed by the file name. You read the
         | directory by opening it as a file and reading it as an array of
         | these.
         | 
         | It wasn't until 4BSD/SunOS and System V needed multi-filesystem
         | support that this was changed and what became the POSIX struct
         | dirent replaced it.
        
           | anyfoo wrote:
           | I got into Linux just when the ext fs became a thing. Or
           | maybe it was ext2 already, but in any case, there were a lot
           | of remnants of when it used the Minix filesystem, which as I
           | recall was limited to 14 characters as well.
        
           | kazinator wrote:
           | This fourteen could be related to the                 char
           | sa_data[14];
           | 
           | in _struct sockaddr_.
        
             | ajross wrote:
             | Likely, but the causality goes the other way. Sockets
             | arrived in 4.2BSD on Sun and VAX, well after the world's
             | attention had moved away from PDP-11 Unix.
        
         | Taniwha wrote:
         | s.* files were how SCCS worked, the filename limits were also
         | how Unix V7 worked - most people understood this at the time
         | and used small names
        
           | tyingq wrote:
           | I would guess there was a wave of folks that started using
           | the extra room when 4BSD was released, and forgetting their
           | peers on Xenix, Unix V7, etc. I remember some popular
           | software (rrn or trn maybe?) had a file called environment.sh
           | in it that got truncated with SCCS on some unix limited to 14
           | chars.
        
       | noefingway wrote:
       | Brings back some memories. First UNIX I worked on was, IIRC, was
       | System III on a Pixel Machines box. We ported a management tool
       | for Dept of Transporation that had been running on an IBM TSO
       | system. Deployed 5 of these around the country, setup uucp to
       | send data back to home base. Xenix came along a few years later
       | and, if memory serves, it's what we ran on some Altos machines.
       | Fun times.
        
       | lordleft wrote:
       | And now I'm running WSL daily on my Windows Workstation. History
       | rhymes with itself
        
         | rbanffy wrote:
         | Had Microsoft stayed with Xenix, you wouldn't even need WSL.
        
           | phendrenad2 wrote:
           | Assuming Xenix would catch on the way Windows did, that is.
        
           | simonh wrote:
           | It's an interesting alternate universe. Microsoft building a
           | graphical shell and easy to use object oriented development
           | tools on top of Unix underpinnings to compete with the Mac.
        
         | zwieback wrote:
         | And basically for free, all those old OSes were hundreds or
         | thousands of dollars in the 80s! I did projects in OS/2 1.x and
         | Xenix as well as VMS but not on my own nickel.
        
       | vzaliva wrote:
       | I've spent a lot of time porting many Unix tools to Xenix 286 for
       | internal use. It was a paintful process. Assumptions of 32-bit
       | size of integers were common, build tools (make, C compiler)
       | differ in subtle ways from common Unix ones, etc.
        
         | jmclnx wrote:
         | The version if Xenix 286 we had at work came with a cc that was
         | similar to M/S c 5.1. It had the various memory models.
         | 
         | I do not know what your tools were like, but for me it was
         | rather easy except for the usually issues with includes and
         | Libs (assuming I remember correctly) :)
         | 
         | I wish I could have kept a copy for home use when I left the
         | company. I remember it being rather nice
        
       | tyingq wrote:
       | You can play with Xenix on 8086 here:
       | https://www.pcjs.org/software/pcx86/sys/unix/sco/xenix/086/2...
       | 
       | Click in the window and hit <enter> when you see the word "Boot".
        
       | pjmlp wrote:
       | It was my first UNIX experience.
       | 
       | Our OS teacher would bring in a PC tower with it on the days we
       | had lab classes, and then each group would take 15m turns at it.
       | 
       | Why only 15m? We were supposed to have already prepared the
       | exercises in MS-DOS/Turbo C 2.0, using stubs for the respective
       | syscalls.
       | 
       | When ready we would be given a slot to put a floppy in, copy the
       | stuff into HOME, disable the stubs and have a go at it.
       | 
       | Like on the card deck days, either it worked, if not or if a
       | short VI session couldn't fix the issue, it was time to go back
       | into MS-DOS PC and free the computer for the next group.
        
         | lizknope wrote:
         | Did you have multiple MS-DOS machines?
         | 
         | My first programming class was in 1991 on a DEC VAX running
         | VMS. We had a room with 30 VT100 style terminals so everyone at
         | least had their own display and keyboard.
        
           | mrlonglong wrote:
           | Ooh. This sounds a lot like University of Portsmouth (in the
           | UK), as they had 3 DEC VAX minicomputers running VMS
           | supporting quite a lot of terminals across campus during the
           | early 90s. The terminals were VT220 though. VMS Phone was
           | useful for annoying other students.
        
             | lizknope wrote:
             | We had a mix of terminal types from VT100 to VT420 I
             | believe. Yeah, the phone / talk stuff was great. This was
             | in 1991 at my school.
        
           | pjmlp wrote:
           | Yes, it was the modern lab on a technical school for
           | informatics, a mix of 286 and 386 models from Siemens-
           | Nixdorf.
           | 
           | The Xenix PC tower was brought from the teacher's research
           | lab, he was usually on a motorbike, but on labs day we would
           | bring his car with the tower in it.
           | 
           | By the way, we had two labs, the older one was full of 8086
           | and 8088 models, without hard disk, using 8" floppies.
           | 
           | My typing skills exam was done editing a document with edlin.
        
             | lizknope wrote:
             | Did the PCs have ethernet? Our campus network had a lot of
             | DOS PCs but they ran a bunch of DEC Pathworks stuff to turn
             | them into terminals to the VAX. We also had some PCs with a
             | DOS telnet client to telnet directly to the Unix machines.
             | 
             | Just wondering why they didn't turn the DOS machines into
             | terminals or ethernet / network to connect to the Xenix PC
             | tower.
        
               | pjmlp wrote:
               | No way, first we are talking about a high school, not
               | something with university resources.
               | 
               | Then those were the days of Novell NetWare, and yes one
               | of the labs did had a couple of them, not all, connect
               | via Novell.
               | 
               | As for the Xenix tower, as mentioned, it did not belong
               | to the high school, rather the teacher would bring it
               | along with him from his main job, kind of renting it for
               | the lab classes.
               | 
               | So nothing that could ever work in a permanent setting.
        
       | williesleg wrote:
       | I remember dos/merge, I think Microport had a good
       | implementation, let you run DOS crap on Microport Unix, even on a
       | dumb terminal.
        
       | mcculley wrote:
       | I remember sitting in a RadioShack as a kid poking at Xenix on a
       | Model 16 and trying to figure out how to use it. I never made any
       | progress as it took a long time to boot whereas the adjacent
       | Color Computers and most other TRS-80 models booted instantly
       | into BASIC.
        
         | bsharitt wrote:
         | I know the model 16 had a 68k, but it just seems bizarre that a
         | version of Unix ran on a TRS-80.
        
           | hapless wrote:
           | The model 16 was so much bigger and more powerful than the
           | original TRS-80 that it included an entire original TRS-80,
           | whose only job was to operate the keyboard and serial port.
           | 
           | Seriously 100x as much CPU power
        
           | jandrese wrote:
           | It's not so crazy when you consider the specs of the machines
           | Unix was developed on. A PDP-11/20 comes with 24k of memory
           | (16k 18bit words) and 500k of drive space and was shared
           | between an entire department full of people.
           | 
           | The reason Unix exists is because they couldn't afford a
           | machine big enough to run Multics.
        
             | dboreham wrote:
             | An 11/20 didn't give a great Unix experience though. You
             | needed an 11/45 with a 80MB drive to support multiple
             | users.
        
           | leejoramo wrote:
           | The earlier Model II was the first TSR-80 with Xenix.
        
             | housel wrote:
             | No, the Model II had only a 4MHz Z-80. The Model 16 (and
             | later the Model 6000) had a 68k-series coprocessor, and
             | Xenix ran in that (using the Z-80 for I/O).
        
       | spamizbad wrote:
       | Xenix was weirdly one of the first OSes I was ever exposed to. In
       | the early 90s I got my hands on a trash-picked TRS-80 Model 12
       | that was fully upgraded to a Model 16 - along with a 15MB Hard
       | disk that booted Xenix. Its previous owner gave me its root
       | password. Technically, this was my first computer. I checked out
       | "Understanding Unix A Conceptual Guide" from the library to try
       | stuff out and immediately became obsessed with Unix. Sadly it was
       | not long for this world and died from a power surge just 3 months
       | later :(
       | 
       | A few years later when I we finally got a modern family PC I
       | immediately decided to dual-boot Linux.
        
         | coleca wrote:
         | Good memories. My first job at age 14 was working on Xenix
         | boxes (386es) with a bunch of Wyse terminals connected to
         | serial port multiplex cards customizing and configuring
         | medical/dental software for local practitioners. Created my
         | muscle memory for vi on Xenix as well. It was mind-blowing how
         | well it ran on such limited horsepower back in the day.
        
         | chasil wrote:
         | I worked for Deere in several phases of traveling around the
         | country, installing computer systems for dealerships.
         | 
         | Texas Instruments was the supplier, and the first round of TI
         | 1300 series were 386s.
         | 
         | https://techmonitor.ai/techonology/texas_instruments_adds_lo...
         | 
         | This series was upgraded to the TI 1500 class on Motorola 68000
         | nu-bus, running a real UNIX port.
         | 
         | I installed terminals, ran RS232 lines, and did basic admin
         | work (mostly enabling ttys). The app software was mostly
         | written in COBOL, and Ryan McFarland was the compiler at home
         | base; using built-in ISAM (no formal database, AFAIK).
         | 
         | I was putting these into dealerships with dirt floors. It was
         | an interesting time in my youth.
         | 
         | Edit: the "GOSUB STARTGAME" on their intro cover fills me with
         | confidence in their port of the development tools.
        
       | mzs wrote:
       | So XENIX WAS ported to the Victor 9000!
        
         | h2odragon wrote:
         | We were a Victor _dealer_ and couldn 't get a demo copy. They
         | went all in on full PC compatibility anyway, so it din't really
         | matter. I just sold my last Victor keyboard this summer...
        
       | mkovach wrote:
       | When I worked at Radio Shack in the late 90s, the entire POS was
       | running as a main Xenix server and the terminals connecting to
       | it. Backups were done on tape. Updates would come in over night
       | and usually required a reboot at the worst times.
       | 
       | Fun times was one they sent a tape to do major upgrades.
        
         | saul_goodman wrote:
         | Ha, yea good memories... well sort of. I only worked there for
         | a few months but my manager wouldn't let me near the Xenix main
         | terminal in the back as he knew I was a little familiar and
         | didn't want me messing with it. He assured me that Tandy had
         | the tape backup drive custom made for them, lol. Still, he was
         | a nice guy.
         | 
         | I remember discovering that we could generate reports of all
         | clearance items in the store, led me to tracking down stuff I
         | had no idea was hiding in there like ISA slots and various
         | other parts already antiquated by the late 90's.
        
       | justanother wrote:
       | As a 13 year old longhaired wardialer in a not-so-privileged
       | neighborhood in regular contact with a group of same, Xenix was
       | something we commonly encountered. High schools tended to
       | mistrust, rather than encourage computer enthusiasts, and the
       | nearest public library only had a couple elementary books on
       | Unix. I recall feeling like the richest man in the world when a
       | friend got his first job as a night watchman and told me not to
       | ask any questions about where this complete set of Xenix manuals
       | came from. Good ole Xenix on other people's computers became
       | where I honed my shell-scripting abilities at a time when
       | documentation just wasn't so easy to come by.
        
       | trynton wrote:
       | Bill Gates on the future of Xenix :]
       | 
       | https://virtuallyfun.com/wordpress/2020/01/08/bill-gates-on-...
        
       | bombcar wrote:
       | It's interesting how the "common history" of the IBM PC is often
       | "The 8086 came into existence and then later the 386 was
       | released" as if they somehow were only separated by a few years.
        
         | anyfoo wrote:
         | While we are talking about that, I actually have a PC running
         | on an 80186 (rather uncommon, as it has peripherals built in
         | that are not IBM PC compatible), running a XENIX descendant:
         | SINIX.
         | 
         | It's a Siemens PC-D and it was a marvelous machine. Again, not
         | fully compatible with IBM PCs, but often for good reason. The
         | 640k barrier was not a thing on a PC-D for example. And it has
         | its own MMU made of discrete logic chips for real process
         | separation on SINIX!
        
           | bombcar wrote:
           | The HP Palmtop ran a 186 chip - not sure if it used any of
           | the 186 specific instructions.
        
             | rjsw wrote:
             | The extra instructions were mostly fine, the NEC V20/V30
             | implemented them too, the 186 had built-in peripheral
             | functions like timers and the interrupt controller that
             | were different to those in a PC.
             | 
             | You couldn't use the array bound check instruction as it
             | used the interrupt used by the PC BIOS for Print Screen.
        
               | jandrese wrote:
               | That is a hilarious limitation. I can just see someone
               | building a test program to try it out and wondering why
               | his printer is suddenly spitting out screenshots.
        
               | anyfoo wrote:
               | I was going to say "that's now how it works", but
               | actually, thinking about it... I think that's exactly
               | what would happen, heh?
        
           | rbanffy wrote:
           | I've been trying to hunt down one of these machines for
           | years. Does yours have the Collage GUI?
        
             | anyfoo wrote:
             | I have at least two, actually. Hopefully additionally the
             | one that I originally used in the 80s (the other two are
             | much more recent acquisitions) still exists in my parent's
             | basement somewhere.
             | 
             | The machines are all in Europe and I'm currently in the US.
             | Where are you based? I might be willing to part with one of
             | the three machines, but only after I've gotten an extensive
             | look at it (and it will likely be a significant while
             | before that, especially with not being able to travel right
             | now and all).
             | 
             | What's the Collage GUI?
             | 
             | EDIT: The GUIs I'm aware of are Digital Research GEM and
             | Windows, I think up to Windows 2.11 or something.
             | Obviously, that's for DOS. If there was a GUI for SINIX,
             | I'd be extremely interested? I noticed that the SINIX 1.2
             | kernel added graphics support.
        
         | ch_123 wrote:
         | What you are saying is true, but it's also worth keeping in
         | mind that the 8086 was already three years old by the time the
         | first IBM showed up, and the 286 was launched only a few months
         | after the IBM PC.
         | 
         | That was part of the reason why the 286 ended up with the
         | "braindead chip" reputation - it was designed before the IBM PC
         | and DOS showed up, and thus the inability to easily switch
         | between real and protected mode was not seen as a big problem
         | at the time it was designed.
        
           | glhaynes wrote:
           | Oh, wow, I'd never put the timeline together like that. Yes,
           | that makes the 286 make much more sense!
        
           | bombcar wrote:
           | Exactly - the winning OS was MS-DOS and successors and so the
           | 8086 went to the 80386 because nothing "famous" really used
           | the 286 capabilities (Windows 286 aside).
        
             | creeble wrote:
             | And OS/2.
        
             | Narishma wrote:
             | I think what people tend to miss is that it took a very
             | long time for that to happen. It took until the early 90s
             | for the 386 to get cheap enough to start outselling the
             | 286. Even after Intel dropped it, AMD and Harris kept
             | releasing versions that were faster and cheaper than the
             | low-end 386es.
        
               | pjmlp wrote:
               | Yes, my 386SX 20Mhz with hopping 2MB and a 40MB HDD was
               | about 1 500 euros in 1990, when the minimum wage was
               | around 300 euros.
               | 
               | It was bought via credit and if I make the inflation
               | calculation for today's money it would be a big pile of
               | notes.
        
               | anthk wrote:
               | And that would be obsolete by 1994.
        
       | asveikau wrote:
       | I had heard of Xenix over the years, but I hadn't realized they
       | essentially upstreamed to the x86 port of SysV and continued to
       | receive royalties for it, which it says very briefly at the end
       | of this article.
        
         | Taniwha wrote:
         | I think that it was v7, I remember that it was SCO who did the
         | SystemV 286 port (I know this because SCO brought the company
         | in that I worked for when they got stuck working on the MMU,
         | .... and then screwed us over .... long before the whole Linux
         | legal kerfuffle).
         | 
         | I'm also skeptical of the comment at the end about MS getting
         | paid for all x86 Unixes, I'm sure that was true for anything
         | labelled "Xenix" probably not true for 286 and later SysV ports
         | which were done outside of MS
        
         | twoodfin wrote:
         | I wonder if that decades-old agreement had any impact on the
         | process of open-sourcing the SysV-based Solaris.
        
         | mprovost wrote:
         | I remember finding Microsoft copyright statements in some
         | programs on a Solaris 7 box in 2000 (my memory says /bin/true
         | but some googling reveals it was probably /usr/bin/clear). Some
         | of these programs were implemented as shell scripts and had
         | copyrights from SysV, some of which had come from Xenix.
        
       ___________________________________________________________________
       (page generated 2021-04-07 23:01 UTC)