关于hypercall的实现

      本来只是实验室project中的一个部分,但是我觉得自己从中学到了很多东西~

      我想hypercall应该不需要再介绍什么了吧,其实它真的和system call挺像的,我在网上搜了下,关于hyper call的实现我能收到的比较详细的是用iocol来调用privcmd中实现的hypercall的方法,那个do_print_string 应该也算是我写的第一个hypercall了吧~这里是这种方式的hypercall的链接,我想网上对于这种方法已经讲的很详细了,这里也就不多说,我想说的是关于这种方式的底层实现方法。

      从最容易理解的方面来说,该方法是一种从user态通过调用系统调用iocol来实现hypercall的方法,如果你查看内核源码中driver/xen/privcmd/privcmd.c,你会发现在里面有一段汇编码最终调用了hypercall:

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值