The Differences Between BSD and System V Unix

big-comp-tree-e1453628300231

the computer tree

There are dozens of sites and resources describing the differences between BSD and System V Unix.

I am tired of reading 11 of them every few years when I want to remember some of those differences. So I made this page.

The main differences

  1. BSD is considered “university Unix”, or hobbyist Unix, because it came out of UC Berkeley in California.

  2. System V was considered more commercial.

  3. Sun OS was based on BSD, but Sun eventually moved to Solaris, which was System V based.

  4. SCO and HP-UX were also based on System V.

  5. One of the main differences was the location of binaries. System V standardized configurations, software installation, and handling network programming, which was in line with its corporate focus.

  6. System V placed its files in /usr/bin/ and /usr/sbin.

  7. BSD placed its files in /bin/ and /sbin/.

  8. Another big difference is in startup scripts: BSD used a script in /etc/rc to initialize itself and didn’t use runlevels. The /etc/rc file is what files were run by init. To avoid having to edit /etc/rc, BSD variants supported a site-specific /etc/rc.local file that runs near the end of the boot process. Later BSD’s, including FreeBSD and beyond, executes scripts out of the /etc/rc.d directory.

  9. System V uses what’s now called SysV (Sis Vee) Style Init. SysV Style Init uses what are called runlevels, and a SysV system is always in exactly one runlevel. These include normal operation, single user mode, shutdown, and others. When you switch from one runlevel to another a series of scripts are run before and after.

Notes

  1. BSD Unix was developed at UC Berkeley.

  2. System V is pronounced “System Five”, and was developed by AT&T.

  3. Over time, the two types have blended significantly, and modern operating systems (such as Linux) tend to have features of both.

  4. There is significant consolidation in the Unix and Linux worlds. Expect to see more of this blending as this happens.

  5. One big difference between BSD and Linux is that Linux is a kernel while BSD is an operating system. That’s the biggest difference between BSD and Linux: Linux is a a collection of little pieces, while BSD is one thing.

Related posts: