hermit/syscalls/
processor.rs

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
use crate::arch::get_processor_count;

/// Returns the number of processors currently online.
#[hermit_macro::system]
#[no_mangle]
pub extern "C" fn sys_get_processor_count() -> usize {
	get_processor_count().try_into().unwrap()
}

#[hermit_macro::system]
#[no_mangle]
pub extern "C" fn sys_available_parallelism() -> usize {
	get_processor_count().try_into().unwrap()
}

/// Returns the processor frequency in MHz.
#[hermit_macro::system]
#[no_mangle]
pub extern "C" fn sys_get_processor_frequency() -> u16 {
	crate::arch::processor::get_frequency()
}