OS版本:openEuler 22.03 LTS
架构:x86_64
描述:调用内核随机数生成函数,并打印。
// random_num_test.c#include <linux/kernel.h>
#include <linux/module.h>
#include <linux/random.h>static int __init random_num_init(void)
{int i;u32 randnum32 = 0;u64 randnum64 = 0;for (i = 0; i < 10; i++) {randnum32 = get_random_u32();randnum64 = get_random_u64();printk(KERN_INFO "randnum_u32[%d] = %u, randnum_u64[%d] = %llu\n",i, randnum32, i, randnum64);}return 0;
}static void __exit random_num_exit(void)
{return;
}module_init(random_num_init);
module_exit(random_num_exit);
MODULE_LICENSE("GPL");
Makefile如下:
obj-m+=random_num_test.o
CONFIG_MODULE_SIG=n
all:make -C /lib/modules/$(shell uname -r)/build/ M=$(PWD) modules
clean:make -C /lib/modules/$(shell uname -r)/build/ M=$(PWD) clean
输出结果: