Skip to content

Latest commit

 

History

13 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 

Repository files navigation

scheduling

Scheduling exposes schedubility tests for realtime systems.

Algorithms supported:

  • EDF
  • FPPS
  • FPNS
  • FPTS
  • FPDS

For these different algorithms multiple task structs are available that can be constructed using the task! macro.

The more information a task contains the more schedubility tests are available within the taskset i.e. a simple taskset constaining only tasks with c, t, d cannot support FPTS.

Example

use scheduling::prelude::*;

fn main() {
    let s = TaskSet::new(vec![
        task!(c: 2, t: 5, d: 5, p: 3),
        task!(c: 2, t: 7, d: 7, p: 2),
        task!(c: 2, t: 7, d: 7, p: 1),
    ]);
    println!("{:?}", s.solve_edf())
    println!("{:?}", s.solve_fpps())
    println!("{:?}", s.solve_fpns(Numbers::Real))
}

About

Automating schedubility tests for realtime systems

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages