Haiku OS developers work on ports for RISC-V and ARM

Haiku OS: desktop

Haiku is an open source operating system currently in development that specifically focuses on personal computing and multimedia.

Inspired by BeOS (BeOperating System), Haiku aspires to become a fast, efficient, user-friendly and easy-to-learn system, without neglecting its power for users of all levels. The Haiku project is known for its requirements regarding the quality of broadcast versions.

About Haiku

Until 2009, no compiled version was available for download, in order to restrict access to people brave enough to compile the system itself and avoid disappointing users without the necessary knowledge to do so.

The system is based directly on BeOS 5 technologies and it is aimed at binary compatibility with applications for this operating system.

The source code for most Haiku operating systems is distributed under the free MIT license, with the exception of some libraries, media codecs, and components taken from other projects.

The system is focused on personal computers, uses its own kernel, built on the basis of a hybrid architecture, optimized for high responsiveness to user actions and efficient execution of multi-threaded applications.

The file system uses OpenBFS, which supports extended file attributes, journaling, 64-bit pointers, support for storing meta tags (for each file, you can save attributes as key = value, which makes files similar to databases) and Special indexes to speed up the selection for the organization of the directory structure are used "B + tree" trees.

From the BeOS code, Haiku includes the Tracker file manager and the Desktop Bar, the source codes of which were opened after BeOS development stopped.

Developers want to bring Haiku to RISC-V and ARM

Now the Haiku operating system developers have started creating ports for the RISC-V and ARM architectures.

And it is that ARM has taken a great importance in the last, Haiku developers have been successful creating the starter packages to run the files necessary for a minimal boot environment.

On the other hand for RISC-V architecture focuses on ensuring compatibility at the libc level (support for the "long double" type, which is sized differently for ARM, x86, Sparc, and RISC-V).

In the process of working on the ports in the main codebase, the GCC 8 and binutils 2.32 versions were updated.

For the development of Haiku products for RISC-V and ARM, Docker containers have been prepared, including all necessary dependencies.

In addition, progress has been made in optimizing the rpmalloc memory allocation system. Changes to rpmalloc and the use of a separate object cache made it possible to reduce memory consumption and reduce fragmentation.

As a result, at the time of the second beta version, the Haiku environment can be installed and loaded on systems with 256 MB of RAM., and perhaps even less. Auditing and targeting of API access has started (some calls will only be available to root).

At the moment the developers report that the ports for these architectures are in the testing phase.

We are now in the testing phase. This was an opportunity to clean up some ARM port issues involving a statically linked libstdc ++.

It is now possible to get the bootstrap packages built, but Haiku's own compilation encounters more similar binding problems later on. For now the solution is to use LLD (from llvm / clang) instead of the traditional ld linker.

On the RISC-V side, the focus is currently on getting our libc to include at least enough support for the type "long double" is a different type on many architectures (ARM uses 64 bits, x86 uses 96, and sparc and ppc use 128 bits but with different formats).


Leave a Comment

Your email address will not be published. Required fields are marked with *

*

*

  1. Responsible for the data: Miguel Ángel Gatón
  2. Purpose of the data: Control SPAM, comment management.
  3. Legitimation: Your consent
  4. Communication of the data: The data will not be communicated to third parties except by legal obligation.
  5. Data storage: Database hosted by Occentus Networks (EU)
  6. Rights: At any time you can limit, recover and delete your information.