Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/sos-os/alarm
ALARM: Another Library for Allocating and Releasing Memory
https://github.com/sos-os/alarm
allocator intrusive memory memory-allocation rust rust-lang rust-library sos
Last synced: 15 days ago
JSON representation
ALARM: Another Library for Allocating and Releasing Memory
- Host: GitHub
- URL: https://github.com/sos-os/alarm
- Owner: sos-os
- License: apache-2.0
- Created: 2017-12-04T19:05:53.000Z (almost 7 years ago)
- Default Branch: master
- Last Pushed: 2019-04-02T20:56:38.000Z (over 5 years ago)
- Last Synced: 2024-08-01T16:35:51.528Z (3 months ago)
- Topics: allocator, intrusive, memory, memory-allocation, rust, rust-lang, rust-library, sos
- Language: Rust
- Homepage:
- Size: 192 KB
- Stars: 8
- Watchers: 4
- Forks: 6
- Open Issues: 14
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Contributing: CONTRIBUTING.md
- License: LICENSE-APACHE
- Code of conduct: CODE_OF_CONDUCT.md
- Codeowners: .github/CODEOWNERS
Awesome Lists containing this project
README
ALARM: Another Library for Allocating and Releasing Memory
==========================================================[![Build Status](https://travis-ci.org/sos-os/alarm.svg?branch=master)](https://travis-ci.org/sos-os/alarm)
ALARM ~is~ _will be_ the new [SOS](https://github.com/hawkw/sos-kernel) memory allocator.
**NOTE:** ALARM is currently _very_ early in the development process and most functionality has yet to be implemented.
Crates
------| Crate | Description |
|-------------------|-------------------------------------------------------------------|
| `alarm-base` | Base types and API definitions shared across ALARM allocators. |
| `intruder-alarm` | Intrusive collections library used for allocator data structures. |
| `slabby` | Slab allocators composable on top of ALARM allocators. |Building ALARM
--------------Building ALARM requires the [nightly Rust compiler](https://doc.rust-lang.org/book/first-edition/release-channels.html), which you can install using [`rustup`](https://www.rustup.rs/).
Although some components of ALARM may also be compatible with the stable Rust compiler, the core functionality of this library as a memory allocator introduces a hard dependency on the [`allocator_api`](https://github.com/rust-lang/rfcs/blob/master/text/1398-kinds-of-allocators.md) language feature, currently only available on the nightly compiler.
Continuous integration [builds](https://travis-ci.org/hawkw/alarm) of ALARM run against the _latest_ nightly compiler, so compatibility with older nightlies is not always assured.