use std::path::PathBuf;
fn read_sysfs_trimmed(path: &std::path::Path) -> Option<String> {
std::fs::read_to_string(path)
.ok()
.map(|s| s.trim().to_string())
}
pub(crate) fn read_sysfs_value(path: &std::path::Path) -> Option<u64> {
read_sysfs_trimmed(path).and_then(|s| s.parse().ok())
}
pub(crate) fn read_sysfs_string(path: &std::path::Path) -> Option<String> {
read_sysfs_trimmed(path)
}
pub(crate) fn governor_path(sysfs_path: &std::path::Path, cpu_id: usize) -> PathBuf {
sysfs_path.join(format!("cpu{cpu_id}/cpufreq/scaling_governor"))
}