32 lines
677 B
Rust
32 lines
677 B
Rust
use kernel_arch::{Architecture, ArchitectureImpl, KernelTableManagerImpl};
|
|
use libk_mm::phys::GlobalPhysicalAllocator;
|
|
|
|
#[macro_use]
|
|
pub mod runtime;
|
|
|
|
pub mod binary;
|
|
pub mod debug;
|
|
pub mod futex;
|
|
pub mod mem;
|
|
pub mod process;
|
|
pub mod sched;
|
|
pub mod sync;
|
|
pub mod thread;
|
|
pub mod types;
|
|
|
|
pub type TaskContextImpl =
|
|
kernel_arch::TaskContextImpl<KernelTableManagerImpl, GlobalPhysicalAllocator>;
|
|
|
|
use sched::CpuQueue;
|
|
pub use types::{AtomicThreadState, ThreadAffinity, ThreadId, ThreadState};
|
|
|
|
/// Returns local CPU index
|
|
#[inline]
|
|
pub fn cpu_index() -> u32 {
|
|
ArchitectureImpl::cpu_index::<CpuQueue>()
|
|
}
|
|
|
|
pub fn cpu_count() -> usize {
|
|
ArchitectureImpl::cpu_count()
|
|
}
|