Bsd operating system. BSD OS has lived, lives and will live. What to choose after all

Here I will give a small overview of the systems that will be discussed. Note that the stories presented not claim a comprehensive and authoritative opinion, and no attempt has been made to make them so.
Ask!

Unix

Unix is ​​not really an operating system. Well, yes and no. In particular, Unix is ​​an operating system developed in the late sixties at Bell Labs by Ken Thompson and Dennis Ritchie. Since then, it has been developed and distributed as a commercial OS and a research OS by such companies as Bell Labs, USG, USDL, ATTIS, USL, Novell, SCO and anyone else who might come up with an acronym. It probably won't be a big exaggeration to say that Unix has had the greatest impact on the modern computing industry. Any device of general use and many specific devices uses ideas and concepts and often the code of systems from the Unix lineage. When we say the word "Unix", we usually mean "general form", and not a specific OS called Unix. The generic form means "any operating system that closely resembles a Unix system in design, execution, and taste." That is, all BSD, Linux, SunOS, Tru64, SCO, Irix, AIX, HP / UX and hundreds and thousands of others. I am not interested in entering into philosophical discussions on how many angels can dance on split ends. Let this be enough to understand that when I say "Unix systems" I mean exactly what you think of when I say that phrase.
City of Pedants → on that side.

Linux

There are also several things under the word Linux. This is the kernel originally written by Linus Torvalds during his student years in Finland. Since then, it has been shaken, knocked out, hacked, twisted, dispersed, chopped up, combed, trampled, and performed other manipulations (the order does not matter, of course) by as many people as it is difficult to imagine. Linux is also a family of operating systems. While there is a brilliant metaphysical debate going on around the world at this second (I guarantee it) that "Linux is not an operating system, but just a kernel" or "Speak GNU / Linux right" and so on, I want dissociate itself from this semantic dump. When I say Linux, I mean Red Hat. I mean Slackware. I mean Mandrake. I mean Debian. I mean SuSe. I mean Gentoo. I mean each of the 2 kazillion distributions that are based on a Linux kernel with a similar user environment, mostly based on GNU tools migrating over the Net.

BSD

BSD stands for Berkeley Software Distribution. Initially, it was a set of patches and utilities for the official Bell Unix, which were developed by the CSRG at the University of California, Berkeley. It evolved over time, replacing and / or changing more and more parts of the system until, at some undefined stage, it turned into its own OS by simply sharing pieces of code with Bell Unix. Of course, it still required Bell's license to use the system, if only because most of the code was written in Bell. All the code written in Berkeley, however, was released under a license that later became known as the BSD license, which is loosely translated as: "Do whatever you want with the code, just let us know about it." ... So, the path of almost all BSD code eventually led back to the "official" Unix systems: System III and System V. Both of these branches made their way to various commercial Unix forks. After CSRG (for the most part) fell apart and BSD development ceased, several groups took up the banner. One of them was the 386BSD project, which ported BSD code to the Intel i386 platform. When the 386BSD project dwindled, two other groups were formed to maintain and develop the 386BSD code; one was the FreeBSD project, the other was NetBSD. Over time, some internal disagreements within the NetBSD project led to the formation of the OpenBSD project. When I say BSD, I mean several things. I mean the general BSD spirit and approach to systems. In a general sense, the above means 3 BSD systems that are currently freely available ( for 2005. - approx. transl.):
  • FreeBSD was originally aimed at achieving the best possible performance on the 386 platform. Later, a number of other platforms joined the i386, including Alpha and SPARC, along with the successors to the i386: Intel Itanium and AMD Opteron. The main goal of the project is maximum reliability and efficiency of work on these platforms, both as a server and as a desktop.
  • NetBSD aims to run on as many platforms as possible. Its goal is to become the most portable OS on the planet, and it seems that this is an honest effort.
  • OpenBSD is primarily (some would say "exclusively") focused on security and the like. Tight integration of security, auditing, cryptography and related issues are primary concerns.
All of these goals are, of course, interchangeable. Each BSD cares about and works on security. Each BSD cares about and works on performance. Each BSD cares about portability and is working on it. Large chunks of code are shared within the group. Many developers are working on more than one system. The astute reader will notice that I have not mentioned Mac OS X or the underlying one. Although they are built heavily on BSD, the upper layers of OS X are still pure Apple. When you work in OS X as a user, you are using it like MacOS, not BSD. Therefore, despite the fact that, purely academically, some things can be attributed to OS X, there is no particular practical value in understanding them. Darwin is closer to the standard BSD concept, but since most of its users come from BSD, it can be said that this is outside the context of my essay. However, most of the general information is likely to be easy to understand. When discussing specifics in my essay, I will mainly refer to FreeBSD, because I work with it and know it best. There will be significant differences in some specific aspects. The common sides are likely to be the same for the whole group. From a philosophical point of view, all BSDs are very similar, in contrast to the Linux methodology. Be that as it may, this essay is primarily philosophical.

In this article we will try to figure out what are the differences between operating systems.Linux and BSDand for what purposes they are more suitable. Despite the fact that both systems belong to the UNIX () family and are open source, they also have differences in hardware support and software development principles. Besides all this, Linux is more popular among users than BSD.
By the way We have different distributions available, including

Differences between Linux and BSD.The main difference between Linux and BSD is that Linux is essentially the kernel, while BSD is the operating system that includes the kernel. The Linux kernel is used to create a Linux distribution after building other components. The Linux kernel with GNU programs and stuff is already a full-fledged GNU / Linux OS.

The mascot for Linux is, and for BSD it's a cartoon daemon.

Linux users are provided with a huge number of distributions. All of them are derivatives of some popular Linux distributions, for example, Debian, Gentoo, Red Hat, Slackware, etc. There are also many standalone Linux distributions like Solus, Puppy Linux, etc.

BSD no longer exists as a stand-alone operating system, but it stands for existing BSD derivatives. Today there are FreeBSD, OpenBSD, NetBSD, DragonFly BSD and others. FreeBSD is aimed at casual users with little experience in system administration.

Packages for Linux are provided out-of-the-box. The most popular formats are DEB and RPM, and to install them you need APT / yum.

BSD is different. Ports must be used to install programs. There are about 25,000 of them. Unlike packages, they are open source, which can be compiled on a PC. And this is not very convenient for ordinary users. But the number of ready-made binary packages that are installed via pkg is growing relentlessly.

There are not many programs in BSD, so the system developers are in control by applying package compatibility to run Linux applications on BSD. But BSD supports popular DEs like KDE and GNOME and many others.

A large number of operating systems are somehow related to the UNIX family. UNIX was previously a closed OS. Then most of the system was rewritten in C.

BSD (closed source) and its derivatives are direct descendants of UNIX. But already FreeBSD, NetBSD and other BSDs are open source.

As you know, OSs that are open source do not have normal hardware support. In this case, Windows and MacOS are in the lead.

Linux and BSD operating systems are protected by different types of licenses, and this is also a significant difference between them. GNU / Linux under the GNU GPL (General Public License). BSD operating systems have a BSD license, it also has the name FreeBSD license.

The GPL, in its ideology, implements the principle that software should be free and accessible to everyone. Therefore, every developer is obliged to publish the source code in the public domain. BSD does not enforce disclosure of source code. This is done at the request of each individually.

BSDs are considered stable and reliable because they are rarely updated with new features. Linux, on the contrary, always tries to surprise the user with new usefulness for work.

Linux is more common on PCs than FreeBSD. Because BSD requires some technical knowledge, and GNU / Linux has much better hardware support. It is also important that there is support from the Linux community, which is important.

BSDs are used in servers and embedded systems due to their reliability. BSD provides the ability to run binaries designed for Linux, but unfortunately backward compatibility is not possible. Each of the systems has its own advantages and disadvantages, so it is impossible to say which one is better, each is good in its own way.

Both BSD and Linux can be installed on ours! Linux distributions 2018. What's relevant?

8396 time (s) 12 Viewed times today

    File system list- This is a list of file systems (FS) and network protocols that emulate the operation of the file system, with a small description. To find out more, you can follow the corresponding link. Some older systems only supported one file system, ... ... Wikipedia

    List of operating systems- This is a list of known operating systems. Operating systems can be classified by underlying technology (UNIX like, post UNIX / UΝΙΧ descendants), type of license (proprietary or open source), whether it is currently being developed (outdated or ... Wikipedia

    BSD- This term has other meanings, see BSD (disambiguation). BSD (Berkeley Software Distribution) is a source code distribution system for the exchange of experience between educational institutions. ... ... Wikipedia

    List of LiveCD distributions- This is a service list of articles created for ... Wikipedia

    List of Live CD distributions- This is a service list of articles created to coordinate work on the development of the topic. This warning is not a mustache ... Wikipedia

    BSD (disambiguation)- BSD: BSD family of operating systems. BSD license BSD / OS commercial version of BSD. The BSD daemon is the logo of BSD operating systems. BSD Installer computer program BSD installer ... Wikipedia

    CMF list- This is a CMF list of frameworks for managing content (mainly site content). As a rule, on the basis of CMF, CMS are created ready-made content management systems, and those, in turn, serve as the basis for creating full-fledged ... ... Wikipedia

    Backup software list- ... Wikipedia

In the field of modern open source software, the word "Linux" has practically become a synonym for the concept of "operating system", although few people know that in reality it is far from the only OS like Unix today whose source codes are available for everyone.

In 1999, according to data from IOSC, almost a third of all machines that were connected to the Internet were running Linux, while nearly 15% were running FreeBSD. What kind of system it is, and to this day only a few modern PC users know, despite all its advantages and widespread use at one time. It is worth noting the fact that many of the world leaders in the field of Web-services are actively working on this system. In particular, it should be noted that the Yahoo system today is based on FreeBSD. What this gives users, they themselves hardly know and even think, but the owners of the system are sure that this is the right decision.

What is BSD?

BSD stands for Berkeley Software Distribution. This was the name of the software that was distributed in source codes at Berkeley. It is worth noting that the original addition to the standard UNIX operating system was the only thing that FreeBSD represented. What was that compared to the current version of the system?

Several open source operating systems have been created based on version 4.4 of BSD-Lite. In particular, the composition of these systems included the development of other projects, among which the GNU project deserves special attention.

Structure

The advantages and features of this system differ in the structure of FreeBSD. What is this structure:

  • A kernel that is designed to carefully plan all processes, manage memory, work with various devices, and support multiprocessor systems. It should be noted that, unlike the Linux OS, in this case there are several types of BSD kernels, which differ in different features.
  • The C library, which is used as the main system programming interface, and is based on code from Berkeley, not from the GNI project.
  • All kinds of file utilities, compilers, shells, linkers, and other end-user programs, some of which are based on GNU code.
  • FreeBSD UNIX is an operating system that includes X Window, which is directly responsible for This system is used in the vast majority of BSD versions and is officially supported by the X.Org project. This system allows the user to choose from several graphical skins as well as a range of lightweight window managers.
  • A large number of other system and application programs.

What is real UNIX?

It is worth noting that FreeBSD UNIX itself is always a different operating system. And the types of such systems are not clones of each other. They are only descendants of a common ancestor, the traditional UNIX operating system. This fact may be somewhat surprising, especially if you remember that the developer of this operating system has never disclosed the codes of his developments to the general public.

Is BSD UNIX?

Indeed, the UNIX operating system has never been open source software, so BSD definitely cannot be called a UNIX system, if only because the graphical interface of operating systems is different. However, at the same time, the company that developed UNIX was actively using other people's developments, and in particular this applies to software that was developed by the CSRG organization.

Initially, BSD distributions, as well as the graphical interface of operating systems, were complexes of user programs, and this situation continued exactly until the company entered into a contract with DARPA, a subordinate The purpose of this contract is to update various communication protocols on which the agency's computer network was supported ...

Several workstation companies formed during the 1980s, and it is worth noting that many of them acquired UNIX licenses instead of trying to develop their own software from scratch. In particular, it is worth highlighting Sun, which did this and decided to eventually release its own operating system based on version 4.2BSD, which was called SunOSTM. When the UNIX company AT&T ultimately decided to commercialize its own operating system, a rather austere implementation emerged - System III, followed over time by the release of System V.

For what reason this operating system remains unclaimed?

There are a number of reasons why FreeBSD 10 is less popular today:

  • Developers are most often interested in the quality of their own code, and more in its polishing, rather than advertising.
  • By and large, the popularity of Linux is a consequence of a number of external factors regarding this project, in particular, it concerns the media, as well as companies that have decided to form their own business, providing services to users of this operating system.
  • BSD developers are overwhelmingly more experienced than Linux developers, and therefore pay much less attention to making life easier for ordinary users. In other words, setting up FreeBSD for the average user is more complex than
  • In 1992, a UNIX developer decided to sue BSDI, which supplied the BSD / 386 operating system. The main point of the accusation in this case was that the OS contained closed code owned by the plaintiff, and it seems that the case was eventually settled outside the court in 1994, but a whole complex of secondary litigation, even today, poisons the lives of many people.
  • It is believed that BSD projects themselves differ and may even conflict with each other. This opinion is based on events that happened a long time ago.

Which is better - Linux or BSD?

Today, the most common choice of installing an Apache server is FreeBSD instead of the traditional Linux system for most other systems. For the average user, the difference between these systems is surprisingly small, since both products are based on UNIX. Both systems are developed on a non-commercial basis.

Who Owns BSD?

It is worth noting that there is no specific person or company who owns the BSD development. The development and subsequent distribution of this system is carried out by a whole group of highly qualified and at the same time dedicated to the project specialists gathered from all over the world. Certain BSD components are separate projects that are open source, which have their own laws and development teams.

What should you choose?

The choice between these operating systems is really quite difficult, so there are a few tips that allow you to choose which option is optimal - Linux or FreeBSD. The commands in both cases are quite similar, so the choice can most often be based on the following:

  • If you are already using a certain Open Source OS, then you shouldn't even change anything.
  • FreeBSD systems can perform much better, but this rule is not universal.
  • BSD systems have a pretty good reputation, especially when it comes to reliability.
  • BSD projects have a better reputation for their high quality and the completeness of the documentation available.
  • BSD can use the vast majority of Linux executables, while Linux cannot use many BSD executables.

Provides technical support and services for FreeBSD - ports and systems - FreeBSD Mall, Inc.

Events in the world of free-distribution operating systems of the BSD family: FreeBSD, OpenBSD and NetBSD, have long attracted the attention of OS developers. Information on the capabilities, advantages and disadvantages of such systems, as well as information on their commercial implementations (BSD / OS) will be useful when the user once again faces the question: whether to purchase a commercial Unix system or take a step towards free software. In addition, the article may be of interest to anyone who wants to know the very history of the Unix OS.

The history of BSD Unix began when the Unix operating system came to the University of Berkeley (California, USA) in 1974. By that time, this OS had already been distributed for several years for a nominal fee by Bell Technical Labs (BTL) among universities and other educational institutions, having managed to win the sympathy of users who liked the openness of the system: Unix was delivered in source code (without BTL support and guarantees) , and users had the opportunity to independently study, fix and expand it. All of this generated a desire to share their work with other Unix enthusiasts and in many ways shaped the specific way of thinking and the Unix culture. It should be noted that the Bell Technical Labs staff acted very wisely (perhaps without even realizing it) in letting Unix float freely. Freedom has rendered a service both to the system itself and to its users - a lot of professionals have grown on Unix, not to mention the number of diplomas defended on topics related to this OS. So it can be considered that the Unix OS entered the commercial world with a full university education. By the way, quite recently BSDI decided to take such a step - transferring the source code to educational institutions. I wonder if history will repeat itself?

But back to Berkeley. It was there that many of the ideas that have now become generally accepted were born - support for the TCP / IP protocol on Unix, virtual memory system, fast file system (FFS), ex and vi editors, BSD sockets (network application programming interface), sendmail, csh and much more. ... The university has also provided the world with excellent specialists who have largely shaped the development of Unix - think of Eric Allman, Bill Joy or Chuck Haley. They were the first to get the Unix texts that "settled" in Berkeley. Unix was developed here by the Computer System Research Group (CSRG), which unfortunately disbanded in 1992. However, its best traditions have been continued by BSDI (Berkeley Software Development, Inc.) and the FreeBSD and NetBSD development groups. More recently, the OpenBSD project team has been added.

1. It all started with 386BSD

There were several versions of BSD Unix roaming the world at the time, but they all had one thing in common: they required a license to the original Unix source code to use. Most of the BSD code was written in Berkeley, and one day someone noticed that there wasn't much of the original code left; so the idea was born to create a free Unix and start distributing it over the Net (Net distribution).

William and Lyna Jolitz decided to rewrite parts of the system that were missing to create the open source BSD Unix. The result was 386BSD version 0.0. Not yet ready to use, 386BSD had one undeniable merit: it no longer required the dreaded source license to create a workable version of the system. 386BSD 0.1 soon followed (by then Linux, another member of the family of free Unix systems, had been around for over a year). Many people, wanting to tinker with the source code they were already familiar with, decided to start using and patching 386BSD 0.1. As a result, since June 1992, a large number of fixes and improvements have been made to the system. Many FTP servers even had an unofficial patchkit (a set of fixes) that made 386BSD more stable and easier to use - many problems in the system were solved with patchkit. But today, after some legal trouble with some of the code belonging to AT & T / Berkeley, the original system has become quite difficult to find - it has been removed from FTP servers around the world.

It should be remembered that when the non-commercial BSD family was first created, William and Lynn used a tape called Berkeley Net Release / 2 as the basis. Having thus built a solid foundation, they also laid, unwittingly, a time bomb. As a result of legal battles, some of the files on the original Net / 2 tape were designated as binary only. Therefore, they had to be recreated from scratch in order to get a truly free distribution system. This is the main reason why it is almost impossible to find the original 386BSD version 0.1 now. In order to replace 386BSD, three new systems were born under new names. The first was NetBSD, followed shortly by FreeBSD, and more recently OpenBSD has joined the group.

If you look at the README file that comes with every BSD system, you will find that these systems are based on BSD 4.4-Lite. The FreeBSD development team used the BSD 4.4-Lite distribution and generated the missing pieces of the code; all this, after further development, became FreeBSD. The NetBSD developers started development with 386BSD, adding available parts from BSD 4.4 as well. The OpenBSD system at one time separated from NetBSD - the developers decided to combine the best features of FreeBSD (usability and functionality) and NetBSD (portability to a large number of platforms). Thus, the Open / Free / NetBSD development teams re-created those files that were not in the original BSD 4.4-Lite bundle or could not be freely redistributed. All systems are as close as possible to BSD 4.4, although each has its own advantages and disadvantages.

Let's consider these systems in more detail, but it's worth noting right away that very often much that has been said about one system applies to another: all these OpenBSD, FreeBSD and NetBSD operating systems are developed separately, but not in isolation.

2. NetBSD

The NetBSD Project is the result of an effort by a large group of enthusiasts to create a free Unix-compatible operating system. NetBSD is based on a large number of free software, most notably the University of Berkeley BSD4.4-Lite. The system runs on a variety of platforms - from DEC Alpha to Apple Macintosh and z80, comes with full source code and is supported by the system developers and users. The developers focused on the reliability and support of a large number of platforms. There is hardly a hardware configuration today where NetBSD cannot be installed.

The implementation of the project began in January 1993, and by April the first official release appeared - version 0.8, which still worked only on the i386 platform. It was followed by version 0.9 in August of that year. NetBSD was originally inherited from 386BSD, which used Berkeley Net Release 2 (BNR / 2) and naturally, like other BNR / 2 based operating systems, ran into difficulties at some point. Only a year after the 0.9 release, in October 1994, NetBSD 1.0 appears - the first version of NetBSD to be based on BSD4.4-Lite. In addition, the system has been ported to HP300 / 9000, Macintosh, PC532, Sun SPARC and Amiga. In September 1995, the NetBSD Foundation is formed, a non-profit organization to become the coordinating body of the NetBSD Project. Soon (November, 1995) NetBSD is ported to Atari, DECstation, VAX, Sun3; it adds binary compatibility (within the same platform) with FreeBSD, iBCS2, SunOS, Ultrix, HPUX, Linux, OSF / 1, SVR4. The version is numbered 1.1. The most recent version of NetBSD was implementation 1.2 (October 1996), and along with many improvements and changes, support for DEC Alpha platforms, Motorola MVME boards, SPARC / Sun4m appeared.

NetBSD is distributed in two flavors: formal release and NetBSD-current. FreeBSD and OpenBSD have the same layout. The formal release has a version number and includes well-debugged utilities, kernel, sources, and installation tools. The release is a balance between features and stability — easier to install than the current release. Such versions are well debugged and appear relatively rarely, so they are suitable for those who wish to have a stable working system. These versions are more convenient to maintain, since it is always clear what is at stake. The biggest problem with formal versions is that the user does not get access to the source code base with the latest improvements and fixes. The formal version is easy to install - each platform has detailed instructions, boot disk images or miniroot filesystems. Typically, there is a procedure that makes it easy to migrate from a previous version to a new one.

With NetBSD-current, the situation is completely different. The current version appears every night and is a snapshot of the NetBSD source tree that needs to be recompiled on your platform. Since the work is carried out constantly, the current version is sometimes not completely debugged, it may contain errors, it may not even compile. The current version is useful for driver developers, system software developers, and those contributing to the creation of NetBSD. The current version allows developers to "stick together", catch bugs and make changes quickly. At some point, the current version begins to turn into formal release, beta testing takes place, and a new current version grows from this branch, etc. Thus, development does not stop for an instant, and at the same time not a single phase hidden from the community - you can always suggest your own changes and additions, which (if they make sense) will be included in the current one.

The NetBSD project seeks to follow industry standards such as POSIX and Standard C. Recall that POSIX (Portable Operation Systems Interface) is the name of an IEEE-funded group that develops a standard API for Unix-like operating systems. There is POSIX.1 (IEEE Std1003.1-1990), which standardizes the API for C POSIX.2 (IEEE Std1003.1-1992), which standardizes how the shell and utilities work. Other POSIX standards describe the Ada and Fortran languages, real-time extensions, and so on. NetBSD is now very close to POSIX.1, so porting software to the NetBSD environment is easy. But it is unlikely that NetBSD will ever get POSIX-compliant system status, since certification costs a lot of money. However, the developers believe that NetBSD is closer to POSIX and Standard C than any other free operating system.

3. FreeBSD

The FreeBSD project was born in early 1992 and grew in part out of the 386BSD Unofficial Patch Kit, or rather, the patchkit, led by Nate Williams, Rod Grimes, and Jordan Hubbard. In addition, David Greenman and Julian Elisher participated in the development, although they officially joined the project only a month after the start of its implementation. Since the organization of work through patchkit could no longer save the day, the main goal of the project was to create an intermediate version of 386BSD, which would fix most of the bugs. Perhaps someone can still recall the working titles of a project like 386BSD 0.5 or 386BSD Interim, which reflected the current state of affairs.

It was around this time that Bill Jolitz pulled out of further support and development of the system, resulting in the 386BSD upgrade project becoming what we now know as FreeBSD (coined by David Greenman). Jordan Hubbard turned to Walnut Creek CDROM (USA) in hopes of opening additional distribution channels for the as-yet-to-be-built operating system. Walnut Creek CDROM not only supported the idea of ​​distributing FreeBSD on CD, it also helped with hardware and high-speed Internet connections. The first FreeBSD CD appeared in December 1993, FreeBSD 1.0, which was also distributed over the Net. The system was based on the 4.3 BSD Lite (Net / 2) Tape from Berkeley and supplemented with components from 386BSD and the Free Software Foundation. For the first version, the success was quite significant, and soon, in May 1994, a very successful version 1.1 was born.

However, then clouds began to gather on the horizon. Novell, the successor to AT&T, has started a lawsuit over the banning of the code snippets in the Berkeley Net / 2 tape that originated in AT&T. The University of Berkeley was forced to release a "lightweight" version called BSD4.4-Lite and recommend that all Net / 2 users switch to it. Therefore, at the end of July 1994, the FreeBSD project stops shipping FreeBSD, but, according to the license agreement, has the right to release another version before "X hour". The result is FreeBSD 1.1.5.1 - the result of a year of running on Net / 2. This version had better performance than all the previous ones, had higher reliability and was a great product in itself.

But now the developers had to actually start all over again, based on the new and incomplete BSD 4.4-Lite set. Due to various legal restrictions, the Berkeley CSRG team removed a lot of the code used to create a bootable, runnable system, and in fact the port on Intel x86 was very incomplete. The FreeBSD Project began work again in December 1994, and as early as January 1995, FreeBSD version 2.0 appeared on the Web and on CD. Despite some rough edges, the system was a great success, and was soon followed by the faster and easier to install FreeBSD 2.0.5, released in June 1995.

At the end of this year, version 2.1 was released, very stable, in many ways improved, which in all respects surpassed the version of FreeBSD 1.1.5.1. Over the course of two years, a tremendous amount of work has been done to turn the incomplete BSD 4.4-Lite suite into a working, reliable and user-friendly operating system. One cannot help but admire the development team, which by that time was joined by many excellent and enthusiastic programmers. A little later, 2.1 turned into 2.1.5, then 2.1.6. In both cases, stability has been improved, additional drivers have been added, and bugs have been fixed. In February 1997, an inaccuracy was discovered in the system library in the PATH_LOCALE environment variable handler, and then the FreeBSD development team removed version 2.1.5 / 2.1.6 from all FTP servers and released version 2.1.7 (security-release). Then version 2.2 was released and work began on FreeBSD 3.0, which plans to improve the quality of the virtual machine (VM), which will improve the emulation of DOS and Windows applications.

In addition, quite recently, an ambitious project was launched to iterate through the entire FreeBSD code (about 120 MB) line by line. The goal of the project is to get rid of security problems, fix the bugs found and improve the overall style. The source code tree has been split into separate parts that are reviewed by various programming teams; all fixes are repeatedly checked by independent experts. All of this gives hope that FreeBSD will become a more secure system. By the way, after analyzing the BUGTRAQ mailing list for the last six months, you can see that commercial operating systems such as Solaris, IRIX, not to mention NT, significantly outperform FreeBSD in terms of the number of bugs in security-critical programs. More information on the FreeBSD Audit Project can be found at: http://www.freebsd.org/auditors.html.

Thus, FreeBSD development is not a closed process, but rather maintains a long tradition of collaboration between specialists from around the world working on the same task. The most active developers move to the FreeBSD core team, which is responsible for the overall direction and target coordination of the project.

4. OpenBSD

The OpenBSD project recently split from NetBSD and is also a member of the BSD4.4-Lite family. OpenBSD is developing on its own today; in addition to its own development, it includes good ideas from other groups (FreeBSD / NetBSD). The development of OpenBSD was started by Theo de Raadt, one of the four creators of NetBSD. And if earlier about OpenBSD it was still possible to say: "OpenBSD is NetBSD plus additional features", now, after a long work, it is obvious that OpenBSD is an independent system from the BSD family - a lot, compared to the original version, was added and fixed.

OpenBSD has inherited good multi-platform support, but the porting process continues. The OpenBSD group pays special attention to the security of the system: in particular, an attempt has long been made to rework the source code to prevent possible attacks associated with a fixed buffer size, and also a lot of programs have been fixed. OpenBSD has excellent POSIX compatibility, reliability, and security. The OpenBSD team always responds promptly to reports of inaccuracies and possible problems, it is open to new developers, and each specialist has the opportunity to add to the system what she is missing.

OpenBSD is compatible with many FreeBSD extensions (notably the FreeBSD ports system); ATM support has recently been added, and work is underway to enable IPX and a number of other networking protocols. One of the main advantages of OpenBSD is the understanding of the need for system security. OpenBSD remains by far the most reliable Unix-like PC system in this regard. The latest version of OpenBSD is 2.0, with 2.1 coming soon (on CD and FTP servers).

5. Net / Free / OpenBSD Features

So what is the BSD Unix family of free distribution systems today?

FreeBSD is a Unix-like operating system for PCs based on Intel architecture, which includes 386, 486 and Pentium processors. In addition, NetBSD / OpenBSD supports many other platforms. All three systems provide many features that were previously only available on more powerful and expensive machines.

  • Preemptive multitasking with dynamic prioritization ensures that computer resources are reliably and quickly shared between running applications and users.
  • Multi-user access makes it possible to simultaneously use the machine for different purposes. System peripherals, like printers or tape drives, are automatically shared between users.
  • TCP / IP networking support includes SLIP, PPP, NFS and NIS. This means that the machine can easily interact with other systems, for example, act as an enterprise server providing vital functions such as NFS, e-mail, WWW and FTP server, routing control using built-in firewalls.
  • Memory protection ensures the safe execution of programs. No program or user can influence the execution of other programs if they do not have permission to do so.
  • Implementation of the industry standard X Window System (X11R6) provides a graphical user interface; most video cards and monitors are supported, full sources are available.
  • Binary compatibility with many programs built on SCO, BSD / OS, Net / Free / OpenBSD, 386BSD and Linux.
  • Thousands of additional highly adaptable applications are available over the Internet. BSD systems are source-compatible with many popular commercial Unix systems, so most applications may or may not require minor changes.
  • The system of virtual memory and virtual machines allows you to run applications that require large amounts of memory; however, they do not create difficulties and delays in the interaction with the user.
  • Shared libraries (the equivalent of DLLs borrowed by MS Windows from Unix) allow efficient use of disk space and RAM.
  • BSD Unix includes a complete set of development tools for C, C ++ and Fortran. In addition, many other development environments are available through the FreeBSD ports and packages collection.
  • Having the complete source code of the operating system means that the user has the maximum level of control over the environment. Why limit yourself to a partial solution and depend on a vendor when you can have a truly open system?
  • Support is provided by developers through Usenet newsgroups and mailing lists where you can ask any question.
  • 6. Features of implementations

    In addition to the main distribution, FreeBSD offers a large collection of ported software products of several hundred titles. The list includes networking software, programming systems, games, and more. The complete collection only takes up 10 MB of disk space, since only lists of changes that need to be made to the source code before compilation are stored. To install, just type the command "make", after which the system will automatically take the base version of the program from the CD or FTP server, make the necessary changes and compile. For those who are not going to compile programs on their own, a collection of ready-made software (packages) is suitable. To install the program, you need to type a single command "pkg_add" with the name of the archive, which can be found on the CD or FTP.

    FreeBSD is feature rich, reliable, and fast. Perhaps this system of the entire family of free BSD systems is developing most dynamically now. Much attention is paid to compatibility with other systems and usability. If the user is working on x86, then you should pay attention to FreeBSD - it will allow you to very smoothly enter the world of BSD systems. NetBSD is more focused on supporting multiple platforms, while OpenBSD tries to combine the best of FreeBSD and NetBSD with a focus on system security. In addition to the excellent work that CSRG has done, development teams have spent many thousands of hours perfecting systems for maximum performance and reliability. While the commercial giants are battling it out in the PC operating system field, FreeBSD, NetBSD, and OpenBSD are offering them now.

    7. Examples of use

    The application areas in which BSD Unix can be used are limited only by the user's imagination - from software development for enterprise automation to automatic control of a satellite dish. If something can be done with a commercial Unix implementation, then most likely it can be done with BSD Unix, which offers a lot of high quality software from research centers and universities around the world for free. The number of commercial applications available is growing every day.

    Since the source code of the systems is fully available, the system can be customized and / or adapted to solve specific problems, providing flexibility not found in many commercial closed systems. Here are just a few examples of using FreeBSD, NetBSD, or OpenBSD:

  • Internet server: fast and reliable TCP / IP implementation makes BSD Unix an ideal platform for FTP, World Wide Web, Gopher, email, BBS and Usenet servers;
  • education: BSD Unix will help future administrators learn about operating system architectures and networking capabilities of hardware configurations;
  • research: BSD Unix, with its complete source code, can serve as a good platform for operating system research and development. This is also facilitated by the absence of licensing restrictions;
  • networks: FreeBSD or Open / NetBSD can easily turn an old 386/486 computer into a DNS server or powerful router with packet filtering capabilities;
  • workstation for X Window: BSD Unix can serve well as an inexpensive X terminal. Thanks to the free XFree86 server, you can also work with commercial X servers. Unlike a regular X terminal, BSD Unix allows X applications to run locally, taking the load off the server. BSD Unix supports remote booting for ease of administration;
  • software development: the base BSD Unix system comes with a complete set of tools, which include the GNU C / C ++ compiler and debugger.
  • BSD Unix generally does not include DES support code to avoid violating US export restrictions, where an optional component is available to provide DES; for residents of Europe and other countries, there is also a DES implementation distributed through European FTP servers. If password protection is all that is required of the crypt () function, and you do not need to use passwords on other systems (Sun, DEC, etc.), FreeBSD offers strong MD5-based cryptographic protection. This model provides security at the DES level, or even surpasses it, so it suits most users of the system. OpenBSD supports MD5, and work is underway to add a blowfish encryption model. FreeBSD is also moving towards implementing additional encryption schemes that can be switched between.

    8. BSD / OS is a commercial BSD system

    So far, the focus has been on free BSD systems, but it makes sense to also mention Berkeley Software's commercial BSD / OS version, DesingBSD / OS. Several leading CSRG experts formed BSD Inc. in 1991 to develop BSD technology and bring it to commercial customers.

    BSD / OS is a fully featured, POSIX-compliant Unix system for 386, 486, and Pentium processors. The system is based on software from the University of Berkeley, as well as other sources and components developed at BSDI. The first BSD / OS version was delivered to the customer in March 1993. Today BSDI Internet Server based on BSD / OS is widely recognized in its class of systems and has received several awards (for example, the InfoWorld Top Score Award in 1995). Like other BSD systems, this OS can serve as a WWW server, router, etc. BSDI Internet server brings to the PC world much of what was previously possible only on more powerful systems: multitasking, network support. So, BSDI speed tests showed that BSD / OS on Intel 486/66 develops speed at the level of Sun SPARCStation II, and the Pentium processor is already comparable to SUN SS10.

    BSD / OS includes all components of a complete system: X11R6, TCP / IP (+ SLIP / PPP), NFS, C / C ++ development tools, a set of applications, etc. BSD / OS is supplied in binary form, and for a fee - with source texts. Perhaps the only thing BSD / OS clearly outperforms its free competitors in is support. BSD / OS is a commercial product, and its users have telephone hotlines, support departments, etc.

    9. So which is better?

    It is impossible to give an unambiguous answer to this question. Any argument in the "holy war" is a waste of time. But you can also look from the other side. All systems provide long-awaited and unique capabilities: a fully functional operating system runs on popular hardware and yet its source code is fully available. Those who have been working in the computer industry for a long time will remember that operating systems were almost always created by suppliers of specific hardware and, as a rule, there was no alternative to their system. The source code has never been published (many companies still continue this "good" tradition). It was possible to become a real professional only by independently understanding the structure of the system, the logic of its work.

    But today the situation has changed. The user has the opportunity to purchase a PC that will be several times more powerful than the multiuser VAX, and at the same time choose from several free operating systems (BSD, Linux, etc.). Classic question: if something looks like a duck, walks like a duck, and quacks like a duck, what is it called? The answer depends on whether the word "duck" is a trademark! If so, then the best you can count on without the consent of the trademark owner is the "duck-like creature." Unix is ​​a trademark of the X / Open Company, so other systems that are not authorized to use it refer to their products as Unix-like or even "UN * X-like". Therefore, none of the listed OSs can formally be called Unix, but did they become worse from this?

    Today, free operating systems are developing dynamically, in no way inferior, and in many respects even surpassing their commercial competitors. Moreover, users are given a chance to personally influence the development of the system - it is enough to have good programmers on staff to become independent from the operating system vendor. You do not have to wait several weeks if some inaccuracy is found or there is a need to improve or add something. Instead of a closed team of developers (how many people know the names of the creators of Windows 95?), There is a community of enthusiasts open to collaboration.

    You can choose the operating system that suits you best: FreeBSD, OpenBSD, Linux, NetBSD, or whatever. But whatever you choose, it's a good deal. Many small businesses, Internet service providers, other organizations and users refuse to spend money on what can be obtained for free, and are increasingly using free Unix systems. Are you afraid you won't be able to find the software you need? Firstly, to your Internet services, secondly, you can purchase software for BSD / OS and / or Linux and use it on your system - binary compatibility is well debugged. In addition, many commercial developers are now turning towards free BSD systems.

    Literature

    V. Kolontsov. Find, check and neutralize. Open systems. - 1996, # 6, pp. 58-63.

    More information on BSD operating systems

    386BSD - older versions of BSD are now focused exclusively on the academic and research community, distributed through Dr. Dobb "s Journal on CDs.

    FreeBSD - BSD version for Intel platform targets widespread use, distributed on CD (Walnut Creek CD-ROM, http://www.cdrom.com) and via FTP ( http://www.freebsd.org).

    BSD / OS (BSDI Internet Server) - a commercial BSD system from Berkeley Software Development, Inc. for Intel platforms ( http://www.bsdi.com).

    Usenet groups: comp.Unix.bsd. * Fidonet: ru.Unix ru.Unix.bsd IRC: #netbsd, #freebsd, #openbsd etc.


    BSD OS lived, lives and will live