Unix,BSD,Linux系统三者的区别小结

来源: 网站运营 2024-2-29 14:33:31 显示全部楼层 |阅读模式
老有人问这个,这么说吧,最早的unix是开放的,很多构造对unix都有点窜
期中比力著名的就是伯克利大学的点窜版本,叫做bsd,是unix的分支,由于bsd的协议答应你间接利用\点窜他的代码,而且可以作为贸易用处,所以很多公司的unix都是从bsd衍生过来的,比如hp-unix,ibm的aix等等.
linux呢,是一个完全没有参照unix代码的一个模仿unix架构,试图与unix相兼容的开源系统.
换句话说,bsd是unix的分支,而linux是类unix系统大概说是仿unix系统.
UNIX和类Unix操纵系统

UNIX System V家属
A/UX AIX HP-UX IRIX
LynxOS SCO OpenServer Tru64 Xenix
Solaris OS/2
BSD UNIX-386BSD家属
BSD/OS FreeBSD NetBSD NEXTSTEP
Mac OS X iOS OpenBSD SUN OS
OpenSolaris
UNIX-Like
GNU Linux Android Debian
Ubuntu Red Hat Linux Mint Minix
QNX GNU/Linux GNU/Hurd Debian GNU/Hurd
GNU/kFreeBSD StartOS
其他
DOS MS-DOS Windows React OS
挑选 FreeBSD 六个来由

第一个来由:FreeBSD 是一个免费的开源的操纵系统
Linux 也是一个免费的开源的操纵系统。不外 Linux 是基于 GNU General Public License 的,而 FreeBSD 是基于 BSD License 的。BSD License 比 GNU General Public License 加倍宽松。


FreeBSD 的系统源码可以经过各类方式免费的获得。系统源码包括内核源代码和根基系统源 代码,假如你在安装系统的时辰挑选了安装源码,那末它就在 /usr/src 目录底下。假如你经常更新系统源代码,那末 经常看看 /usr/src/UPDATING 是个很好的习惯。同理, 假如安装了 Ports 系统,经常看看 /usr/ports/UPDATING 可以领会很多有用的信息。

源代码的感化有很多。假如你是一个系统软件大概利用软件开辟者,你可以改良源代码为 FreeBSD 作出进献,大概你参考系统源代码写出很棒的利用软件,大概你经过阅读源代码掌 握了很多常识、获得了经历。假如你是一个普通用户,可以经过从源代码设置编译系统获得 更高的系统性能。总之,开放的源代码不但给用户供给了很多益处,也为 FreeBSD 系统的 开辟者供给了一个能够性,就是分歧的人都可以经过源码找出系统中可以改良的地方并实时 反应给系统开辟者。
第二个来由:FreeBSD 是一个完整的系统

Linux 这个词指的是内核。当我们提到操纵系统的时辰,严酷的用词应当是 GNU/Linux 或 者某个刊行版的名字,比如:SUSE Linux,Debian GNU/Linux,CentOS, Fedora, Ubuntu Linux,Mandriva Linux 等。这些刊行版利用的都是不异的 Linux 内核,能够只是内核的 版本有差别而已。各个刊行版的系统结构能够都是分歧的:比如系统启动的剧本,文件系统 的结构,系统和软件升级的方式方式,默许桌面情况等。

而 FreeBSD 这个词指的是一个完整的系统,包括内核,系统情况,利用软件,各类文档等。 不严酷地说,Ubuntu 和 RedHat 之间的关系就有点像 FreeBSD 和 NetBSD,OpenBSD。可是,前面这些 BSD 系统都是 从 4.4BSD 成长来 的,而 4.4BSD 自己就是一个完整的操纵系统,不是一个孤独的内核。
(FreeBSD被以为是自在操纵系统中的不著名的伟人。它不是Unix,但如Unix一样运转,兼容POSIX。作为一个操纵系统,FreeBSD被以为相当稳建牢靠。)

FreeBSD 有一个 Core Team 来治理这个项目。这些 Core Team 成员是从为数众多的 Committer 当选举出来。这些 Committer 有权利对 FreeBSD 的内核代码停止保护,改良,升级等。 Core Team 和 Committer 对 FreeBSD 的内核代码质量有严酷的把关。FreeBSD 的人经常说: 有题目标代码不能在这里保存。而 Linux 的内核把握在 Linus Torvalds 手 里。一切有才能的人都可以对 Linux 内核作进献。也就是 Eric S. Raymond 所说的 阛阓开辟形式。 从治理形式来说,Linux 内核的代码质量相对要低一些。是以,假如是求稳定的话, FreeBSD 必定是不贰的挑选。

FreeBSD 的利用软件要经过 Ports 系 统 来安装治理。一切的软件都经过特别的设备来配合 FreeBSD 系统。这 些特别的设置包括编译的参数,安装的途径,文档的寄存等。这样可以方便的治理,安装, 卸载利用软件,而不需要太多野生的介入。而 Linux 系统的利用软件治理则比力紊乱,各 种刊行版都不不异。不外越来越多的 Linux 刊行版都在向 Ports 系统进修。典型的比如 Debian/GNU Linux 的 APT。FreeBSD 的 Ports 系统更新是相当快的。随着系统的每次升级,Ports 系统城市有活跃的更新,以便使 各类利用软件跟上系统的升级。
第三个来由:FreeBSD 有清楚的目录结构

Linux 下目录结构有一个为人诟病的大弱点,就是文件寄存的随意性。各类刊行版能够都有 分歧的挑选。比如系统库,就有能够在 /usr/lib,大概 /lib 里面。比如 X (XFree86 大概 Xorg) 利用软件有能够放到 /usr/lib 里面。当一个 Linux 用户想要从源码编译安装 软件的时辰,常常没有明白的标准来肯定自己编译的软件到底应当安装在什么地方。他有可 能会作很多 symbolic link 把文件链接来链接去。系统里面经常留下很多生效的链接。而 FreeBSD 的目录结构是相当清楚的,我们可以看看一些目录感化的诠释:
  1. /bin/      user utilities fundamental to both single-user and multi-user environments
  2. /boot/     programs and configuration files used during operating system bootstrap
  3.                 defaults/  default bootstrAPPing configuration files; see loader.conf(5)
  4.                 kernel/    pure kernel executable (the operating system loaded into memory
  5.                            at boot time).
  6.                 modules/   third-party loadable kernel modules; see kldstat(8)
  7. /etc/      system configuration files and scripts
  8.                 defaults/  default system configuration files; see rc(8)
  9.                 mail/      Sendmail control files
  10.                 mtree/     mtree configuration files; see mtree(8)
  11.                 namedb/    named configuration files; see named(8)
  12.                 pam.d/     configuration files for the Pluggable Authentication
  13.                            Modules (PAM) library; see pam(8)
  14.                 periodic/  scripts that are run daily, weekly, and monthly,
  15.                            via cron(8); see periodic(8)
  16.                 ppp/       ppp configuration files; see ppp(8)
  17.                 ssl/       OpenSSL configuration files
  18. /usr/      contains the majority of user utilities and applications
  19.                 compat/   files needed to support binary compatibility with
  20.                           other operating systems, such as Linux (created by
  21.                           sysinstall(8))
  22.                 include/  standard C include files
  23.                 lib/      shared and archive ar(1)-type libraries
  24.                           aout/       a.out archive libraries
  25.                           compat/     shared libraries for compatibility
  26.                                       aout/       a.out backward compatibility
  27.                                                   libraries
  28.                 local/    local executables, libraries, etc.  Also used as the
  29.                           default destination for the FreeBSD ports framework.
复制代码
以上是 FreeBSD 系统下号令 # man hier 的输出的节选。 根基上每个目录都有特定的感化,什么工具放到那里都有明白的规定。系统治理员在治理系 统的时辰将从清楚的目录结构中获得很多益处。BSD 学院气概的松散风格在这里表现得很是明显!
第四个来由:FreeBSD 可以方便的安装升级

Linux 各类刊行版的用户肯建都有在网上处处寻觅 rpm 的履历。而且很多用户都不敢贸然 升级自己的内核。假如要升级全部根基系统,对于很多 Linux 用户来说就是一个浩荡而繁 杂的工程了。对于 FreeBSD 来说,升级只是一件很简单的工作。

从升级根基系统来说,FreeBSD 可以利用各类方式来升级。比如 Anonymous CVS、CVSup 等。大概也可以二 进制升级。比如,假如我要升级我的系统,能够我只需要以下的几个号令便可以轻松的完成:
  1. #cvsup stable-supfile
  2. #cd /usr/src
  3. #make buildworld
  4. #make buildkernel
  5. #make installkernel
  6. #reboot
  7. ... ...
  8. #mergemaster -p
  9. #cd /usr/src
  10. #make installworld
  11. #mergemaster
  12. #reboot
复制代码
这些号令做了四件工作:第一是更新你的系统源码、第二是重新编译系统源码,第三是编译 安装新内核、第四是更新你的系统设置文件。这篇 The Cutting Edge 具体的讲解了怎样更新你的系统。固然,我省略了内核的设置以及 mergemaster 这个号令的利用方式等。能够显得有点复 杂吧,不外与 Linux 相比,我感觉还是很简单轻易上手的。
要安装升级利用软件,在 FreeBSD 下就加倍简单了。假如你在安装系统的时辰挑选了安装 Ports 系统,那末你 只需要到 Ports 下响应的目录输入几个号令便可以轻松完成。比如,你要安装 Nvidia 的官方显卡驱动,那末你只要:
  1. #cd /usr/ports/x11/nvidia-driver
  2. #make install clean
复制代码
便可以自动完成驱动的安装和设置。固然,还有加倍快速的安装方式,利用号令 pkg_add -r nvidia-driver 可以从网上自动下载已经编 译好的驱动然后自动安装。FreeBSD 的官方文档 Using the Packages System 具体讲解了 packages 的利用方式。假如是升级已经安装的驱动法式,则可以:
  1. #cd /usr/ports/x11/nvidia-driver
  2. #make deinstall reinstall clean
复制代码
大概你可以利用 portupgrade 来升级已经安装的法式。
第五个来由:FreeBSD 的文档非常齐全

到今朝为止,Linux 的文档在很多方面还比不上 FreeBSD 的文档。Linux 由于刊行版的缘由, 各类文档都纷纷复杂,难于寻觅。而 FreeBSD 的文档几近涵盖了系统的各个方面。对于 FreeBSD 的初学者来说,仔细阅读文档应当是必修的作业。国内的 FreeBSD 用户甚至翻译 了一其中文版本,这对 阅读英文有困难的 FreeBSD 中国用户来说是一个福音。

FreeBSD 的文档不但包括最重要的 Handbook 和 FAQ,还有 专门给软件开辟职员的 Developer's Handbook 和 Porter's Handbook。而且这些文档还只是一切 FreeBSD 文档的一个部分。Unix 系统的传 统 man 文档, GNU 的 Texinfo 文档等在 FreeBSD 中都很完整而具体。别的,FreeBSD 还有很多系统设置的例子 (一般这些例子都在 /usr/share/examples 和 /usr/local/share/examples 目录下)。这些例子对新手 系统治理员和普通用户是很好的帮助。
第六个来由:FreeBSD 很稳定而且性能优异

Linux 很稳定而且性能也很优异。在性能方面甚至要跨越 FreeBSD ,比如文件系统的性能。 在 FreeBSD 的文件系统默许利用 softupdates 之前, FreeBSD 的磁盘性能一向是低于 Linux 的。虽然如此,Linux 的磁盘高性能是以牺牲系统 的稳定为价格的。在没有益用日志文件系统 之前,Linux 的文件系统利用会利用 async 形式将数据写入磁盘。而 FreeBSD 默许是利用 sync 模 式将数据写入磁盘。什么是 async 形式和 sync 形式?简单地讲, async 形式下系统常常把不太重要的数据写入内存大概 磁盘缓冲,等一段时候以后再把数据实在的写入磁盘。这样做的益处就是磁盘的读写效力比 较高,可是不服安。万一在数据真正写入磁盘之前系统忽然掉电,那末那些你以为已经真正 写入磁盘的数据就会丧失。sync 形式是把一切应当写入 磁盘的数据都立即写入磁盘,这样的益处是数据比力平安,可是由于大量的读写操纵致使磁 盘性能下降。FreeBSD 在版本 4 之前一向利用 sync 模 式来写入数据,平安是比力平安了,可是在文件系统性能方面就比不上 Linux 了。
Linux 起头利用日志文件系统以后,文件系统的稳定战争安经过日志系统获得了填补。而 FreeBSD 没有采用日志文件系统,而是走了另一条门路,也就是 softupdates。softupdates 的道理就是强迫 metadata 更新时的依靠检查。所谓 metadata 就是,比如磁盘的 i-node 和 v-node 之类的数据。这些数据描写了文件数据在磁盘上存储状态,不是一般的数据,所以叫 元数据。有了 softupdates 以后,FreeBSD 的磁盘性能有了很大的进步,而且在稳定性方面加倍出色。FreeBSD 从版本 5 起头支持背景 fsck,就是背景文件系统检测。背景文件系统 检测可以让你在系统解体后重新开机时敏捷规复办事,而不需要像其他不支持这个特征的系 统那样,要期待 fsck 履行终了以后才能进入到系统。 对于有海量硬盘的系统,这是一个很是吸引人的特征。
别的,在收集方面。FreeBSD 的性能也是相当优异的。在很重的负载之下,FreeBSD 仍然可 以稳定的运转。这也是很多收集办事器采用 FreeBSD 的缘由之一。
具体的跟系统的先容可以参考:  
http://bbs.chinaunix.net/thread-3751530-1-1.html
http://bbs.chinaunix.net/thread-3750579-1-1.html
到此这篇关于Unix,BSD,Linux系统三者的区分小结的文章就先容到这了,更多相关Unix,BSD,Linux区分内容请搜索剧本之家之前的文章或继续阅读下面的相关文章,希望大师今后多多支持剧本之家!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

网站运营

2
粉丝数
3914
帖子数
商业洽谈 文章投递 寻求报道
电话咨询: 15924191378
关注微信