Chinaunix首页 | 论坛 | 博客
  • 博客访问: 3571816
  • 博文数量: 205
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 7385
  • 用 户 组: 普通用户
  • 注册时间: 2013-01-23 18:56
个人简介

将晦涩难懂的技术讲的通俗易懂

文章分类

全部博文(205)

文章存档

2024年(8)

2023年(9)

2022年(4)

2021年(12)

2020年(8)

2019年(18)

2018年(19)

2017年(9)

2016年(26)

2015年(18)

2014年(54)

2013年(20)

发布时间:2019-12-31 13:37:28

dpdk rte_memzone_reserve实现 ——lvyilong316 这个函数的功能是创建一个rte_memzone(代码参考dpdk 16.11)。我们上一篇(http://blog.chinaunix.net/uid-28541347-id-5775056.html)讲rte_malloc分配的实际上是一个malloc_elem,而rte_memzone也是描述内存块的一种结构,本质上是一个malloc_elem的封装。rte_m.........【阅读全文】

阅读(9162) | 评论(0) | 转发(1)

发布时间:2019-12-29 20:02:42

Off-CPU 性能分析提起off-CPU就不得不提on-cpu,on-cpu是在线程(进程)在CPU上运行的消耗,off-cpu就是进程(线程)由于某种原因阻塞的消耗,如等待IO,等待锁,等待定时器,等待内存页面的swap等。如下图所示,红色部分属于on-cpu部分,蓝色部分属于off-cpu。一般我们用的perf命令等都是采样on-cpu的指令进.........【阅读全文】

阅读(4973) | 评论(0) | 转发(0)

发布时间:2019-12-07 13:34:54

dpdk vhost-uesr对vIOMMU的支持 ——lvyilong316 关于什么是IOMMU前面的文章已经分析过,这里再简单回顾一下。如下图所示:   IOMMU几乎等同于用于I / O空间的MMU(设备直接使用DMA访问内存)。它位于主内存和设备之间,为每个设备创建虚拟I / O空间并提供一种机制将虚拟I / O内存动态映射到物理内.........【阅读全文】

阅读(8217) | 评论(0) | 转发(0)

发布时间:2019-11-03 18:37:18

Intel VT-d实现概述Intel VT-d是IOMMU技术在intel上的实现,全称是Intel Virtualization Technology for Direct I/O,它是Intel虚拟化技术的一部分,主要针对的是I/O子系统,它的实现主要是通过在硬件上引入重定向单元,该硬件重定向单元用于对I/O子系统的DMA操作和中断传递进行重定向,从而辅助VMM(Virtual Machine.........【阅读全文】

阅读(4374) | 评论(0) | 转发(0)

发布时间:2019-10-13 22:27:40

qemu内存管理之内存分配——lvyilong316这篇文章主要根据qemu2.10版本代码分析一下qemu内存分配的流程。这里说的qemu内存分配实际上是指qemu为guset分配内存,其根本原理就是调用mmap去分配一块内存给guset使用。但是根据不同的需要,mmap的调用方式不同,比如是private的mmap还是share的mmap,是匿名的mmap,还.........【阅读全文】

阅读(11410) | 评论(0) | 转发(0)
给主人留下些什么吧!~~

zf8292024-11-13 13:41

zf829:您好,请教大神一个问题,设备直通给VM时,中断到底会不会导致VM_EXIT吗,如果会,那VIRTIO直通时还会导致IO性能下降吧?“当透传设备产生中断时,vfio_msihandler ISR执行,该函数不做实际的服务程序处理,仅仅通过eventfd_signal激活irqfd_inject,然后最终调用deliver_posted_interrupt向虚机注入中断,中断号即为虚机配置透传设备时的中断号。”  这段描述在代码上我也仔细看了,逻辑肯定是对的,但另一方面我还是不确定中断到底会不会导致VM_EXIT

这里的中断主要是指数据包收发的中断

回复  |  举报

zf8292024-11-13 11:35

您好,请教大神一个问题,设备直通给VM时,中断到底会不会导致VM_EXIT吗,如果会,那VIRTIO直通时还会导致IO性能下降吧?“当透传设备产生中断时,vfio_msihandler ISR执行,该函数不做实际的服务程序处理,仅仅通过eventfd_signal激活irqfd_inject,然后最终调用deliver_posted_interrupt向虚机注入中断,中断号即为虚机配置透传设备时的中断号。”  这段描述在代码上我也仔细看了,逻辑肯定是对的,但另一方面我还是不确定中断到底会不会导致VM_EXIT

回复  |  举报

lemon222024-10-09 22:34

你好,有个关于实现方面的问题:当协议栈收到来自app的数据(如ping)时,会发给tun设备,然后又被发送给vpn程序,程序对其进行加密或者一些处理之后,要发送出去,这里是通过什么方式发送出去的呢?我看你关于itun/tap的文章中写的是通过socket发送给协议栈,然后自动给物理网卡后发送出去,实现来说,就是直接用socket与下一跳建立连接,然后代码用socket发送吗?那这样是不是不会再次经过TUN设备了?因为我看好像有的原理写的是再次写入到tun设备,然后tun设备给协议栈,最后再发送。
这里有点不太清楚如何具体的实现发送的

回复  |  举报

lvyilong3162023-06-06 15:06

zhangtongjian12:你好,请教下,“qemu和vhost-user前后端协商过程”中讲到的初始化多队列时,多队列初始化时,对应的kvm中断机制中irqfd和ioeventfd是和队列数目对应的吗?还是一个虚拟机就一个irqfd和ioeventfd?

和队列对应

回复  |  举报

zhangtongjian122023-06-02 10:29

你好,请教下,“qemu和vhost-user前后端协商过程”中讲到的初始化多队列时,多队列初始化时,对应的kvm中断机制中irqfd和ioeventfd是和队列数目对应的吗?还是一个虚拟机就一个irqfd和ioeventfd?

回复  |  举报
留言热议
请登录后留言。

登录 注册