Previous Home Next

3.1 About the operating systems

A general overview of the operating systems that have been covered in this guide has been provided here. Readers must note that these are my personal views (and comments) and have nothing to do with the views of the Linux/FreeBSD/OpenBSD/NetBSD or in general terms, the Open-Source community.

3.1.1 Microsoft Windows: Microsoft Corp. has a long (yet fatally weak and buggy) list of operating systems, targets ranging from the mild and feeble home-user to the truly multi-tasking, multi-processing, multi-programming, fault-tolerant, hack-resilient real-time systems; from MS Windows 95 to the most recently launched Microsoft Windows Server 2003. The reader is free to choose any OS according to his/her own personal taste and/or targeted environment. I personally do "not" consider Microsoft Windows 2000 family of OSes (which includes Windows 2000 Professional, Windows 2000 Server, Windows 2000 Advanced Server and Windows 2000 Datacenter server) a very good choice for "corporate" environments. If the PASSME theme of Software engineering is considered, where PASSME = Performance, Availability, Scalability, Security, Maintainability and Extensibility features of any software under scrutiny; Microsoft Windows 2000 servers (and operating systems, in general) are rated much lower than UNIX SVR4, *BSDs, Sun Solaris, Linux and any of the other commercial variants of UNIX like IBM-AIX, HP-UX, Digital UNIX and so on.

Anyway, I personally believe, "freedom of choice of OS is a birthright for all". So, it is the reader's choice, whether he/she uses Windows 98 or Windows 2000 Professional. Personally, I like tinkering with Microsoft Windows XP, which is the next version of Microsoft Windows beyond Windows 2000 and Windows Millennium. Windows XP brings the convergence of Windows operating systems by integrating the strengths of Windows 2000 - standards-based security, manageability and reliability with the best features of Windows 98 and Windows Me, Plug and Play, easy-to-use user interface, and innovative support services to create the best Windows yet. Windows XP is not a "free" operating system as like Linux, FreeBSD, NetBSD, OpenBSD and other such open-source software projects.

3.1.2 Linux: Linux is the kernel or core of an operating system called GNU/Linux system, where the GNU Project provides the software and applications that runs on the Linux kernel. The Linux kernel, originally written by Linus Benedict Torvalds, is a UNIX-clone, which is POSIX compliant and was initially targeted towards the Intel x86 architecture. As rightly mentioned in the "Linux Information Sheet" by Michael K. Johnson at http://www.tldp.org, "...Linux is a completely free reimplementation of the POSIX specification, with SYSV and BSD extensions (which means it looks like Unix, but does not come from the same source code base), which is available in both source code and binary form. Its copyright is owned by Linus Torvalds ; and other contributors, and is freely redistributable under the terms of the GNU General Public License (GPL). A copy of the GPL is included with the Linux source; you can also get a copy from ftp://prep.ai.mit.edu/pub/gnu/COPYING...". 

Readers must note the fact that though many Linux users worldwide refer to the GNU/Linux operating system simply as "Linux", it is more appropriate to refer to the operating system as a GNU/Linux system and when talking about the kernel in particular just to call it Linux. Moreover, a very popular misconception amongst new Linux users is: "Hey! Linux is UNIX!". No, absolutely "not". Once again, readers must note: The Linux kernel is a UNIX-clone, in other words a reimplementation of the UNIX-Kernel, but it is not UNIX itself. On the other hand, the BSDs, FreeBSD and OpenBSD for example, are not kernels merely. They are more closer to the real UNIX (AT&Ts Official Release UNIX SVR4). They represent an entire operating system with a whole set of applications, tools, user utilities, shells, games, documentation, developer utilities, system and user-level binaries and full source code for the operating systems.  

3.1.3 FreeBSD: FreeBSD which stands for the Free version of Berkeley Software Distribution operating system software (though all the BSDs out there are "open-source" or "free" in nature) is technically speaking, the most powerful, professional quality and advanced UNIX-compatible operating system software on earth today. FreeBSD is originally based on 4.4BSD-Lite (with a minor inclusion from the 4.4BSD-Lite2 code base too), developed at the University of California, Berkeley, under the authorization of the Computer Systems Research Group (CSRG), Computer Science Division, Department of Electrical Engineering and Computer Science at Berkeley. FreeBSD operating system (just like a Linux distribution) comes with a whole set of packages, including user applications, tools, user utilities, shells, games, documentation, developer utilities, system and user-level binaries and full source code for the operating systems. The FreeBSD Project web-site can be accessed at: http://www.freebsd.org.

Recently, a lot of media spotlight has put the GNU/Linux system (more specifically the Linux Kernel) in a stardom status. Some rate Linux as the best ever written UNIX-clone that would spell disaster for UNIX and other UNIX-clones and UNIX-compatibles out there in the market. But in reality it is not so. Readers must note: Just as the power of an automobile comes from the quality of the engine running under it's hood, similarly features like stability, reliability, extensibility and robustness of an operating system software comes from the internal structure of the Kernel or the core of that corresponding operating system. I personally feel that both the Linux and the FreeBSD Kernel are great works of creativity and tremendous effort and just a user-level or technical comparison between the two is meaningless. Situations where memory is a scarcity and moreover gets crunched and stressed upon real hard, the Linux Kernel breaks down. FreeBSD with it's highly optimized and advanced VM/Swap system comes to the rescue! On the other hand, under given situations, Linux may outperform FreeBSD by a mile. The significant point for readers to note and remember is that the Linux Kernel favors simplicity over highly optimized and dynamic yet more complex code whereas the FreeBSD Kernel optimizes performance by introducing more complex code and heavily optimizing the code base by rearranging and rewriting some of the more important internal algorithms and data structures from time to time. 

A complete and exhaustive discussion on Linux and FreeBSD Kernels is beyond the scope of this guide. If readers find it interesting, they may search the Internet for more Linux and/or FreeBSD specific information. I would suggest the readers to read "Understanding the Linux Kernel" by Bovet and Cesati for getting more in-depth information on the inner-workings of the Linux Kernel, "The Design and Implementation of the 4.4BSD Operating System" for FreeBSD/OpenBSD and so on, and "The Design of the UNIX Operating System" by M. Bach for UNIX SVR4 internals. 

3.1.4 OpenBSD: The BSD family, other than the dominant big-brother FreeBSD, also consists of OpenBSD, NetBSD, BSD/OS and Darwin operating systems. OpenBSD is a fully functional, multi-platform UNIX-like Operating System based on Berkeley Networking Release 2 (Net/2) and 4.4BSD-Lite. The OpenBSD team strives to achieve what is called "a secure by default" status. This means that an OpenBSD user should feel safe that their newly installed machine will not be compromised. This "secure by default" goal is achieved by taking a proactive stance on security. FreeBSD -RELEASES target stability and reliability under the most adverse of conditions whereas OpenBSD -RELEASES target optimum security in corporate environments. The OpenBSD operating system software has been labeled "the proactively secure Unix-like operating system". The OpenBSD Kernel is heavily optimized with security features thereby providing customers with utmost secure and hack-resilient real-time systems. The OpenBSD Project web-site can be accessed at: http://www.openbsd.org.

The OpenBSD operating system software has integrated strong cryptography into the base system. A fully functional IPsec (Internet Protocol Security) implementation is provided as well as support for common protocols such as SSL (Secure Sockets Layer) and SSH (Secure Shell). Network filtering and monitoring tools such as packet filtering, NAT (Network Address Translation), and bridging are also included. For high performance demands, support for hardware cryptography has also been added to the base system. OpenBSD provides as many security options as possible to allow the user to enjoy secure computing without feeling burdened by it.

3.1.5 NetBSD: The NetBSD kernel focuses on clean design and well architected solutions. NetBSD supports a massive range of hardware platforms from a single source tree, including simultaneous release across all platforms, and continues to attract users and experienced developers despite lack of media exposure and commercial backing - all thanks to attention to code quality. The NetBSD operating system kernel targets "portability" and tries to run on as many platforms as possible. The NetBSD Project web-site can be accessed at: http://www.netbsd.org

The following table exhibits the main "target" of every operating system covered in this guide:

Windows Ask Mr. Gates himself... Maybe our purses...
Linux Linux targets new, exciting, and cutting-edge features like HyperThreading, USB, Wireless NICs and so on.
FreeBSD FreeBSD targets stability and robustness; optimizing the kernel code base for optimum performance under heavy network-loads.
OpenBSD OpenBSD targets optimum security. It is the most proactively-secure UNIX-like OS.
NetBSD NetBSD targets portability. To run on as many platforms as possible is it's primary target.


Previous Home Next