5 ms·
Apple OS X and iOS are both BSD based as well. There 4 main families of BSD, each with a different focus. All are highly secure and some are portable across m
by CyberFonic 10y ago
Apple OS X and iOS are both BSD based as well.
There 4 main families of BSD, each with a different focus. All are highly secure and some are portable across most CPUs. The Wikipedia articles provide a lot of good information.
I would choose BSD over Linux because it is more compact, far more secure and easier to implement drivers. The tools and utilities for both Linux and BSD are GNU - so only the kernel is different.
- foldr 10y ago>The tools and utilities for both Linux and BSD are GNU There's a fairly substantial BSD userland. E.g. BSD make vs GNU make.
- gaspoweredcat 10y agowell you learn something every day (and it also shows my complete lack of apple knowledge) i always thought apples operating systems were unix based.
- geff82 10y agoBSD can be called a direct descendant of the original Unix, in contrast to Linux. So macOS is Unix.
- tomhoward 10y agoAlso, macOS became officially Unix-certified in 2007 [0], so it can legitimately claim to be a version of Unix. But it's still based on BSD, which is a descendent of the original AT&T Unix. [0] https://arstechnica.com/apple/2007/08/mac-os-x-leopard-receives-unix-03-certification/ https://arstechnica.com/apple/2007/08/mac-os-x-leopard-recei...
- jcadam 10y agoReminds me of the old quote (no idea who the original author is): "BSD is what you get when a bunch of UNIX hackers sit down to try to port a UNIX system to the PC. Linux is what you get when a bunch of PC hackers sit down and try to write a UNIX system for the PC."
- mfukar 10y agoI don't see why - all the design decisions of the original unix are alive and kicking in linux. User and kernel space. Nothing fundamentally separates the two.
- X86BSD 10y agoActually they are not. POSIX? Sure. But Linux is notorious for NIH and is incredibly off in the weeds in incompatible and broken ways from the UNIX world. Have you tried porting software written for Linux to another platform??
- mfukar 10y agoI don't see what point you're trying to make. UNIX does not guarantee portability, so of course software for Linux doesn't work out-of-the-box, or even build for that matter, in other UNIXoids. Linux's NIH syndrome, however unfortunate it is, has not expanded into its unix roots. (yet?)
- Philipp__ 10y agoThey still are! *BSDs are types of UNIX, so is macOS.
- holydude 10y agoIs not osx more of a next kernel with NIX(BSD) userland ?
- villiom 10y agoYes and no. The macOS kernel is a hybrid kernel, containing three major subsystems: * Core IPC is from Carnegie-Mellon's Mach microkernel. * Interprocess communication and virtual file system APIs from BSD. * A custom driver API written in C++ called IOKit. However, the kernel is probably the least interesting part of your computer; what users consider the ‘operating system’ lies in the user land. As long as the kernel works and supports your hardware devices, you needn't care. As an example, both FreeBSD and Windows can pretend to be a Linux kernel and run a nearly complete GNU user land, and multiple quite different user lands exist on top of the Linux kernel, the most prominent being Android and the GNU tools.
- OJFord 10y ago> Windows can pretend to be a Linux kernel and run a nearly complete GNU user land I've recently taken to calling it 'GNU plus Windows'.
- gypsyharlot 10y ago"The tools and utilities for both Linux and BSD are GNU - so only the kernel is different." Absolutely not. Linux is just a kernel whereas the BSDs represent entire operating systems, and different ones at that.
- jagger11 10y ago> All are highly secure and Not really, those systems get much less attention from sec folk than the Linux kernel (apps aside). Finding a priv escalation in the Linux kernel takes time (most of low hanging fruits have been already found by fuzzing or by code review), while finding it in *BSD kernels requires writing a simple syscall fuzzer and running it for a couple of minutes. I've seen it done live.
- mijoharas 10y agoI also was under the impression that the BSD's had a strong focus on security, was I misunderstanding something?
- yeukhon 10y agoI say it depends on from which perspective. If the number of changes going into one of the BDS OS is much less than the Linux's, it is possible there are fewer security vulnerabilities. But if you look at this from the other spectrum, it could mean fewer people are looking at it. Seriously, I don't think there is any fair comparison. Even if you compare the number of CVE, is there an absolute correlation between number of commits and number of security patches released? Perhaps, perhaps not. But many of the tools we are familiar with (e.g. OpenSSH itself being the classic one) did come from OpenBSD after forking from the original implementation, and perhaps is quite strong from the code quality. I never study the code, but from what I hear people generally praise the code quality as well as the attention to the overall architecture of OpenSSH. Someone from OS security should chime in. [1]: https://www.openssh.com/security.html https://www.openssh.com/security.html
- delinka 10y agoI suspect you're thinking about OpenBSD, upon which none of the other BSDs are based.
- evgen 10y agoOpenBSD is more secure than Linux will ever be, FreeBSD is more secure than Linux current is now; while Linux has more eyeballs looking at it there is also a significantly larger amount of kernel bloat in which weird bugs and future priv escalations can hide. What is probably less secure on the *BSD side is userspace, where there is less attention paid to security review and automated fuzzing than there is in many Linux distributions.
- X86BSD 10y agoFreeBSD took great pains to rewrite and replace all of the GNU utilities with BSD licensed ones. So the tools are different.
- tyingq 10y agoI wouldn't say they rewrote the GNU utilities. BSD's lineage goes back farther than GNU's, they were at least at BSD4.1 before Stallman started GNU. There was an established userland. I imagine there's some GNU utility that was sort of "clean roomed" into *BSD, but that would be the exception, not the rule.
- X86BSD 10y agoI would, GNU tar and others were rewritten from scratch over the last decade or so. The GNU utilities are no longer in the base system.
- tyingq 10y agoWhat percentage of the userland would you say was using a GNU implementation 10 years ago?
- X86BSD 10y agoBefore the rewrite all the GNU utilities were in the base OS. How large a percentage that was to the rest of the base I couldn't say off the top of my head. But all the GNU utilities were in there as well as the compiler suite which has also been removed and replaced with Clang/LLVM.
- quitspamming 10y agoaccording to FreeBSD's own site, their GPLinBase tracker, you're incorrect. Only a handful of GNU or GPL stuff was ever in base, and your example of 'tar' isn't one of them. https://wiki.freebsd.org/GPLinBase https://wiki.freebsd.org/GPLinBase
- swills 10y ago> The tools and utilities for both Linux and BSD are GNU - so only the kernel is different. All the BSDs have their own libc, so that is a big difference. There's more to a complete system than kernel and build tools. But as far as tools, FreeBSD is nearing completion of removal of GPL licensed software from the base system, see: https://wiki.freebsd.org/GPLinBase https://wiki.freebsd.org/GPLinBase Most things use clang now, and even in ports, only a relatively small number of things which require gcc still use it. Also lld, the llvm linker, is making great progress towards replacing gnu ld. And OpenBSD has imported LLVM, see: https://marc.info/?l=openbsd-cvs&m=147294297501630&w=2 https://marc.info/?l=openbsd-cvs&m=147294297501630&w=2