[TUHS] After 50 years, what has the Impact of Unix been?

Marc Donner marc.donner at gmail.com
Wed Dec 4 23:05:45 AEST 2024


I would add one more important impact: making data a first class component
of the computing environment.

With the notion of pipes it became possible to operate on data quickly and
flexibly.  There was nothing new from a fundamental capability point of
view, but the ease with which one could construct pipelines enabled rapid
experimentation and encouraged the development of pipe-able components to
add to the tool set.

I may not have articulated this as well as it deserves.

Marc
=====
nygeek.net
mindthegapdialogs.com/home <https://www.mindthegapdialogs.com/home>


On Wed, Dec 4, 2024 at 3:43 AM <sjenkin at canb.auug.org.au> wrote:

> I was looking at the question of “impact of Unix" and thought that:
>
>         initiating (Portable) Open Source Software including the BSD
> TCP/IP & Berkeley sockets libraries,
>         the Unix -> Minix -> Linux -> Android sequence
>         and BSD -> NeXtstep -> OS/X -> iOS sequence,
>         plus running the Top 500 supercomputers and most of the Top 500
> websites,
>         including the infrastructure for trillion dollars companies,
> Facebook, Amazon (Netflix uses them), and Google
>         plus so many embedded Linux / NetBSD based appliances
>         even going into space - on small experiments or driving SpaceX’s
> Falcon 9 & presumably Starship,
>
> would be a slam-dunk for “really high impact”
>         - dominating everywhere important, except Windows desktops.
>
> Unix wasn’t just a ’research project’, it was the result of years of work
> by a team of very capable, professional programmers,
> who weren’t looking for kudos or recognition, nor trying to add every
> conceivable ‘feature’ possible, but the inverse:
>
>          how _small_ could it be and still be enough.
>
> When it left the Labs, Unix wasn’t just “Performant”, it came with a very
> useful set of tools for creating other tools (‘developing’)
> and while the kernel wasn’t perfect (some ‘panic’s), it was of “Production
> Quality”.
>
> For v6, I believe there were patches for 50-100 bugs circulating, perhaps
> the first demonstration of “no bug is intractable with ‘many eyeballs’”.
>
> All that in under 5 years of ‘development’, with the “initial release”
> stable & performant enough for cash-strapped Universities
> to gamble their reputations & budgets on running it.
> Imagine the grief academics would’ve got if their basic teaching systems
> failed continuously!
>
> This adoption path pushed Unix through another barrier:
>
>          ’Security’ - with a lot of bright, bored & curious students
> banging on it as hard as they could for bragging rights.
>
> How long, in releases or years, did it take for other O/S’s to hit the
> “very stable” benchmark?
>
> I don’t know enough of Linux to answer that definitively, the *BSD’s grew
> there through usage and contribution,
> while Microsoft NT derivates widely suffered “Blue Screen of Death” for
> years.
>
> Even now, MS-Windows has serious Security / compromise issues, like the
> highly visible, global “Crowdstrike” event.
> Not a break-in or takeover, but an own-goal from Security perimeter
> control.
>
> ==========
>
> I now think Unix has had a much larger, direct and important impact
>
>         - the C language and associated tools & libraries
>                  that begat modern toolchains and endless portability
> across platforms.
>
> In 1991, Bill Plauger had a year sabbatical at UNSW in Sydney,
> and happened to say :
>         “C is wallpaper - people expect it everywhere”.
>
> C gained formal recognition with the POSIX standard, satisfying
> conservative users / enterprises that it wasn’t the work of a bunch of
> Hippies or ill-disciplined Hackers.
>
> Even Microsoft wrote 32-bit Windows NT in C, I presume starting by writing
> it’s own compiler and toolchain to start.
>
> Borland, Watcom and many others - including Microsoft - offered (Visual) C
> compile & build environments for Windows,
> directly responsible for creating the ’shrink-wrap’ third party software
> market that drove sales of Windows and x86 machines.
>
> Nobody had seen a market for a billion systems before, nor sold 300M+
> CPU’s in a single year.
>
> People don’t buy Silicon Chips or nice Boxes, they buy Applications that
> solve their problems:
>
>         Software drives Sales of Hardware
>          - something that IBM deeply understood first with first the 1401
> line, then 360-series.
>
>
> The other ’small’ achievement of C and Unix was creating the market for
> RISC chips.
> MIPS in the mid-1980’s was only able to design and build the first
> commercial RISC chip
> because it knew it could port Unix to it and find an immediate market
>         - not at zero-cost, but a tiny fraction of what every other Vendor
> had done before
>                 reinventing the wheel from scratch to provide incompatible
> O/S & tools for their hardware.
>
> Unix on MIPS not only came with a host of proven software, that a large
> pool of people knew how to use,
> but it arrived as “Production Quality” - the porting team had to test
> their parts - compiler, linker, libraries - hard, but could trust the
> existing high-quality codebase.
>
> In "A New Golden Age for Computer Architecture”, 2019 by Hennessy &
> Patterson,
> make an aside:
>
>         In today's post-PC era, x86 shipments have fallen almost 10% per
> year since the peak in 2011,
>         while chips with RISC processors have skyrocketed to 20 billion.
>
>         Today, 99% of 32-bit and 64-bit processors are RISC.
>
> i suggest this goes back to PCC followed by the MIPS R2000 - made possible
> by Dennis’ C language.
>
> The 1977 invention of ‘pcc’ and rewriting of Unix for cross-machine
> portability was the first time I’m aware of this being done.
>  ( Miller @ UoW did a one-off hack, not to devalue his work, he ported,
> didn’t invent a multi-target portable compiler )
>
> One of the effects of “portable C” was creating whole new industries for
> third party software developers
> or enabling niche products, like CISCO routers and the many embedded
> devices.
>
> C and Unix came with the tools to create new languages and new tools.
> AWK, sed (!) and shells are obvious examples, with Perl, Python & PHP very
> big in Internet of 2000.
>
> C was a new class of language - a tool to create tools.
> It creates a perfect mechanism to bootstrap any new language, tool or
> product,
> allowing to be refined & used enough to become reliable before being made
> self-hosting.
>
> Very widely used languages such as Python are written in C.
> ORACLE achieved its market dominance by providing ‘portability’ - exactly
> the same on every platform.
> Underpinned by portable C.
>
> The original 1127 team went on to create other systems and languages,
> not the least being a new Software Engineering tool, “Go” / golang,
> addressing a whole slew of deficiencies in the C/C++ approach and
>
> We’d have no Internet today without Apache written in C and being ported
> to every environment.
>
> Also, there’s a connection between C and ‘modern’ Software Engineering
>   - distributed Repositories, automated builds & regression tests, and the
> many toolchains and tools used.
>
> They tended to be built in C to address problems (Open Source) developers
> were finding with existing toolchains.
> ‘make’ arose at Bell Labs to automate builds, along with PWB and Writers
> Workbench.
>
> There’s two questions / observations about 50 years of C in broad use:
>
>         - Just how much C is out there and used ‘in production’?
>
>         - C is ‘obviously’ a product of the 1970’s, not reflecting needs
> of modern hardware, networks, storage and systems,
>                 but _what_ can replace it?
>
>                 There is simply too much critical code written in C to
> convert it to another ‘better, modern’ language.
>                 Any new language that is a simple 1:1 rewriting of C
> cannot address any of the deficiencies,
>                 while any incompatible language requires redesign and
> reimplementation of everything - an unachievable goal.
>
> The Linux Kernel’s “rust” project shows the extent of the problem
>    - even with the best team of the best developers, its a mammoth
> undertaking, with uncertain payoffs, unquantifiable effort & deadlines.
>
> My thesis is that portable, standard C:
>
>         - not only co-evolved with other tools & needs to create the
> Modern Software Engineering environment, the basis for multiple Trillion
> dollar enterprises (FAANG)
> but
>         - drove the biggest, most profitable software market ever seen
> (Wintel)
>         - which drove sales volume of x86 chips (& DRAM, motherboards,
> LAN, GPU, monitors, peripherals…) over 2-3 decades,
>         - which drove Silicon Valley, paying for new generations of Fabs
> and lowering chip prices further & further
>         - and eventually created the Fabless RISC CPU company,
>                 which in the Post-PC era absolutely dominates chip sales.
>
> No Software, no Silicon…
>
> Gordon Moore, in an early comment on his 1968 startup with Robert Noyce,
> said:
>
>         “we are the real revolutionaries" (vs Hippies & 1967 Summer of
> Love).
>
> I think Ken & Dennis [ and 1127/ Bell Labs folk ] can say the same.
>
> ==========
>
> I’ve written some notes, with links to Programming Languages, especially
> Jean Sammet’s Histories,
> and would like some critiques, suggestions & corrections if people have
> time and interest.
>
> Unix and C are intimately related - neither was possible or useful without
> the other.
>
> i think there’s an interesting article in there, but I’m not sure I have
> what it takes to write it, not in a finite time :)
> Very happy to help anyone who does!
>
> Did-C-lang-create-modern-software-industry.txt
>         <
> https://drive.google.com/file/d/1k936sgqHc-vHBvfCdLoSxFhdT9NaijU2/view?usp=sharing
> >
>
> steve jenkin
> 04 - dec - 2024
>
> ==========
> --
> Steve Jenkin, IT Systems and Design
> 0412 786 915 (+61 412 786 915)
> PO Box 38, Kippax ACT 2615, AUSTRALIA
>
> mailto:sjenkin at canb.auug.org.au http://members.tip.net.au/~sjenkin
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.tuhs.org/pipermail/tuhs/attachments/20241204/fa80aeb5/attachment-0001.htm>


More information about the TUHS mailing list