在内核中获取pmem设备的虚拟地址

pmem的配置可以参考http://pmem.io/2016/02/22/pm-emulation.html,没有的选项可以不选。不要少选了,不然没有pmem设备滴。

配置完之后,想要在内核中获取pmem的虚拟地址,就先来个系统调用吧。

我的内核是4.4.4。所以在arch/x86/entry/syscall_64.tbl中添加编号,顺序添加即可。然后在include/linux/syscalls.h添加asmlinkage long +系统调用名。OK。

接下来在系统调用实现中使用一下代码

static struct file_system_type you_fs_type = {
	.owner		= THIS_MODULE,
	.name		= "搞事情",

};

fmode_t mode = FMODE_READ | FMODE_WRITE | FMODE_EXCL;
struct block_device *bdev;
unsigned long virt_addr = 0;
unsigned long pfn = 0;
bdev = blkde
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值