From owner-freebsd-chat Sat Oct 11 20:56:21 1997 Return-Path: Received: (from root@localhost) by hub.freebsd.org (8.8.7/8.8.7) id UAA26463 for chat-outgoing; Sat, 11 Oct 1997 20:56:21 -0700 (PDT) (envelope-from owner-freebsd-chat) Received: from axp1.wku.edu (SYSTEM@axp1.wku.edu [161.6.18.1]) by hub.freebsd.org (8.8.7/8.8.7) with ESMTP id UAA26457 for ; Sat, 11 Oct 1997 20:56:19 -0700 (PDT) (envelope-from sfuqua@pulsar.cs.wku.edu) Received: from pulsar.cs.wku.edu (161.6.17.52) by axp1.wku.edu (MX H5.0) with SMTP; Sat, 11 Oct 1997 22:56:15 -0500 Received: by pulsar.cs.wku.edu (SMI-8.6/SMI-SVR4) id WAA09609; Sat, 11 Oct 1997 22:51:11 -0500 From: sfuqua@pulsar.cs.wku.edu (Stephen Fuqua) Message-ID: <199710120351.WAA09609@pulsar.cs.wku.edu> Subject: FreeBSD for Operating Systems Course To: freebsd-chat@freebsd.org Date: Sat, 11 Oct 1997 22:51:10 -0500 (CDT) X-Mailer: ELM [version 2.4 PL25] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-freebsd-chat@freebsd.org X-Loop: FreeBSD.org Precedence: bulk I'm writing a short paper as part of my MS comparing BSD with Linux and Minix for use in an undergraduate operating systems course. The idea would be to compare these systems in terms of using them for a class some C programming and some simple kernel programming exercises like adding a pseudo device or a "do-nothing" system call, and some code reading. At this point I see one big difference between Minix and the other two systems, Minix's source code is tiny compared to BSD or Linux. The author has intentionally kept it simple. Minix also differs in that it is a microkernel. While minix is less intimidating in terms of size, finding ones way around the Linux and BSD source is pretty easy too. Other than size, I've run some different complexity measures on the code in all three systems, and it doesn't look like I'm going to find any significant differences in the amount of comments, length of functions, cyclomatic complexity, etc between the three, despite what one might expect based on their backgrounds. All three are easy to install on supported hardware for people who read directions; Linux(Redhat) and BSD(Freebsd) are have colorful, easy to follow menu based install programs. While people have ported some of software to Minix -- both Linux and BSD come with huge selections of easily installed, ported software. There is no great difference in performance between BSD and Linux. Minix is the only choice for people stuck with 286's, both BSD and Linux run on a huge variety of pc hardware for 386's on up. While it is difficult to find hard numbers -- it appears that clear Linux has the largest user base, BSD is second, and Minix last. Minix comes with an excellent textbook. Linux has a wealth of documentation for beginners, but this documentation is uneven in quality. BSD has the best in depth, advanced documentation, the system manuals from O'Reilly, the _Source Code Secrets_ series, and the _Design and Implementation_ book. Both BSD and Linux are full fledged varieties of Unix, capable of holding their own against commercial versions of Unix. Users who have experience with System V may feel slightly more at home with Linux, while FreeBSD *is* BSD unix. Have I missed anything, or been unfair anywhere? steve fuqua