1use crate::{
4 sched::{self, thread::Timing},
5 uspace,
6 utils::KernelError,
7};
8
9pub fn init_services() -> Result<(), KernelError> {
13 let init_timing = Timing {
15 period: 8,
16 deadline: 8,
17 exec_time: 2,
18 };
19
20 let init_task = sched::create_task(uspace::core::Init::task_desc())?;
21 sched::create_thread(init_task, uspace::core::Init::main, None, init_timing)?;
22
23 let dummy_timing = Timing {
25 period: 6,
26 deadline: 6,
27 exec_time: 1,
28 };
29
30 let dummy_task = sched::create_task(uspace::core::Dummy::task_desc())?;
31 sched::create_thread(dummy_task, uspace::core::Dummy::main, None, dummy_timing)?;
32
33 let dummy_timing2 = Timing {
35 period: 6,
36 deadline: 6,
37 exec_time: 1,
38 };
39
40 let dummy2_task = sched::create_task(uspace::core::Dummy2::task_desc())?;
41 sched::create_thread(dummy2_task, uspace::core::Dummy2::main, None, dummy_timing2)?;
42
43 Ok(())
44}