# Does openindiana, sco-unix, unixware has features freebsd does not have.



## Alain De Vos (Oct 15, 2022)

How to compare these operating systems when it comes to functionality for the end-user ?


----------



## Cthulhux (Oct 15, 2022)

SCO and UnixWare are quite outdated. OpenIndiana is a quite modern SysV UNIX with a quite intriguing init system (SMF) that borrowed a lot from FreeBSD now.


----------



## _martin (Oct 15, 2022)

OI (OpenIndiana) is a fork of OpenSolaris when Oracle decided to shoot it dead. I used it in my LAB as storage servers and I still don't know better system with SCSI stack than Solaris.


----------



## Alain De Vos (Oct 15, 2022)

In a former job, that is 20 years ago, i worked with sco-unix. In that time it was very good O.S. to work with.


----------



## cy@ (Oct 15, 2022)

Cthulhux said:


> SCO and UnixWare are quite outdated. OpenIndiana is a quite modern SysV UNIX with a quite intriguing init system (SMF) that borrowed a lot from FreeBSD now.


SMF borrowed nothing from FreeBSD. SMF was there in Solaris 9 (before Oracle purchased Sun Microsystems). That was long before FreeBSD had rcNG. I was at the dog & pony at one of the local hotels here when Bryan Cantrill came to town to announce SMF, DTrace and ZFS.

FreeBSD's rcNG wasn't a FreeBSD development either. It was imported from NetBSD and improved.

BTW, IMO the Solaris SMF was the correct way to solve the problem. The Linux way, systemd, is horrible compared to the simplicity of SMF. Having worked with SunOS and Solaris in the old days SMF was certainly an improvement. It did not replace init(8) but added some code to init to work closely with its SMF child process. One could still disable SMF and use SYSV init files as the capability was still in init. Whereas systemd not only changed the paradigm but it endeavours to also replace logging and home directory services. It is certainly not in the spirit of the UNIX philosopshy while SMF tries to adhere to the UNIX philosophy.

The Illumos source was forked from OpenSolaris shortly after Oracle purchased Sun Microsystems, closing the OpenSolaris source code. A number of different downstream projects repackaged Illumos for various reasons, such as file server, desktop, and the like. OpenIndiana is desktop packaging of the Illumos source which can be found at  illumos-gate.


----------



## Cthulhux (Oct 15, 2022)

cy@ said:


> SMF borrowed nothing from FreeBSD.



What I meant was that OpenIndiana (illumos) did though. Increasingly more FreeBSD stuff is found in illumos distributions.

And yes, I like SMF a lot.


----------



## Alain De Vos (Oct 15, 2022)

If I'm correct just another init-system. No big deal ?


----------



## cy@ (Oct 15, 2022)

Cthulhux said:


> What I meant was that OpenIndiana (illumos) did though. Increasingly more FreeBSD stuff is found in illumos distributions.
> 
> And yes, I like SMF a lot.


A number of minor FreeBSD features have been imported into Illumos and one major feature, bhyve.

Illumos has expressed interest in me importing ipfilter 5.1.2 with all my fixes and enhancements into their codebase replacing their ipfilter 4.1.8. They wanted their addition to allow ipfilter which allowed it to work with their zones to be included. I recently (this year) added this support to ipfilter for VNET jails (while disallowing non-VNET jails to manipulate the global ruleset). I believe this is what they do. Their zones are akin to our VNET jails. It's probably time to check in with them again.

I was planning on importing SMF into FreeBSD but CDDL is not as open as BSDL. It's easy enough to exclude ZFS and DTrace, both of which are CDDL, from FreeBSD but you cannot do without an init. And maintaining two init systems is a pointless duplication of work.

BTW, it was FreeBSD jails that caused Sun to consider the concept of zones. Though they didn't import FreeBSD jails the concept of jails was what got them thinking about zones in the first place.


----------



## robroy (Oct 15, 2022)

SCO OpenServer has a versioning filesystem (HTFS), though it's an antique today (as Cthulhux pointed out).  Its kernel fit on a single 1.44 MB floppy, and a working root filesystem on another.


----------



## Cthulhux (Oct 16, 2022)

cy@ said:


> CDDL is not as open as BSDL.



[citation needed], as “the BSDL” has the same requirements as the CDDL, minus an optional patent clause which would not apply to FreeBSD anyway.


----------



## Alain De Vos (Oct 16, 2022)

Raises question , how do freebsd jails & solaris zones compare ?


----------



## hruodr (Oct 16, 2022)

cy@ said:


> BTW, IMO the Solaris SMF was the correct way to solve the problem.


The problem?


----------



## Cthulhux (Oct 16, 2022)

Alain De Vos said:


> Raises question , how do freebsd jails & solaris zones compare ?











						jails and zones
					

Hi all, I'm quite new to FreeBSD and I'd like to know what are advantages/drawbacks and other important differences (if any) between jails and solaris zones. If I get it right, jails cannot be branded (i.e. they are running always a freebsd installation) while zones can run other kernels, is it...




					forums.freebsd.org


----------



## cy@ (Oct 16, 2022)

hruodr said:


> The problem?


Slow boot. Personally, I didn't think it was a problem but others in the industry did.

The problem for Sun and other mainstream UNIX vendors was that Linux was nipping at their heels. They were worried and rightfully so. Look at where they (Sun Solaris, Tru64, DG-UX, HP/UX, Irix...) are and where Linux is.

This probably got Pottering thinking of laptop boot performance which systemd is supposed to address. However systemd IMO is probably not the best solution in an enterprise environment. systemd-homed illustrates that in spades.


----------



## cy@ (Oct 16, 2022)

Cthulhux said:


> [citation needed], as “the BSDL” has the same requirements as the CDDL, minus an optional patent clause which would not apply to FreeBSD anyway.


Read the license. This is why cddl sources are not merged directly into src/. Just in case some entity may wish to distribute FreeBSD sans bits and pieces they're not comfortable with.


----------



## Alain De Vos (Oct 16, 2022)

Even though systemd is technically not the best solution, a lot of,many,linux distro's have systemd as default.
Some big players like redhat are pushing it.
About alternative init systems and boot times. I use gentoo-linux with openrc and it has a short boot-time. I use void-linux with runit and it has also a short boot-time.
Normally you can make "flame-sharts" for freebsd booting. But i never managed to get it working.


			BootTime - FreeBSD Wiki


----------



## Cthulhux (Oct 16, 2022)

cy@ said:


> Read the license.



I did, that's why I ask.


----------



## mer (Oct 16, 2022)

Alain De Vos said:


> Even though systemd is technically not the best solution, a lot of,many,linux distro's have systemd as default.
> Some big players like redhat are pushing it.


"Just because everyone is doing it doesn't mean it's the right thing" 

OpenSolaris is the original place that had ZFS, I don't know if Illumos/OpenSolaris/OpenIndiana are moving towards OpenZFS, but if not, that could be considered a huge difference.

Solaris kernel was fully (or almost fully) preemptible a long time ago.

Basic system management is different, not better, not worse, just different.

At the application level, just about all the current *nixes seem to be able to build the same set of applications, so not much difference in firefox on FreeBSD/NetBSD/OpenBSD/DragonFlyBSD/Linux/OpenIndiana.  

Has someone like Phoronix done a benchmarking of IllumOS/OpenSolaris vs *BSD/Linux?


----------



## sidetone (Oct 16, 2022)

Cthulhux said:


> [citation needed], as “the BSDL” has the same requirements as the CDDL, minus an optional patent clause which would not apply to FreeBSD anyway.





cy@ said:


> This is why cddl sources are not merged directly into src/. Just in case some entity may wish to distribute FreeBSD sans bits and pieces they're not comfortable with.


So CDDL may be perfect for use with other permissive and weak-copyleft licenses which have patent clauses, like Apache and MPL. That's a compatible opensource ecosystem right there, in addition to with permissive licenses without patent clauses.

Edit: IIRC, CDDL was a variant or was similar to MPL 1.0 or 1.1. There's also opensource Apple and Microsoft licenses which were similar to these.


----------



## hruodr (Oct 16, 2022)

cy@ said:


> Slow boot. Personally, I didn't think it was a problem but others in the industry did.


(1) The device probing takes most time when booting, this will not be changed with new init/rc.
(2) It does not boot slow, it is hence not "slow boot".
(2) I never heard industry complain, but desktop freaks, the ones that continuously bring the theme desktop ad nauseam here.


----------



## cy@ (Oct 16, 2022)

hruodr said:


> (1) The device probing takes most time when booting, this will not be changed with new init/rc.
> (2) It does not boot slow, it is hence not "slow boot".
> (2) I never heard industry complain, but desktop freaks, the ones that continuously bring the theme desktop ad nauseam here.


I never complained, neither did any other Solaris or any other UNIX admin complain. But there was Linux. There was always comparison between Windows and Linux boot times. I wouldn't be surprised if someone told me their marketing droids told their software developers that something needed to be done.

Considering the money angle almost always seems to offer some kind of explanation.


----------



## Alain De Vos (Oct 16, 2022)

Some make money by selling "systemd-services". Because,well it's complicated.


----------



## _martin (Oct 16, 2022)

hruodr said:


> I never heard industry complain


As it was said above most of the time boot delays are in fw, mostly on memory checks. So OS independent. Some of our fully loaded HANA boxes take up to 25mins to get to the grub so you can load the OS. Imagine troubleshooting multipath issues when you don't know what's wrong. Every time you changed something and wanted to test it you lose 30+mins. Doing that even on 8hr downtime is a big pain.
While I wouldn't call it complain but many swear a lot and don't care if the time is lost in fw or the actual OS boot.


----------



## Alain De Vos (Oct 16, 2022)

Probing for USB devices is however faster in Linux then FreeBSD.
I don't mind FreeBSD booting times a few seconds more than Gentoo-Linux(openrc).
Some time is lost in starting services. Offcourse if you disable that service booting time is faster.
All in all, the stability of the O.S. & Kernel is primordial.


----------



## mer (Oct 16, 2022)

Boot times.  If a server, with redundancy, average uptimes in 100's of days, boot time is pretty much irrelevant.  If failed over, a reboot time can play into the "5 9s" statistics.
Home users?  I'd posit it's not "boot time" but "resume from suspend/hibernate".  Laptops:  one uses them, shuts the lid, drives somewhere, opens the lid.  How quickly after opening the lid can I use the system becomes important.

But my experience, based on my usage patterns, is that "correct booting 100% of the time" trumps "how fast do I boot" every single time.


----------



## Alain De Vos (Oct 16, 2022)

Resolving issues with FreeBSD-RC is rather simple compared to Systemd-bloat.


----------



## Cthulhux (Oct 16, 2022)

Alain De Vos said:


> Probing for USB devices is however faster in Linux then FreeBSD.



How many years did that cost you so far? 
Because if it's only seconds, this is probably entirely irrelevant.


----------



## cy@ (Oct 16, 2022)

Alain De Vos said:


> Some make money by selling "systemd-services". Because,well it's complicated.


I still complain about systemd at $JOB and have been told learn to like it.

The real problem with systemd is it's opaque. There are something like 40 or more daemons associated with it. Certainly something this complex is not only difficult for people to use but difficult for its developers to maintain. We all know the saying, complexity is the enemy of security.


----------



## mer (Oct 16, 2022)

cy@ said:


> The real problem with systemd is it's opaque.


I had an issue one time related to USB stick mounting and having an entry in fstab.  System stopped booting, some stupid windows-like error code number on the console that had to go to another system and google grep "wtf does this mean" to find out "use this tool to look at binary logs and find out" "oh, usb, fstab entry"

Learn to like it?  heck no.  Learn to get by? Ok if you pay me enough


----------



## Beastie7 (Oct 17, 2022)

cy@ said:


> BTW, IMO the Solaris SMF was the correct way to solve the problem



Agreed. FreeBSD desperately needs SMF. Even for embedded devices, it's a godsend.


----------



## hruodr (Oct 17, 2022)

cy@ said:


> I never complained, neither did any other Solaris or any other UNIX admin complain.



But you wrote:



cy@ said:


> BTW, IMO the Solaris SMF was the correct way to solve the problem.



You are speaking about solving a Problem that is not a Problem. And why to form FreeBSD as the ones that
complain and should use Linux, because that is their reference point? Desktop freaks should use Linux,
Ubuntu, not FreeBSD.

I installed once Illumos, and got crazy with SMF. Also with the rc system of Linux. And also the one of FreeBSD
is too complicated for my taste. At best is the one of OpenBSD.

I think SMF is for people managing a lot of computers. For people with one or two servers, for people
using it as desktop, for embedded devices is not an advantage, it makes him life unnecessarily complicated.


----------



## hardworkingnewbie (Oct 17, 2022)

Alain De Vos said:


> Even though systemd is technically not the best solution, a lot of,many,linux distro's have systemd as default.
> Some big players like redhat are pushing it


This is no wonder, because Redhat was Poettering's employer when he gifted cursed the Linux world with systemd.

I mean with commercial driven unices it's a common topic that all have replaced SYSV Init. Ubuntu had upstart, Apple has launchd, Solaris SMF. All are trying to solve more or less the same problem(s).


----------



## cy@ (Oct 18, 2022)

hruodr said:


> But you wrote:
> 
> 
> 
> ...


Don't twist my words.

1. "problem" as in the "problem" desktop types were talking about at the time. Again, I and my team never complained but there were a lot of amateurs on the various mailing lists playing with Linux who complained... And then the marketing types who defined "problem" got involved. I've been to a lot of meetings hosted by computer vendors discussing the "problem."

2. "Installed once Illumos." --  During my 45+ year career of which I've spent about 25 of that on Solaris and other UNIX variants such as Linux and FreeBSD, professionally. I've installed many operating systems from IBM mainframe operating systems to various UNIX variants. Not just once but hundreds of times.

3. "I think SMF is for people managing a lot of computers."  -- I currently manage about 1000 servers in two separate datacenters in two cities. Does that qualify as managing a lot of computers?


----------



## cy@ (Oct 18, 2022)

hardworkingnewbie said:


> This is no wonder, because Redhat was Poettering's employer when he gifted cursed the Linux world with systemd.
> 
> I mean with commercial driven unices it's a common topic that all have replaced SYSV Init. Ubuntu had upstart, Apple has launchd, Solaris SMF. All are trying to solve more or less the same problem(s).


Pottering now works for M$.









						Lennart Poettering, the Systemd Creator, Goes to Work at Microsoft
					

Lennart Poettering, the creator of crucial Linux components such as systemd and PulseAudio, has left Red Hat to pursue careers at Microsoft.




					linuxiac.com


----------



## Beastie7 (Oct 19, 2022)

Imagine UCL formatted SMF manifests. I believe Zones uses SMF natively too. That would effectively kill the need for all this configuration management goo in the ports tree _(yes, that includes you too, docker)_, and streamline service scripting in base.


----------



## cy@ (Oct 19, 2022)

Beastie7 said:


> Imagine UCL formatted SMF manifests. I believe Zones uses SMF natively too. That would effectively kill the need for all this configuration management goo in the ports tree _(yes, that includes you too, docker)_, and streamline service scripting in base.


Like jails, Zones are a kernel isolation and partitioning technology. The term Solaris Containers are the userland definitions that structure zones in userland in order to present the Solaris "jail" (zone) to the end-user. Think of zones as a kernel thing and containers the environment.

FreeBSD VNET jails are the FreeBSD equivalent to Zones. While Solaris Zones are created and managed using Container definitions, FreeBSD jails are managed through the jail(2) system call. The jail(8) command uses the jail(2) system call to create, manage, and destroy jails just as Solaris Containers manage Zones. One could, for example write one's own replacement for jail(8) command which might for example using a GUI or ncurses interface, calling the jail(2) system call directly.

Solaris Containers and Zones have a similar relationship.

If one is keen to learn about Solaris Zones the book Solaris Internals by Ricard McDougall and Jim Mauro is a good read. (Which BTW you will learn that the SLAB allocator in Solaris predated the Linux innovation.) Of course even the Solaris SLAB allocator isn't that revolutionary because the IBM MVS (mainframe) subpools (memory management) is pretty much the same concept. Generally you want to keep similarly sized kernel memory allocations near each other to reduce memory fragmentation. But this is off topic now.


----------



## Alain De Vos (Oct 19, 2022)

Doesn't /etc/rc.d/* does the same thing as SMF manifests ? Just with sh-scripting & without XML-formating.


----------



## Alain De Vos (Oct 19, 2022)

If I freewheel.
In FreeBSD you could put some configs out of the /etc/rc.d scripts and put it in a JSON/YAML file.
To simulate SMF ?


----------



## Alain De Vos (Oct 19, 2022)

fyi,








						Practical rc.d scripting in BSD
					

A guide to writing new rc.d scripts and understanding those already written




					docs.freebsd.org


----------



## cy@ (Oct 19, 2022)

Alain De Vos said:


> Doesn't /etc/rc.d/* does the same thing as SMF manifests ? Just with sh-scripting & without XML-formating.


It's more like SYSV rc on steroids.  Rather than the order be determined by Snn* and Knn*, the order is determined by metadata in each script itself. It's sorta like both.

SMF and systemd support parallel start/stop of services. Our rcorder(1) also supports  the -p flag but our /etc/rc does not support parallel start/stop, though I'm working on a patch to implement parallel start/stop of services. The patch hasn't been tested because I have a lot of other things on my plate that take precedence.


----------



## hardworkingnewbie (Oct 19, 2022)

cy@ said:


> Pottering now works for M$.
> 
> 
> 
> ...


I know, when this became known I wrote an own thread about it here.  So yes, Poettering and Microsoft deserve each other, because Poettering has this precious Microsoft mind set since he started his programming career. And finally he can use it to improve WSL!


----------



## Beastie7 (Oct 20, 2022)

cy@ said:


> FreeBSD VNET jails are the FreeBSD equivalent to Zones. While Solaris Zones are created and managed using Container definitions, FreeBSD jails are managed through the jail(2) system call. The jail(8) command uses the jail(2) system call to create, manage, and destroy jails just as Solaris Containers manage Zones. One could, for example write one's own replacement for jail(8) command which might for example using a GUI or ncurses interface, calling the jail(2) system call directly.



Didn't SUN get rid of the whole Solaris Containers nomenclature when they finished Zones? I believe zoneadmd() is what provides the native management layer in conjunction with svc.startd(), and svc.configd() (_and subsequently the configuration repository_) for Zones (_from SMF_). Writing something like that for jails would be fun challenge, although it'd probably require deep kernel level changes. Not sure if vendors would adopt such a drastic (but good) change to base.


----------



## cy@ (Oct 20, 2022)

Beastie7,

No. Containers is the term Oracle still uses. Containers is a term, not a technology. Zones are the technology. Containers is the term used for the wrapping put around zones for users.  (I work at a shop that manages 1000 Linux servers, 200 [was over 600] Solaris servers, < 100 AIX, over 8000 Windows servers, 6 VMware clusters, and thousands of cloud instances. I was Solaris Team Lead for 15 years. We still use the term containers.)

Also, what do you mean by "finished Zones?"

We already have something like that with jail.conf. Though, anything can issue the jail(2) system call. Writing a different interface would be technically easy. It's deciding what that command line interface curses interface would look like. Personally, I think this should be a Web interface. One could have a Vsphere-like interface, instead of managing VMs, managing jails. Or managing bhyve VMs and jails through a single interface. Certainly not part of FreeBSD but an add-on (port/pkg).


----------



## Beastie7 (Oct 23, 2022)

cy@ said:


> Also, what do you mean by "finished Zones?"



Everything you see in the lower parts of this diagram was developed in tandem with SMF, Dtrace, ZFS, etc; hence the "finished Zones" part. I was under the impression Solaris "Containers" was old nomenclature due to them (SUN) making the "Jails" idea (aka. "containers") more functional for the datacenter; thus Zones, or Jails++ if you will.   The Zones text interface is so well laid out, I don't think a web GUI is needed. IMO


----------

