4 ms·
The divisiveness of the Unix Wars was incredibly prevalent during the 1980s and 1990s. One of my favourite examples of this is a quote from Cliff Stoll's book
by jasoneckert 6y ago
The divisiveness of the Unix Wars was incredibly prevalent during the 1980s and 1990s.
One of my favourite examples of this is a quote from Cliff Stoll's book "The Cuckoo’s Egg" from 1989. When Cliff’s colleague Dave notices that the hacker used the –f option to the ps command on a Berkeley UNIX system (Berkeley UNIX doesn’t use the –f option, only AT&T UNIX does), he said “We’re watching someone who’s never used Berkeley Unix.” He sucked in his breath and whispered, “A heathen.”
- codetrotter 6y agoReminds me of a few years ago when I was admining some Solaris 10 servers at a company. Prior to that I had only ever used Linux and FreeBSD. It was interesting to me, even though I was already used to there being differences between Linux and FreeBSD, to interact with something that felt like an even more remote evolutionary branch of a species of creatures. (Though at the same time, things like ZFS and DTrace come from Solaris, so it's not like it is actually all that remote to FreeBSD. Likewise, Solaris Zones are kinda like Jails in FreeBSD.) I came to think of this because of what you wrote. Prior to using Solaris 10 I had always used to write "ps wwwaux" always, both on Linux and FreeBSD. But on Solaris 10, in order to get roughly the same info, I had to instead type "ps -ef".
- pjmlp 6y agoHence why when most talk about how POSIX and C are so portable across UNIX platforms, they really don't have any idea what they are talking about. I have coded for Xenix, DG/UX, HP-UX, Aix, Solaris, FreeBSD, Linux (starting with kernel 1.0.9 in Slackware 2.0), using the platform compilers of each respective OS. To put it to modern audience, it is like doing a beautiful web app and then fixing it for every browser in existence.
- mncharity 6y agoI still sometimes get a thrill of joy, when I pip or npm install something and it just works. Instead of long ago ftp'ing a tar file and spending an hour or day or punt, porting it from their * nix to mine. And sometimes laugh when HN'ers complain of (admittedly poorly infrastructured) excessive dependencies. Reusable code... living the dream.
- simonh 6y agoMy first Unix was Solaris 4.1, but we soon upgraded to Solaris 2.0. My first open source software came on a 1/4" tape I bought by mail order. It included gcc so i had to compile that first with the Sun C version, then use it to compile the rest of the software. Of course Solaris 2.0 unbundled the compiler but I cant remember how I got round that. Must have got a binary of GCC from somewhere. Fun times.
- intsunny 6y agoReading this reminds of learning that some *nix systems placed binaries inside `/etc/`. In fact, the linux kernel at boot looks for `/etc/init` [0], which is wild to me. It made me really appreciate the FHS's standardization of linux directories and files. [0] https://github.com/torvalds/linux/blob/master/init/main.c#L1454 https://github.com/torvalds/linux/blob/master/init/main.c#L1...
- deleted 6y ago[deleted]
- jclulow 6y agoOther UNIX platforms have had and followed file system hierarchy standards before FHS. The challenge with things like binaries in /etc is usually one of backwards compatibility -- decisions made from expediency or just technological limitations (like where to put things on 5MB hard disks, say) cast a long shadow.
- mprovost 6y agoI used to always use /usr/ucb/ps on Solaris systems, where they hid all the old BSD commands from SunOS. It looks like they finally dropped that with Solaris 11!
- dhosek 6y agoI used to maintain the TeX Users Group's database of DVI drivers. The plethora of Unix variants was a continual nightmare in being able to keep track of what you could print to from where.
- JdeBP 6y agoIronically, BSD ps switched over to getopt() a mere year later, in 1990. FreeBSD ps then gained an -f option in 1997, but it doesn't mean "full". (-: * https://svnweb.freebsd.org/csrg?view=revision&revision=40675 https://svnweb.freebsd.org/csrg?view=revision&revision=40675 * https://svnweb.freebsd.org/base?view=revision&revision=31552 https://svnweb.freebsd.org/base?view=revision&revision=31552