add categories

This commit is contained in:
Jorge Aparicio 2017-04-27 15:37:27 -05:00
parent 731dd54b5f
commit 25f959d329
2 changed files with 19 additions and 10 deletions

View file

@ -3,8 +3,13 @@ authors = [
"Jorge Aparicio <jorge@japaric.io>", "Jorge Aparicio <jorge@japaric.io>",
"Per Lindgren <per.lindgren@ltu.se>", "Per Lindgren <per.lindgren@ltu.se>",
] ]
build = "build.rs" categories = ["concurrency", "embedded", "no-std"]
description = "Real Time For the Masses (RTFM), a framework for building concurrent applications, for ARM Cortex-M microcontrollers"
documentation = "https://docs.rs/cortex-m-rtfm"
keywords = ["arm", "cortex-m"]
license = "MIT OR Apache-2.0"
name = "cortex-m-rtfm" name = "cortex-m-rtfm"
repository = "https://github.com/japaric/cortex-m-rtfm"
version = "0.1.0" version = "0.1.0"
[build-dependencies] [build-dependencies]

View file

@ -1,14 +1,13 @@
//! RTFM: Real Time For the Masses (ARM Cortex-M edition) //! Real Time For the Masses (RTFM), a framework for building concurrent
//! //! applications, for ARM Cortex-M microcontrollers
//! `cortex-m-rtfm` is a framework for building concurrent applications for ARM
//! Cortex-M microcontrollers.
//! //!
//! This crate is based on [the RTFM framework] created by the Embedded Systems //! This crate is based on [the RTFM framework] created by the Embedded Systems
//! group at Luleå University of Technology, led by Prof. Per Lindgren, and uses //! group at [Luleå University of Technology][ltu], led by Prof. Per Lindgren,
//! a simplified version of the Stack Resource Policy as scheduling policy //! and uses a simplified version of the Stack Resource Policy as scheduling
//! (check the [references] for details). //! policy (check the [references] for details).
//! //!
//! [the RTFM framework]: http://www.rtfm-lang.org/ //! [the RTFM framework]: http://www.rtfm-lang.org/
//! [ltu]: https://www.ltu.se/?l=en
//! [per]: https://www.ltu.se/staff/p/pln-1.11258?l=en //! [per]: https://www.ltu.se/staff/p/pln-1.11258?l=en
//! [references]: ./index.html#references //! [references]: ./index.html#references
//! //!
@ -16,9 +15,9 @@
//! //!
//! - **Event triggered tasks** as the unit of concurrency. //! - **Event triggered tasks** as the unit of concurrency.
//! - Supports prioritization of tasks and, thus, **preemptive multitasking**. //! - Supports prioritization of tasks and, thus, **preemptive multitasking**.
//! - **Efficient data race free memory sharing** through fine grained *non //! - **Efficient and data race free memory sharing** through fine grained *non
//! global* critical sections. //! global* critical sections.
//! - **Deadlock free execution** guaranteed at compile time. //! - **Deadlock free execution**, guaranteed at compile time.
//! - **Minimal scheduling overhead** as the scheduler has no "software //! - **Minimal scheduling overhead** as the scheduler has no "software
//! component"; the hardware does all the scheduling. //! component"; the hardware does all the scheduling.
//! - **Highly efficient memory usage**. All the tasks share the call stack and //! - **Highly efficient memory usage**. All the tasks share the call stack and
@ -34,6 +33,11 @@
//! analysis and scheduling analysis techniques. (Though we haven't yet //! analysis and scheduling analysis techniques. (Though we haven't yet
//! developed Rust friendly tooling for that.) //! developed Rust friendly tooling for that.)
//! //!
//! # Requirements
//!
//! - Tasks must run to completion. That's it, tasks can't contain endless
//! loops.
//!
//! # Limitations //! # Limitations
//! //!
//! - Task priorities must remain constant at runtime. //! - Task priorities must remain constant at runtime.