#内核模块 #Linux内核 #模块 #内核 #Linux #modprobe #kmod

likemod

一个用于操作Linux内核模块的纯Rust库

2个不稳定版本

使用旧的Rust 2015

0.2.0 2018年9月18日
0.1.0 2018年9月16日

#23 in #内核模块

26 每月下载量

MIT/Apache

17KB
285 代码行数(不含注释)

likemod

Build Status crates.io Documentation

一个用于操作Linux内核模块的纯Rust库。

它支持在Linux上加载和卸载内核模块。更多详细信息,请参阅init_module(2)delete_module(2)手册页。

示例

extern crate likemod;
use likemod::errors;

fn load_modfile(fpath: &std::path::Path) -> errors::Result<()> {
    // Get a file descriptor to the kernel module object.
    let fmod = std::fs::File::open(fpath)?;

    // Assemble module parameters for loading.
    let mut params = likemod::ModParams::new();
    params.insert("bus_delay".to_string(), likemod::ModParamValue::Int(5));

    // Try to load the module. It can fail if the kernel
    // version and signature don't match.
    let loader = likemod::ModLoader::default().set_parameters(params);
    loader.load_module_file(&fmod)
}

更多示例可以在这里找到。

特性

此crate支持以下可选特性

  • async:这提供了一个unload_async方法,使用future。

许可证

许可协议为以下之一

任选其一。

依赖

~0–1MB
~14K SLoC