# hermit-abi

[![Crates.io](https://img.shields.io/crates/v/hermit-abi.svg)](https://crates.io/crates/hermit-abi)
[![Documentation](https://img.shields.io/badge/docs-latest-blue.svg)](https://docs.rs/hermit-abi/latest/hermit_abi/)
[![License](https://img.shields.io/crates/l/hermit-abi.svg)](https://img.shields.io/crates/l/hermit-abi.svg)

This is small interface to call functions from the [Hermit kernel](https://github.com/hermit-os/kernel).

Please read the README of the [Hermit kernel](https://github.com/hermit-os/kernel) for more information.

## License

Licensed under either of

* Apache License, Version 2.0, ([LICENSE-APACHE](LICENSE-APACHE) or http://www.apache.org/licenses/LICENSE-2.0)
* MIT license ([LICENSE-MIT](LICENSE-MIT) or http://opensource.org/licenses/MIT)

at your option.

## Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.
