Go to file
Augustin Cavalier d230b5fdd3 packagefs: Use object caches for the most used node classes.
Slab statistics from KDL show that on a stock nightly image
(i.e. no additional packages besides the standards installed)
there are 43848 *objects* (not bytes) in the PackageNodeAttribute
cache, and 25090 in the PackageFile cache, so this seems more than
worth it.

The last commit seems to reduce memory usage at boot by about 1%,
this commit seems to not affect it at all; but it is a significant
performance optimization and on systems with more packages installed
the effect may be very noticeable.

Change-Id: I676a642ed6003f82b14396e1f02684575d899362
2019-07-09 22:38:59 -04:00
3rdparty 3rdparty/docker/bootstrap: Fix defaults to be more generic and engine selection 2019-07-01 14:07:03 -05:00
build efi: Don't assume x86 and x86_64 build flags 2019-06-28 18:12:29 +00:00
data debug_server: build a new debug window 2019-06-08 16:24:17 +00:00
docs Some notes about openboot. 2019-05-19 14:31:21 +02:00
headers kernel: Commit missing change to team.h. 2019-07-08 17:58:43 -04:00
src packagefs: Use object caches for the most used node classes. 2019-07-09 22:38:59 -04:00
.editorconfig editorconfig: Add new config file around our unique style 2017-09-26 14:22:32 -05:00
.gitignore .gitignore: Ignore .DS_Store (Mac OS X directory attribute files). 2016-06-18 18:25:40 -04:00
.gitreview gerrit: Add .gitreview config 2018-01-04 00:04:02 -06:00
configure configure: use stat -f on bsds, -c otherwise 2019-06-28 03:31:06 +00:00
Jamfile Jamfile: gutenprint -> gutenprint8. 2019-05-14 19:32:29 -04:00
Jamrules Jamrules: Include the UserBuildConfig before processing repositories. 2019-05-13 19:21:48 -04:00
License.md LICENSE: Rename to License.md, and remove all licenses but the MIT. 2016-07-29 17:36:17 -04:00
ReadMe.Compiling.md ReadMe.Compiling: Various updates. 2019-01-08 19:32:34 -05:00
ReadMe.md ReadMe: Add note about infrastructure 2018-02-23 11:40:11 -06:00

Haiku

Homepage | Mailing Lists | IRC Channels | Issue Tracker | API docs

Haiku is an open-source operating system that specifically targets personal computing. Inspired by the BeOS, Haiku is fast, simple to use, easy to learn and yet very powerful.

Goals

  • Sensible defaults with minimal configuration required.
  • Clean, clear, concise code.
  • Unified desktop environment.

Trying Haiku

Haiku provides pre-built nightly images and release images. Haiku is compatible with a large variety of hardware, but in case you don't want to "take the plunge" and install Haiku on bare metal, you can install it on a virtual machine (VM) instead. If you've never used a VM before, you can follow one of the "Emulating Haiku" guides.

Compiling Haiku

See ReadMe.Compiling.

Contributing

Haiku is a meritocratic open source project with a large variety of tasks. Even if you can't write code, you can still help! Haiku needs designers, (technical) writers, translators, testers... Get involved and help out!

Contributing code

If you're submitting a patch to us, please make sure you're following the patch submitting guidelines.

If you're having trouble finding something in the source tree, you can use one of our OpenGrok servers:

Contributing documentation

The main piece of documentation that still needs work are the API docs (found in the tree at docs/user). Just find an undocumented class, write documentation for it, and submit a patch.

Contributing translations

See wiki:i18n.

Contributing software ports

See HaikuPorts.

Contributing to our infrastructure

See Infrastructure.