虚拟化
文章平均质量分 77
leoufung
Linux Kernel,Virtualization
展开
-
kvm_mmu_get_page函数解析
请先阅读博文 《 __direct_map 函数解析之影子页表的构建》一、kvm_mmu_page 结构在原创 2016-09-30 14:05:11 · 1776 阅读 · 0 评论 -
linux使用dd命令快速生成大文件
dd命令可以轻易实现创建指定大小的文件,如dd if=/dev/zero of=test bs=1M count=1000会生成一个1000M的test文件,文件内容为全0(因从/dev/zero中读取,/dev/zero为0源)但是这样为实际写入硬盘,文件产生速度取决于硬盘读写速度,如果欲产生超大文件,速度很慢在某种场景下,我们只想让文件系统认为存在一个超大文件在转载 2016-10-17 09:32:41 · 1006 阅读 · 0 评论 -
KVM 中断系统结构关系
KVM 中断系统结构关系 现在,KVM虚拟机的中断是在KVM内核模块中实现的(一般我们都是这么使用的),理解数据结构就可以了解一个软件是如何实现的,所以本博文就来对虚拟中断子系统所涉及的数据结构进行梳理,给大家一个中断系统直观简单的感受。这里不多介绍apicv PI以及vt-d PI,以后博文再介绍,也可以直接请教Intel OTC的中断大牛WuFeng同学(邮件地址去邮件列表里面去搜索原创 2016-11-08 13:17:26 · 3688 阅读 · 0 评论 -
VIRTIO的vring收发队列创建流程
针对评审文档那天提出的问题,又看了一下代码,VIRTIO收发队列的创建位置是在GUEST的前端驱动里 GUEST前端驱动,以网络设备为例: Virtio-net: PCI 发现后,通过PCI总线分配收发队列static int virtnet_probe(structvirtio_device *vdev){…… /* * 初始化virt原创 2016-10-28 13:28:41 · 4832 阅读 · 0 评论 -
查看进程CPU运行核的分布
查看进行的CPU分布ps -eo pid,args:50,psr原创 2016-11-29 09:15:28 · 915 阅读 · 0 评论 -
单独编译替换GUEST OS的VIRTIO模块
单独编译替换VIRTIO_PCI进入virtio代码目录cd /home/liufeng/workspace/linux/drivers/virtio开始编译make -C /lib/modules/`uname -r`/build M=`pwd` cleanmake -C /lib/modules/`uname -r`/build M=`pwd原创 2016-11-14 20:30:56 · 1539 阅读 · 0 评论 -
VIRTIO中的前后端配合限速分析
VIRTIO中的前后端配合限速分析 在VIRTIO中,有个一个设备的特性叫做VIRTIO_RING_F_EVENT_IDX,这个特性是用来对前后端速率进行匹配限速的。 一、背景知识我们这里先看avail ring,这个ring有两个用途,一是发送侧(send queue)前端驱动发送报文的时,将待发送报文加入avail ring等待后端的处理,后端处理完后,会将其放入used原创 2016-12-12 17:02:06 · 3763 阅读 · 0 评论 -
NUMA和PCI相关命令
1. 查看设备属于哪个NUMA节点cat /sys/class/net/enp5s0f0/device/numa_node 2. 查看PCI的树状关系lspci -t -v原创 2016-12-05 16:08:22 · 5467 阅读 · 0 评论 -
vhost网络设备才会添加eventfd
vhost网络设备就会从virtio_set_status中调用memory_region_add_eventfd,然后通过kvm_io_ioeventfd_add添加eventfd到KVM,一旦有PIO操作,就通过eventfd通知QEMU,和iothread没有关系一般virtio网络设备(非vhost)从virtio_set_status 进入到virtio_net_vhost_stat原创 2016-12-30 12:48:45 · 1049 阅读 · 1 评论 -
iscsi设置方法[转朋友的总结]
一、 安装iSCSI target/initiatorLinux SCSI target framework (tgt):http://stgt.sourceforge.net/ 二、target/usr/sbin/tgtd检查tcp端口号有没有被占用:netstat -tlunp | grep tgt Create a new target device原创 2017-02-16 15:23:34 · 2071 阅读 · 0 评论 -
CPU 桥片变化
将主板按以下方式摆放:键盘,鼠标,显卡等接口冲左边;CPU冲上;PCI等各种插槽冲下;内存插槽,电源插槽,等冲右边.这样你就会按上北下南来分辨了.上边离CPU最近的是北桥芯片,负责CPU和内存,硬盘之间的数据,一般都带有散热片;最下边的是南桥芯片,一般离BIOS电池很近,负责键盘鼠标等I/O输入输出功能.CPU 南桥接低速设备,北桥接高速设备原创 2017-03-09 11:36:18 · 3081 阅读 · 0 评论 -
GUEST PANIC 相关的处理函数入口
libvirtsrc/qemu/qemu_process.c:static int qemuProcessHandleGuestPanic(qemuMonitorPtr mon ATTRIBUTE_UNUSED, virDomainObjPtr vm, void *opaque) qemuhw/misc/pvpanic.c: static vo原创 2017-03-23 19:35:25 · 896 阅读 · 0 评论 -
VIM 开发环境
VIM 配置git clone https://github.com/fancyseeker/my_vim.gitmv my_vim /home/liufeng/.vimln -s ~/.vim/.vimrc ~/.vimrc下载插件配置git clone https://github.com/gmarik/Vundle.vim.git ~/.vim/bundle/Vun...原创 2015-10-24 22:26:04 · 665 阅读 · 0 评论 -
内核不支持 crashkernel=auto 参数分析
最新的opnfv内核不支持 crashkernel=auto 参数分析,是因为在__parse_crashkernel中少了如下的代码#ifdef CONFIG_KEXEC_AUTO_RESERVE if (strncmp(ck_cmdline, "auto", 4) == 0) { unsigned long long size; size = arch_default原创 2017-04-01 18:23:51 · 8125 阅读 · 0 评论 -
声明 & 推荐博客[置顶]
因网易私加广告,搬家至CSDN,但有些博客图片未搬迁成功,如有需要请参考原博客原博客为网易博客,地址为 blog.163.com/eric_liufeng.原创 2015-09-28 09:57:41 · 1613 阅读 · 1 评论 -
内核调试trace的方法
Ftrace目录/sys/kernel/debug/tracing/events/timer/tick_stop/使用filer过滤输出TRACE代码目录kernel-rt-3.10.0-thinkcloud/include/trace/eventsPerf使用说明目录kernel-rt-3.10.0-thinkcloud/tools/perf/Documentation./perf list查看...原创 2018-04-16 12:51:01 · 2485 阅读 · 0 评论 -
查看PCI-E设备BDF和设备名称对应关系
如何查看PCI-E设备BDF和设备名称的对应关系,可以使用lshw命令[root@vm1 pdcp_src]# lshw -c network -businfoBus info Device Class Description====================================================pci@0000:00:03.0...原创 2018-06-06 15:39:45 · 7185 阅读 · 0 评论 -
实时内核 RT-Mutex 优先级继承(PI)原理过程图
实时内核 RT-Mutex 优先级继承(PI)原理过程图,参考内核文档 rt-mutex-design.txt下图描述了优先级锁继承链表在取锁过程中,轮询链表进行优先级继承的过程 ...原创 2018-10-27 17:44:50 · 937 阅读 · 0 评论 -
X86 32位内存管理
目录 1.内存及寻址2.地址变换3.分段机制4.分页机制5.保护6.去到底部 一、内存及寻址返回目录 二、地址变换![](http://images2017.cnblogs.com/blog/825979/201801/825979-20180120210830521-745157906.png)80X86 从 逻辑地址 到 物理地址 的转换:第一阶段是使用分段机制把...原创 2019-02-07 11:05:55 · 467 阅读 · 0 评论 -
x86 分段机制
目录 1.段的定义2.段描述符表3.段选择符4.段描述符5.LDTR是什么6.直达底部 段的定义 段的介绍分段机制就是把虚拟地址空间中的虚拟内存组织成一些长度可变的称为段的内存单元。 80386虚拟地址空间中的虚拟地址(逻辑地址)由一个段部分和一个偏移部分构成。段是虚拟地址到线性地址转化的基础。每个段有三个参数定义:段基地址,指定段在线性地址空间中的开始地址。基地址是线性地...原创 2019-02-07 11:03:24 · 2473 阅读 · 1 评论 -
BIOS 加电启动原理
BIOS 加电启动原理 目录 教学视频0. 背景描述1.上电加载三部曲2. 什么是实模式3. 启动BIOS,准备实模式下的中断向量表和中断服务程序直达底部 教学视频 BIOS上电过程, BIOS内存布局,BIOS加载中断向量表和中断服务程序 0. 背景描述 - X86 32bit cpu- 内核采用 Linux Kernel 0.11 版本- 使用 qemu 模拟器...原创 2019-02-07 15:59:40 · 1934 阅读 · 0 评论