Expand description
Process and Task Management
Implements the core structures for process management in Strat9-OS:
- Task structure with state management
- Process abstraction
- Basic scheduler functionality
Re-exports§
pub use sched_classes as sched;pub use scheduler::add_task;pub use scheduler::block_current_task;pub use scheduler::class_table as scheduler_class_table;pub use scheduler::clear_task_wake_deadline;pub use scheduler::configure_class_table;pub use scheduler::cpu_usage_snapshot;pub use scheduler::create_session;pub use scheduler::current_pgid;pub use scheduler::current_pid;pub use scheduler::current_sid;pub use scheduler::current_task_clone;pub use scheduler::current_task_id;pub use scheduler::current_tid;pub use scheduler::get_all_tasks;pub use scheduler::get_parent_id;pub use scheduler::get_parent_pid;pub use scheduler::get_pgid_by_pid;pub use scheduler::get_sid_by_pid;pub use scheduler::get_task_by_id;pub use scheduler::get_task_by_pid;pub use scheduler::get_task_id_by_pid;pub use scheduler::get_task_id_by_tid;pub use scheduler::get_task_ids_in_pgid;pub use scheduler::init_scheduler;pub use scheduler::kill_task;pub use scheduler::log_state as log_scheduler_state;pub use scheduler::note_try_lock_fail;pub use scheduler::reset_scheduler_metrics;pub use scheduler::resume_task;pub use scheduler::schedule;pub use scheduler::schedule_on_cpu;pub use scheduler::scheduler_metrics_snapshot;pub use scheduler::set_process_group;pub use scheduler::set_task_sched_policy;pub use scheduler::set_task_wake_deadline;pub use scheduler::set_verbose as set_scheduler_verbose;pub use scheduler::state_snapshot as scheduler_state_snapshot;pub use scheduler::suspend_task;pub use scheduler::try_wait_child;pub use scheduler::verbose_enabled as scheduler_verbose_enabled;pub use scheduler::wake_task;pub use scheduler::yield_task;pub use scheduler::CpuUsageSnapshot;pub use scheduler::SchedulerMetricsSnapshot;pub use scheduler::SchedulerStateSnapshot;pub use scheduler::WaitChildResult;pub use signal::has_pending_signals;pub use signal::send_signal;pub use signal::Signal;pub use signal::SignalSet;pub use task::Pid;pub use task::Task;pub use task::TaskId;pub use task::TaskPriority;pub use task::TaskState;pub use task::Tid;
Modules§
- elf
- ELF64 loader for Strat9-OS.
- process
- sched_
classes - Scheduling Policies and Classes
- scheduler
- Scheduler implementation
- signal
- Signal handling for Strat9-OS.
- task
- Task Management
- test
- Test module for the scheduler
- timer
- Interval timer support (ITIMER_REAL, ITIMER_VIRTUAL, ITIMER_PROF)
- usertest
- Minimal Ring 3 test task for Strat9-OS.