自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(10)
  • 资源 (2)
  • 收藏
  • 关注

原创 如何通过guestfish 修改qcow2镜像的用户密码

在使用qemu&kvm时,除了通过下载操作系统的iso镜像文件,然后挂载为一个cd设备,像在物理机上安装操作系统的方式来安装操作系统的方式外,另一种更简单的方式是直接从redhat或者ubuntu 官网下载已经制作的镜像文件,下载的镜像在使用之前,需要修改一下系统的登陆密码,否则将无法登陆,本文以centos7 为例介绍修改镜像密码的过程。第1步:下载镜像,下载地址:http://cloud.centos.org/,可以根据需要选择合适的版本liang@ll:/home/liang..

2020-09-27 19:18:27 1644 1

转载 GPU虚拟机创建时间深度优化

从公有云服务商那里购买过虚拟主机的资深用户,一般会发现这么个规律:创建一台CPU虚拟主机是比较快的,但是要创建一台包含GPU卡的虚拟主机通常需要等比较长的时间,整个创建过程短则数十秒钟,长则数分钟。对于绝大多少的用户来说,虚拟主机的创建时间长一点对他们影响并不大,因为创建虚拟机属于相对低频操作。但是也会有一些特定的用户由于其业务场景交互性比较强,会对虚拟主机的创建时间有相对苛刻的要求,因为过长的创建时间会导致其业务用户体验很差。本文将从虚拟化的角度来介绍GPU虚拟主机创建时间长背后的原因,以及相关的优化方法

2020-09-23 23:57:31 212

原创 如何用火焰图来分析程序中的热点

本文将以对包含GPU透传设备的虚拟机实例创建时间消耗为例来说明如何使用火焰图来分析创建虚拟机实例过程中的热点,以便进行进一步的性能优化。echo "0000:03:00.0" > /sys/bus/pci/devices/0000\:03\:00.0/driver/unbindecho "10de 1b38" > /sys/bus/pci/drivers/vfio-pci/new_idperf record --call-graph dwarf /usr/libexec/qemu-k

2020-09-07 16:03:10 339

原创 基于fork机制的qemu 共享内存热升级实现

qemu 热升级一般是通过热迁移来实现的,跨主机的热迁移或者本地的热迁移都能用于qemu 的热升级。基于热迁移的方案存在以下几个主要问题: a. 消耗资源多; b. 升级过程较长;c. 业务有感知。导致这些问题的一个最主要的因素是在热迁移的过程中要迭代传输大量的guest内存数据。在跨主机的热迁移场景中,内存数据的复制传输不可避免,但是在同一个物理机上,可以通过某种共享内存的机制避免数据复制,从而...

2020-09-07 15:57:41 1076 1

原创 用perf 获取内核函数的执行时间

在工作中排查问题的时候,我们经常需要通过获取某个函数的执行时间来定位问题。比较原始的方式是通过在代码中埋点,然后打印出不通点上的时间戳,或者计算点之间的时间差,这种方式简单直接。但是在没有源代码的时候,或者如果要在某个在线的系统上获取相关信息的时候,这种方式就无能为力了。但是通过perf ,我们很容易办到。下面我们以获取内核中函数 pci_reset_function的执行时间为例来介绍具体怎么做:root@ll:~$ perf probe pci_reset_functionAdded ne

2020-06-05 09:09:41 3486

原创 Qemu 增量备份功能当前的问题及解决方案

Qemu 中提供了一种增量的backup机制,其核心的思想是写时复制,这里的写表示的是guest的写操作,其主要的工作原理是backup的工作线程会根据qemu中维护的block dirty bitmap 将新写入的数据块写到备份的存储设备当中,如果在备份的工作中block dirty bitmap中对应的某个数据块被guest写入,qemu会优先将img 中的该数据块复制到备份存储设备中,然后在...

2020-02-21 11:35:55 776

原创 如何在Android中获知屏幕打开或者关闭

在有些Android 应用中需要z

2014-05-06 13:54:28 586

原创 i386 和 x86_64 汇编调用C 函数参数传递规则(GCC)

在ubuntu12.04 AMD64 位系统下

2014-04-11 15:05:52 7277

转载 Linux Shell 常用快捷键

Linux Shell之常用快捷键,其中我要强烈推荐Ctrl+r,为汪文浩首次在组内介绍,谁用谁知道…:        history 显示命令历史列表        ↑(Ctrl+p) 显示上一条命令        ↓(Ctrl+n) 显示下一条命令        !num 执行命令历史列表的第num条命令        !! 执行上一条命令   

2014-03-27 21:15:05 370

原创 一种用C语言实现的打印程序源码的方法

今天面试,被问到如何用C语言实现一个能打印自身源代码的程序,说了一些思路,回来后发现思路有问题,只好在机器上尝试。一下是一个种可行的实现方法,源码如下:#include #define LINE_MAX_NUM 1024int main(){ char buf[LINE_MAX_NUM] = {0}; FILE *file = fopen(

2013-09-26 14:28:55 1426

OpenGL ES 3.0.2 spec

OpenGL ES 3.0.2 规范pdf文档

2013-09-16

sd specification

SD 卡规范的简化版本,比较精炼。写驱动的兄弟可以看看

2009-12-14

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除