自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(188)
  • 资源 (3)
  • 收藏
  • 关注

原创 oVirt二次开发

为了能更好的使用oVirt平台,我们需要对它做对一些工作,使得它对于我们是可控和友好的:   对oVirt平台的定制化;   新功能的开发;   bug fix;   平台性能;   虚拟机内的使用体验(播视频,使用办公软件,打开复杂的网页。。。);   平台的安装部署简化,及提高部署的稳定性;经过了多年的oVirt开发总结的一个大概,每一个都包含很多东西和细节的,欢迎...

2018-08-20 15:08:55 162038 12

原创 Linux内核开启kdump

GRUB_CMDLINE_LINUX="crashkernel=512M rd.lvm.lv=zstack/root rd.lvm.lv=zstack/swap rhgb quiet intel_iommu=on modprobe.blacklist=snd_hda_intel,amd76x_edac,vga16fb,nouveau,rivafb,nvidiafb,rivatv,amdgpu,radeon" //修改或添加crashkernel=512M。输出 0 表示没有开启。

2023-12-29 11:34:14 527

原创 qemu里面 qapi_free_SocketAddress 和 g_free的区别

QAPI 是一种用于定义和生成 QEMU API 的框架,而 qapi_free_SocketAddress 则是用于释放由 QEMU API 创建的 SocketAddress 对象的内存。总结来说,qapi_free_SocketAddress 是用于释放 QEMU API 中特定结构体的内存,而 g_free 是 GLib 库中通用的内存释放函数。在 QEMU 中,qapi_free_SocketAddress 和 g_free 是两个不同的函数,用于释放内存资源的操作。

2023-12-08 11:32:33 153

原创 CXL:Compute Express Link

其高性能、灵活性和内存一致性等特点使其成为应对不断增长的计算需求和数据处理挑战的理想选择。随着 CXL 生态系统的不断成熟和扩大,预计它将在未来的计算领域发挥越来越重要的作用。CXL 的出现旨在推动数据中心和企业级计算应用的发展,提供更高的内存带宽和更低的延迟,以满足不断增长的计算需求。另一个重要的特性是 CXL 的内存一致性,它确保了共享内存的一致性和可靠性,为计算加速器等设备的协同工作提供了基础。这意味着 CXL 可以支持更高效的数据传输和处理,从而加速复杂的计算任务并提高系统整体的性能。

2023-11-27 10:50:09 163

原创 qemu-kvm下的cuda虚拟化

A guest侧:编写设备驱动,实现 open、close、read、write、ioctl 接口,承接guest侧应用的 cuda api 请求;B host侧:接收 guest 过来的api接口及参数数据,将参数重新组装,然后调用物理显卡的cuda api,并将所需结果返回给guest侧;当前AI和大模型火热,对算力的需求越来越高,如何高效的利用算力资源问题被凸显出来了。cuda虚拟化,一张显卡的cuda算力能同时被多个虚拟机使用。在虚拟化场景下,单张显卡的算力能同时被多个虚拟机调度使用。

2023-09-20 14:46:39 525

原创 水桶算法示例

【代码】水桶算法示例。

2023-09-12 18:22:29 98

转载 Linux中的静态库与动态库

动态库:这类库的名字一般是libxxx.M.N.so,同样的xxx为库的名字,M是库的主版本号,N是库的副版本号。调用动态库的时候有几个问题会经常碰到,有时,明明已经将库的头文件所在目录 通过 “-I” include进来了,库所在文件通过 “-L”参数引导,并指定了“-l”的库名,但通过ldd命令察看时,就是死活找不到你指定链接的so文件,这时你要作的就是通过修改 LD_LIBRARY_PATH或者/etc/ld.so.conf文件来指定动态库的目录。动态库的后缀为*.so。相当于一个可执行文件。

2023-08-30 12:01:35 228

原创 获取系统上的显卡信息

【代码】获取系统上的显卡信息。

2023-08-24 17:52:40 96

原创 云计算疑难杂症解决方案 - 自研推流服务显示完整的开机画面

推流服务需要把整个开机的画面也给客户展示出来,例如向日葵,todesk等远程软件,当系统关机,或者蓝屏了的时候,推流软件是没有感知的,增加了运维难度。1. 复用spice-server的视频通道,当推流服务本身的视频流中断了,就获取spice-server的视频通道内的数据,

2023-07-29 10:18:04 158

翻译 oVirt环境搭建脚本

【代码】oVirt环境搭建脚本。

2023-07-13 14:07:15 126

原创 开源的是最贵的

另外,开源软件在商业环境中的成功案例往往都有相应的商业公司支持,以提供更加可靠和稳定的产品和服务。这也需要用户支付相应的费用。因此,虽然开源软件本身是免费的,但在实际使用中可能需要承担更高的总体成本。「开源的是最贵的」这句话是指,虽然开源软件本身是免费的,但在实际使用过程中可能需要承担更高的成本。集成成本:开源软件通常不是即插即用的,用户需要对其进行定制和集成,以适应其业务需求。人才成本:开源软件的使用需要具备相应的技能和经验。维护成本:开源软件的更新和维护需要用户自行承担,例如安全漏洞修复、功能升级等。

2023-05-29 10:19:52 88

原创 KVM性能优化方向

KVM(Kernel-based Virtual Machine)是一种基于Linux内核的虚拟化解决方案,它将内核作为虚拟机监视器,通过虚拟化硬件资源提供虚拟机运行环境。CPU虚拟化:CPU虚拟化方面的优化可以显著提高虚拟机的性能,如使用硬件辅助虚拟化(如Intel VT-x或AMD-V)等技术,可大大提高CPU虚拟化效率。内存管理:KVM在虚拟化时需要处理来自多个虚拟机的内存需求,因此在内存管理方面的优化可以有效减少内存开销以提高性能。

2023-05-18 10:43:16 618

原创 集显和独显

集显和独显。

2023-05-09 11:04:15 99

原创 云计算疑难杂症解决方案 - USB重定向

不用spice协议,自有开发的远程桌面协议,那么可以将usb重定向的逻辑整理成一个模块,具体私信。在办公环境下,如何将推流客户机、瘦终端...上的usb设备重定向到虚拟机内。客户机系统,虚拟机系统是Windows或者Linux。应用 spice 协议开源项目,这个协议已经支持了。

2023-05-05 14:27:47 5548

原创 使用virsh远程连接主机遇到的问题

by。

2023-04-25 15:04:38 835

原创 云计算疑难杂症解决方案 - 多类显卡虚拟机内的驱动问题

需要显卡透传后虚拟机开机直接能用,但是显卡类型可能会一直换,例如当前机柜是1660s,下一个机柜又是4090ti,那不可能把所有的驱动都安装到虚拟机内做成模板,这样的话模板就太大了,而且不一定驱动会适配好。制作了一个虚拟机模板,虚拟机需要用到显卡透传,

2023-04-23 11:58:13 162440

原创 Cross compiling Windows binaries from Linux

【代码】Cross compiling Windows binaries from Linux。

2023-04-18 20:50:14 467

原创 云计算疑难杂症解决方案一

基于共享存储的环境,如果基于模板批量启动很多虚拟机,会出现启动很慢的情况,甚至导致虚拟机启动失败;网络带宽不足,共享存储iops不够,或者突然碰到存储内在进行数据重构之类的;

2023-04-18 11:09:18 159546

原创 CPU performance

CPU

2023-03-24 10:56:30 416

原创 qemu-kvm修改虚拟机的cpu名称

可以随意定制虚拟机cpu的名称,例如下面的i11名称。

2023-03-24 09:58:40 494

原创 H264软编码导致画面切换时不流畅

X264每帧slice的数量不只是受i_slice_count 参数影响,也受线程数量i_threads 影响。但当一帧被划分为多个slice时,如果不将多个slice合成一帧数据进行发送,则导致接收端不能正常解码。在推送RTMP时,每个消息应该为一个完整的vidoe帧,而不是单个slice。使用x264软编解码时,切换画面的时候会很卡,不切换画面的时候很流程。

2022-11-02 10:16:11 438

原创 Linux下判断图片格式

Linux图片格式判断

2022-09-21 10:10:00 737

原创 qemu-kvm IO优化

主要是磁盘方面的IO资源优化四个方面去着手优化: 1.磁盘类型选择 2.缓存模式选择 3.AIO 异步读写方式选择 4.磁盘IO调度器选择1. 磁盘的类型有IDE 、SATA 以及virtio 三种 建议使用 virtio2.磁盘缓存模式 目前KVM这块支持5种磁盘缓存模式,writethrough、writeback、none、directsync或者unsafe。一般用到的就是前面3种,后面两种几乎不会使用。writethrough:(直写模式)数据直接...

2022-04-14 20:28:39 1891

原创 qemu源码调试出现锁错误

调试命令行# gdb -tui --args /mnt/qemu-debug/bin/qemu-system-x86_64 -cpu host -smp 4,sockets=1,cores=4 -m 4096 -drive file=/mnt/win10.qcow2,format=qcow2 --enable-kvm -spice port=5900,ipv4,disable-ticketing,image-compression=auto_glz,jpeg-wan-compression=always

2022-04-13 16:35:30 777

原创 AMD的cpu透传给虚拟机后性能慢

问题:通过cpu passthrough模式,在虚拟机内跑游戏,发现帧数一直上不去,fps很低解决方案:修改:<cpu mode="host-passthrough" check="none" migratable="off"> <topology sockets="1" dies="1" cores="5" threads="2"/> <cache mode="passthrough"/> <feature poli

2022-04-13 16:28:36 3873

原创 qemu时钟虚拟化

虚拟机启动参数-rtc base=localtime,driftfix=slew(gdb) bt#0 0x00005555558f3184 in mc146818_rtc_init (bus=0x555557057dd0, base_year=2000, intercept_irq=0x0) at /home/work/qemu/hw/rtc/mc146818rtc.c:981#1 0x0000555555945707 in pc_basic_device_init (pcms=0x55...

2022-01-11 12:10:47 1198

原创 虚拟机和宿主机之间的高速通信方案

虚拟机和宿主机之间高速通信1 背景 略2 技术方案2.1 通过虚拟串口通过serial channel实现,数据传输效率较高,但是不适合传输数据量大的数据。2.2 通过共享文件夹通过9pfs实现,数据传输效率高,但是不适合做视频数据流的存储传输。2.3 tcp socket通信虚拟机和服务器通过网络socket传输数据,数据传输效率低,数据传输延时较高,不适合实效性高的视频流场景。2.4共享内存方案:在服务器上申请一块内存...

2021-12-31 10:14:39 1044

原创 分布式私有云浅析

2021-11-15 17:14:15 342

原创 C语言-用单链表实现集合

#include <stdio.h>#include <stdlib.h>#include <string.h>//单链表结构体表示集合settypedef struct Link { char *data; struct Link *next;} set;//带头节点的单链表set *initSet(){ set *p; if((p = (set *)malloc(sizeof(set))) == NULL) { .

2021-10-14 17:50:47 1427

原创 多显卡透传提示43错误分析

问题服务器上插入两张nvidia显卡,进行透传,只有一张显卡能够透传,另外一张能透传进虚拟机,但是安装驱动后不能正常使用,提示43错误。分析两个虚拟机的配置xml都是一样的,都执行了unbind操作a.首先在两个虚拟机中交换显卡透传,还是只有那一张显卡不能透传b.服务器内核日志没有信息输出,windows虚拟机内也是只有43现象c.怀疑是这块显卡被服务器系统使用了排查通过命令查看:# lspci | grep VGA03:00.0 VGA compatible co...

2021-09-30 14:31:35 2120

原创 Linux内核开启kdump

Index of /7/x86_64ulimit设置# ulimit -c 输出 0 表示没有开启 输出 unlimited 表示开启//将这个加到 /etc/profile 或者 /etc/rc.d/rc.local 中# ulimit -c unlimited修改启动项[root@localhost ~]# cat /etc/default/grub GRUB_TIMEOUT=5GRUB_DISTRIBUTOR="$(sed 's, release .*$,,g' /

2021-09-16 11:01:59 1942

原创 云游戏商业模式探索

1. 概念 2. 市场现状分析 2.1 新模式和老游戏模式 2.2 目前的方案 2.3 目前存在的痛点 3. 技术方向 3.1 端游 3.2 手游 3.3 技术门槛 云端游:成本较高,门槛较低,虚拟化方案成熟; 云手游:如果使用手机板卡方案,利旧及后期维护成本较高,用虚拟化方案(虚拟机/容器)的技术门槛很高,目前国内还没有综合很好的方案; 4. 制定战略 结合自身优势定战略方向 4.1 硬件优势 4.2 软...

2021-09-15 16:01:08 158320 1

原创 Android In The Cloud

The Forecast It is evident that computing platforms are currently undergoing a period of upheaval. The wide adoption of mobile platforms, the decline of the previously dominant PC systems, and the recent rise in the use of ChromeOS platforms have bee..

2021-09-13 18:37:06 176

原创 scrcpy服务端代码分析

源码 Git clone https://github.com/barry-ran/QtScrcpy.git

2021-06-01 19:56:56 1957 5

原创 华为云手机

硬件:华为鲲鹏920服务器方案:容器效果:

2021-04-22 14:45:59 198

原创 vdsm-client接口编写

python2/3>>> import yajsonrpc>>> from yajsonrpc import stomp>>> from yajsonrpc import stompclient>>> import uuidclient = stompclient.SimpleClient('192.168.244.145', 54321, True, incoming_heartbeat=stomp.DEFAULT_

2021-03-23 15:25:36 325

原创 虚拟机快照的奇招

创建虚拟机# /mnt/debug/bin/qemu-system-x86_64 -enable-kvm -vga std -m 8196 -smp 4 -cpu host -net nic,model=e1000 -net user -hda /home/centos8.img -vnc 0.0.0.0:10 -monitor stdio命令生成内存文件(qemu) migrate_set_speed 4095m(qemu) migrate "exec:cat > /mnt/STA

2021-03-05 17:08:50 199

原创 云游戏GPU虚拟化技术分析

已分析完成,资料整理排版中;欢迎留言沟通

2021-02-27 11:31:13 160543 5

原创 spice部分问题

在https://spice-space.org/的官方资料中,提到SPICE会自动识别终端的处理能力,对于有能力的终端,会传输QXL命令而不是渲染好的图形,但根据demo的效果和源码的阅读,似乎并没有发现这个能力,请问可能是哪里的配置不对吗?这个功能具体对应spice server的那部分呢?>>>现在的代码是会有服务端根据终端的能力来做一些提前做一些动作,但是qxl指令流的应该是没有的;===就是说Server端直接向Client的绘图命令传递看来是不存在的对吗?即使是系统窗口之类

2021-02-27 10:30:21 1141 14

原创 anbox安装编译

建议是在Ubuntu操作系统上操作本人使用的是Ubuntu 20.04一 原生代码编译$ git clone https://github.com/anbox/anbox.git --recurse-submodules$ cd anbox$ mkdir build$ cd build$ cmake ..$ make$ sudo make install二 定制化 2.1 定制anbox界面管理部分 2.2 定制安卓操作系统 2.3 定制容器管理部分$ ARCH=$(

2021-02-26 11:09:08 902 2

能运行王者荣耀的云游戏方案demo

能运行王者荣耀云游戏方案demo

2021-09-10

centos7下的flashcache的RPM包

centos7的内核版本为3.10.0-327.10.1.el7.x86_64; flashcache版本为stable_v3.1.3;

2018-05-22

gwt-dev-plugin-firefox26

GWT开发调试插件

2017-07-04

空空如也

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

TA关注的人

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