Haiku操作系统
在这篇文章中,您将了解关于Haiku操作系统的 历史、特性、使用、优势和劣势 。
Haiku操作系统是什么
Haiku 是一个与BeOS系统兼容的自由开源操作系统。它的开发始于 2001年 ,并在 2008年 实现自我托管。第一个alpha版本于 2009年9月 发布,最新版本于 2012年11月 发布。第一个Haiku beta版本于 2018年9月 发布。此后,Haiku在 2020年6月 发布了beta 2版本,在 2021年7月 发布了beta 3版本。
Haiku, Inc. 是Haiku操作系统的支持机构。它是一个非营利性机构,于 2003年 在 纽约州罗切斯特市 由前项目负责人Michael Phipps创立。
Haiku操作系统的历史
Haiku项目起源于 2001年 的OpenBeOS项目。同年,Palm公司和Be, Inc.合资开发的BeOS项目被取消。该项目旨在通过创建一个开源的、向后兼容的替代品,来帮助BeOS用户社区。首个OpenBeOS项目是为BeOS 5.0.3版本创建的一个社区创建的 “过渡” 更新,发布于 2002年 。
非营利组织Haiku, Inc.于 2003年 在 纽约州罗切斯特市 成立,为开发提供财务支持。在OpenBeOS收到违反Palm对BeOS商标的通知后,该项目在 2004年 更名为Haiku。Stuart McCoy创建了Haiku操作系统的原始标志。他们为Haiku R2构建了原型,并在 Haiku可用性和设计团队 的早期非常投入。Haiku开发人员和艺术家Stephan Assmus与其他人共同开发了Haiku的图形编辑程序WonderBrush,并对其进行改进,并设计了Haiku使用的HVIF图标矢量格式。在 2007年 ,Haiku图标通过大众投票选出。
The first Haiku版本(Haiku R1/Alpha 1) 发布于 2009年9月。R1/Alpha 4.1 发布于 2012年11月 ,但夜间构建工作仍在继续。经过多年的等待,Haiku版本 (Haiku R1/Beta 1) 于 2018年9月19日 发布,随后是 Haiku R1/Beta 2 于 2020年6月9日 发布。Haiku的最新版本 (R1/Beta 3) 于 2021年7月26日 发布。在官方发布之间,64位和32位(x86)版本的 ‘Nightly’ 构建可在Haiku Nightly网站上获得。
最初将完全兼容BeOS 5视为目标后,社区于 2009年 决定改变对R1的愿景,更注重对最新硬件、网络标准和FLOSS库兼容性的支持。“Glass Elevator”项目已开始R2的初步规划。到目前为止,唯一经过验证的是它将使用最新版本的GCC。正在开发一个兼容层,允许为Haiku R1开发的应用在Haiku R2及以后的版本上运行。Haiku的首席开发人员之一Axel Dörfler在Haiku邮件列表的一次对话中提到了这一点。推荐的未来功能包括与UNIX的Beagle、macOS的Spotlight、Google Desktop相媲美的文件索引功能,将可缩放矢量图片更好地集成到桌面系统中,完全支持多用户和其他工具包。
Haiku操作系统的系统要求
Haiku的最低硬件要求是运行在400 MHz的Pentium II CPU上,128 MB的RAM和1 GB的可用磁盘空间。该操作系统主要面向用户和开发人员。
Haiku操作系统的软件包管理
截至2013年9月,Haiku操作系统拥有一个名为 “Haiku Depot” 的软件包管理系统,允许将应用程序打包为具有依赖跟踪功能的压缩包。可以通过使用pkgman从远程存储库安装它们或将它们放置在专用的软件包目录中来激活软件包。Haiku操作系统的软件包管理在只读系统目录上安装活动软件包。Haiku软件包管理系统使用了openSUSE项目的libsolv来解决依赖问题。
Haiku操作系统与BeOS的兼容性
Haiku R1旨在与BeOS源代码和二进制文件兼容,允许在Haiku上编译和运行无需任何改动的BeOS的软件。这为Haiku用户提供了一个即时可选的应用程序库,并允许应用程序开发人员从Be, Inc.结束的地方继续开发。
它对兼容性的承诺也有其缺点。尽管Haiku必须使用基于2001年发布的版本为2.95的GCC编译器的分支版本,而这已经是21年前的事了。Haiku允许以混合的GCC7/GCC2环境进行开发,因为升级到GCC 7会破坏与BeOS应用程序的兼容性。它使系统能够同时执行GCC版本2和版本7的二进制文件。针对Haiku的GCC 2.95的更改包含了广泛的支持和从GCC 3和以后版本的修复的后移。
它只能与32位x86计算机兼容。不支持BeOS R5的PowerPC版本。因此,GCC版本7编译器是用于Haiku的ARM、68k、64位x86和PPC端口的唯一版本。尽管采取了这些努力,但不会对使用了秘密API的多个系统插件进行任何兼容性实现。
截至2006年5月,与Haiku兼容良好的R5二进制程序包括Opera、Firefox、SeaMonkey、Vision、NetPositive、Quake II、Quake III和VLC。该操作系统的驱动程序兼容性有限,并且不太可能处理所有类型的BeOS驱动程序。一般来说,2D图形和网络驱动程序的操作方式与R5完全相同。此外,Haiku还具有基于源代码级别的FreeBSD OS网络驱动程序兼容性层,使其能够支持任何支持FreeBSD的网络设备。使用BeOS R5之前的API版本的音频驱动程序现在已不再受支持,并且未来也不太可能得到支持。
此外,低级设备驱动程序,如存储设备和SCSI适配器,将无法工作。但是,第二代(BeOS 5)和第三代(BeOS Dano)USB堆栈的USB驱动程序将能够运行。在多个方面,Haiku比BeOS更复杂。例如,界面工具包使得可以使用布局系统自动将小部件放置在窗口中。相比之下,在BeOS上,开发人员必须手动定义每个小部件的确切位置。它使得GUI能够以适当的方式出现在任何字体大小下。这使得应用程序本地化更加容易,因为翻译语言中的较长文本会导致小部件增长,而不是部分不可见(如果小部件大小固定)。
Haiku操作系统使用的技术
Haiku是用C++构建的,并且具有面向对象的接口。由于BeOS的模块化架构,Haiku的特定组件最初可以在相对独立的环境中由团队开发。在许多情况下,这些组件是作为BeOS组件的替代品在其他操作系统组件完成之前构建的。最早负责创建这些服务器和API的团队包括:
API/接口
开发界面、应用程序和支持工具包。
网络
创建与网络设备相关的API和驱动程序。
输入服务器
该服务器控制输入设备(如键盘和鼠标)与其他系统组件的连接方式。
打印
与打印机驱动和打印服务器交互。
多媒体
开发音频服务器和相关的API。
存储
开发存储工具包和所需文件系统的驱动程序。
数据转换
它为各种文件格式和数据类型重新创建了读取/写入/转换模块。
内核
它创建操作系统的核心部分。
MIDI
它实现了MIDI协议。
屏幕保护程序
它实现了屏幕保护功能。
Haiku 操作系统的特点
Haiku 操作系统具有各种特点。Haiku 操作系统的一些特点如下:
- 主要关注个人计算。
- 提供了强大的面向对象的API,可实现快速开发。
- 具有完全线程化的架构,适用于多处理器/多核的CPU,以实现最大效率。
- 具有类似数据库的BFS文件系统,支持索引元数据。
- 具有专为响应性设计的自定义内核。
Haiku 操作系统的优缺点
Haiku 操作系统具有各种优缺点。Haiku 操作系统的一些优缺点如下:
优点
- 支持多处理器。
- 支持64个日志文件系统。
- 完全优化以实现高效性能,包括多处理器/多核功能。
- 为诸如文件系统(OpenBFS)之类的数据库提供索引元数据支持。
缺点
- 只能在现代硬件(BeBOX)上使用。
- 需要像QEMU或Vmware Virtual之类的应用程序来执行。