Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

I expected this to be about how Unix became so popular (_top_ of popularity charts), not to the top (_CEO_).


Well that was the intended wordplay.

Although it is a shame that for end users Unix is still nowhere near the top of any popularity metric.


How do you define "popularity"? UNIX is found in many devices end users don't think of as being "computers" at all.

The best software is the software users don't even realize is there, because it just works.


Well, the meaningful way for UNIX (and Linux) to succeed as a popular product, according to the aspirations of its proponents, was on the desktop. It wasn't just about the server side back then (late 90s, early 00s) it was all about taking over Windows.

If somebody uses some hardware product (e.g. set top box) and doesn't know its Linux, then it's no big win for the Linux community.

And it's not just necessarily that users don't realize it's there because "it just works", either.

The set top box, for example, can be buggy or crappy but just not provide neither a way to dive in and fix it, nor branding related to Linux.


If somebody uses some hardware product (e.g. set top box) and doesn't know its Linux, then it's no big win for the Linux community.

I have to disagree there. It may not be a marketing win, but that doesn't mean that there are no other benefits. The fact that the PlayStation 4 runs FreeBSD has resulted in a large number of improvements becoming available to us; whether Johnny knows that his games are running on a daemonic operating system is of very little relevance.


>The fact that the PlayStation 4 runs FreeBSD has resulted in a large number of improvements becoming available to us

Is there a writeup of this anywhere? If stuff has been backported/upstreamed/whatever from the PS4 to the freeBSD kernel that would truly be living the dream!


The fact that the PS4 runs FreeBSD has been written about extensively. The contributions they've made, less so... mainly because most of the work they did was before they announced that they were using FreeBSD, and they went to significant lengths to avoid that information leaking out (e.g., shell companies were set up so that code could be contributed without revealing the ultimate source).

Probably the most easily identifiable contributions are in LLVM; Sony is one of the largest contributors to that project, and it's entirely due to the PS4.


They talked a bit about it on their LLVM talks.

http://llvm.org/devmtg/2013-11/#talk8


> daemonic operating system

I've never seen someone refer to it like that before. Awesome.


>the PlayStation 4 runs FreeBSD

wait, what?

Awesome.


The only successful desktop UNIX derivative is MacOS. That ship has sailed.

However the most relevant computing devices for consumers are phones and tablets nowadays, not desktops. UNIX derivatives run almost all of them. Big success, I'd say.

UNIX derivatives are running most servers too and are making inroads into the Windows desktop. The outlook is good unless a new popular market suddenly open with no meaningful *nix presence in it.


Chromebooks are very successful, outselling MacOS desktops in 2016. They run a pretty standard Linux environment.

I don't think anyone thought Linux to take over the office desktop by mass porting office applications but by moving them to the web. That shift is still happening.


Chromebooks provide access to the underlying Linux distribution, after doing a magic incantation that the common user doesn't have any idea about.

For the non geek audience, it is a browser based OS. Google could base it in something else, and none of them would notice it.


>Chromebooks are very successful, outselling MacOS desktops in 2016.

That's still products from multiple vendors (Dell, HP, and Lenovo, Asus?, etc) narrowingly beating sales from a single vendor.

And that (a) in a year when the single vendor had stalled updating their product line, and (b) with the Chromebooks being much cheaper, and more mass market, offerings.

So this speaks more to the slow sales of Chromebooks during the previous years than some major breakthrough.


You're right, according to the the US stats I saw. I probably forgot about them because I never saw one (Italy here) or if I saw them I mistaken them for a Windows laptop. However I think I never heard the word Chromebook in a conversation, either work or friends. We could use a Chromebook everywhere we're connecting to the Internet with our laptops but apparently we're not.


Chromebooks like you mentioned is a Linux environment, a unix like clone. MacOS is a certified unix OS.


It would be a bigger win if the success of Linux on mobile wasn't built on a heaping pile of GPL violations. It's all well and good that my phone runs Linux, but if I don't have Stallman's Four Freedoms on it and the device drivers aren't contributed back, what exactly is the point?

As for desktops, the market share still slowly creeps up. Desktop Linux has definitely graduated from "uber-nerd" to "power user" territory. Plenty of people I know who aren't particularly into Free Software, UNIX etc dual-boot Ubuntu.


> UNIX is found in many devices end users don't think of as being "computers" at all.

No, Linux is.

http://kernelbook.sourceforge.net/pdf/ch-intro.pdf

Some devices run BSD derivatives, but I'd still hesitate to call those Unix vs derived from Unix.


The name UNIX is just not well defined. Saying Linux is a UNIX is perfectly valid imo, but everyone has a different idea of what UNIX means.

That pdf btw has quite a few misconceptions about the history of UNIX.


> The name UNIX is just not well defined. Saying Linux is a UNIX is perfectly valid imo, but everyone has a different idea of what UNIX means.

The trademark UNIX® and its specification is (still) tightly controlled[1] and licensing and compliance was far too expensive for Linus to think about it for his tiny Linux-like OS. (A Linux distribution did recently get certified as UNIX® but that's a recent exception.)

There have been multiple lawsuits between different companies about what could be considered UNIX. The original Linux distribution was basically GNU (GNU is NOT UNIX) utilities wrapped around a deliberately non-UNIX kernel called Linux.

Back when people were trying to explain Linux to UNIX users, it was called "UNIX-like" or a UNIX® clone. Now that Linux has clearly eclipsed UNIX, even now no one really calls Linux, "UNIX" or vice-versa. They are very similar but they are different.

There is also another specification called POSIX. Even Windows NT had a POSIX-compliant layer for a while, and Services for UNIX had some licensed IP, but no one would claim that Windows NT was UNIX.

See also Lisivka's comments [2] further down: Linux is not UNIX.

See also the Single UNIX Specification[3].

1. http://www.opengroup.org/subjectareas/platform/unix

2. https://news.ycombinator.com/item?id=13204551

3. https://en.wikipedia.org/wiki/Single_UNIX_Specification


The SUS is irrelevant to this question, just like POSIX, which you mention yourself. Probably not a single version of UNIX from Bell Labs could be called UNIX by these definitions, which is silly. Of course they are UNIX, more so than any other operating system. So what makes an operating system a UNIX? Decide for yourself! UNIX != UNIX®


Of course they could, after all they are the genesis of such certification, at very least the v1.0 of it.


No. There's no way any Bell Labs UNIX could conform to either POSIX or SUS.


I think Linux is perfectly UNIX in terms of userland and 'spirit', if you will. It's not UNIX officially, but that's because nobody bothered to pay for the licensing, since it's not worth it, not because it couldn't get certified as UNIX if somebody wanted to do it - in fact D. Ritchie himself said:

"I think the Linux phenomenon is quite delightful, because it draws so strongly on the basis that Unix provided. Linux seems to be among the healthiest of the direct Unix derivatives, though there are also the various BSD systems as well as the more official offerings from the workstation and mainframe manufacturers."

K. Thompson is also using Linux. I think that's the ultimate testament to it being 'Unix', unless you want the trademark for marketing purposes, like Apple does.


Ken uses OS X.


He also said he worked on the alpha version of Linux.


As per[1], "According to a 2009 interview, Thompson now uses a Linux-based operating system." He probably uses multiple systems, including macOS in some capacity, am sure, but it looks like he uses/used Linux.

[1] - https://en.wikipedia.org/wiki/Ken_Thompson


I can't find the source right now but Russ Cox posted to some newsgroup or mailing list that most golang developers use OS X these days (rsc, rob and ken for sure).


This is an incredibly unnecessary nitpicking here.


Am I the only one who doesn't really consider that a shame? As a happy Linux desktop user here (considering switching to FreeBSD but switching is intimidating :|), I don't really care that much what other people use.


Unix kernel is hugely popular: think of the millions of Android devices.

Unix userland, not so much, outside the software engineering community.


Linux is not UNIX. GNU/Linux is POSIX (common standard for UNIX'es) compatible, so it is UNIX compatible. Android/Linux is not POSIX compatible, however compatible library can be installed to Android/Linux to make it POSIX compatible, see http://stackoverflow.com/questions/27604455/is-android-posix... .

*BSD, MacOS X, iOS are UNIX'es, see https://en.wikipedia.org/wiki/Darwin_(operating_system) .


Linux distributions are often not POSIX-compatible out of the box either, at user level. Typically some commands are missing due to insufficient shiNIHness, and there may not be a POSIX-compatible shell ('bash --posix' is not, at least as of bash 4.3).


No current open source *BSD is anymore UNIX than Linux is.


I doubt the BSD developers that are part of BSD since the days before the lawsuit will agree with you.


They may not, but there's so little original UNIX code in *BSD these days that it does not matter, in fact that's one of the main reasons they won the lawsuit in the first place.


I just opened my Red Book and reread «Short history of UNIX». Berkley University bought license for AT&T UNIX[1] in 1977. They started to develop their own software for UNIX and distribute it, so this variant of UNIX is called BSD. Then they decide to remove and rewrite original AT&T code, due to license and associated costs, and released 4.3BSD[2], which then used by BSD flavors.

So BSD is UNIX, but it contains no AT&T code today.

[1] http://www.nordier.com/v7x86/index.html [2] https://virtuallyfun.superglobalmegacorp.com/category/4-3-bs...


Yes, my point is that since *BSD does not contain the original UNIX code anymore, it is no more UNIX than Linux is, since it was basically rewritten from scratch.


I understands your point but it's wrong because UNIX is system, not a single component. UNIX was generic name until it trademarked. See books, see complete code: http://minnie.tuhs.org/cgi-bin/utree.pl . As you can see, BSD UNIX still contains lot of code from BSD UNIX.


"Unix kernel is hugely popular: think of the millions of Android devices."

You probably meant Linux, not Unix. Unix is an entire class of operating systems, not a kernel. Nitpicking aside, the huge problem here is that popularity means nothing if the user is not aware of what he/she is using, so I would rephrase that as "the Linux kernel is hugely widespread ...". There is still a big problem though: Android is mostly closed, at least all vital device drivers are, so that you have no chances to build a working non Android environment on newer devices or patch old ones, move an installation from a device to a different one etc. Having a Linux kernel does not help in this context since all benefits the FOSS community infused into the system were stripped away. I would dare to say that telling people that Android contains a Linux kernel is even dangerous to the Linux image.


> he huge problem here is that popularity means nothing if the user is not aware of what he/she is using

I'd say that doesn't matter at all.

The person running Internet Explorer or Microsoft Edge doesn't know they're using a VMS workalike/derivative/successor either.


I don't like this argument, because Android is not developed openly and the kernel itself is a fork which lags behind the mainstream Linux development until Google implements the changes, which users see when they throw away their phone because Samsung/HTC/Xiaomi/Ulefone/Whatever doesn't want to update the phone or Verizon/ATT/Telenor/T-Mobile, etc., doesn't want to push the update because they branded the phone so that means its theirs but not their responsibility.


Android can be run on vanilla kernel with few patches: http://forum.xda-developers.com/nexus-7-2013/general/android... .

Android apps can be run on GNU/Linux without emulation when required libraries and daemons are available (on compatible architecture, of course).


True, but how many devices will allow you to install and use that system without being forced to add blobs?


Very few, if any. Enthusiasts need to reverse engineer binary blobs and write open source drivers, as usual.


Have you ever used the NDK?

Android is all about Java and there is only a very thin subset of native APIs that are available, including POSIX ones.

https://developer.android.com/ndk/guides/stable_apis.html

Starting with Android 7, calling anything outside of that list will terminate the application.

Google could replace the kernel for something else, while keeping those NDK APIs and only OEMs writing drivers would notice.


>Starting with Android 7, calling anything outside of that list will terminate the application. Google could replace the kernel for something else, while keeping those NDK APIs and only OEMs writing drivers would notice

And they're planning on doing precisely that with Fuchsia


Don't iPhones and iPads also have a UNIX kernel?


It's complicated. Original UNIX by AT&T was newer open-sourced. BSD (Berkley Software Distribution) was opensource distribution of user programs for UNIX (like TCP/IP stack, vi editor, etc.), used by original UNIX, with proportions 20% of AT&T code and 80% of BSD code. So technically, BSD is(0.8) not(0.2) UNIX. FreeBSD is branched from BSD code, so it is(0.8) not(0.2) UNIX too.

Apple MacOS X is based on FreeBSD code (and lot of other code), and it certified as UNIX compatible, so MacOS X can be named as UNIX. iOS is based on MacOS X, so iOS is UNIX too.


If you want to get technical about it, the Mac kernel itself isn't a traditional UNIX or BSD kernel; XNU (which, conveniently enough, stands for "X is not UNIX") is a hybrid composed of the Mach microkernel, some FreeBSD components, and Apple's own driver model.

The system as a whole is able to brand itself as UNIX compliant, though, because it complies with the Single UNIX Specification. That spec is concerned about userspace behavior, not kernel or implementation, and you don't have to include any actual UNIX source code to be able to brand your OS as a "UNIX" according to the spec and trademark guidelines.


Yep, XNU is Mach microkernel + FreeBSD kernel. Some features of XNU are even ported back to FreeBSD kernel. IMHO, that is enough to draw direct connection from XNU to original UNIX (without ™), unlike Linux kernel.


Mach microkernel + FreeBSD userland.... not kernel.

BSD is a 'personality' layer.


Original Unix by AT&T was open sourced under BSD terms, but long after Linux and macOS came into being.


He asked about the Kernel. The Kernel is XNU / Mach, modified to act like a monolithic/hybrid kernel. The BSD code in Mac OS X is all user space, much of which probably isn't in iOS at all.


Nope. Part of kernel as well: https://en.wikipedia.org/wiki/XNU#BSD


They do, and a certified one at that.

Android phone's doesn't, as Linux is not technically a UNIX (doesn't derive from the original UNIX codebase in any way.


I don't think iOS is a certified UNIX, is it?


It's not. Apple's only certified for "macOS version 10.12 Sierra on Intel-based Mac computers" (previously that was "Mac OS X Version 10.5 Leopard on Intel-based Macintosh computers", etc)

http://www.opengroup.org/openbrand/register/apple.htm


Can't say for certain, but I think it is.

I don't think iOS is anything else than OS X with a different facade (Cocoa Touch, which for UNIX doesn't matter) and a few additional services. It has all the usual POSIX interfaces (and some of the userland) underneath. So even if it violates some models (e.g. with regards to user accounts), it's still the same codebase, heralding from the BSD years.


Android doesn't run a Unix kernel. Hell, Linux isn't even all that compatible with Unix outside of POSIX.

http://kernelbook.sourceforge.net/pdf/ch-intro.pdf


Unix or Linux? Unix is kinda dead by all metrics.


ya no one uses mac or BSD


Indeed, noone uses BSD.

Is mac considered as a Unix? I think it'd be considered as its own thing by now.


Yes, macOS is (or OS X has) been considered a Unix:

https://unix.stackexchange.com/questions/1489/is-mac-os-x-un...



Pretty sure HN runs on FreeBSD.


Unix and thus Linux!




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: