网站设计主要内容seo视频

web/2025/10/3 14:09:32/文章来源:
网站设计主要内容,seo视频,重庆排名优化整站优化,wordpress+微官网主题接前一篇文章#xff1a;中移#xff08;苏州#xff09;软件技术有限公司面试问题与解答#xff08;4#xff09;—— virtio所创建的设备1 在上一篇文章中#xff0c;对于面试所提出的问题“virtio会创建哪些设备#xff1f;”#xff0c;有了初步答案#xff0c;即…接前一篇文章中移苏州软件技术有限公司面试问题与解答4—— virtio所创建的设备1 在上一篇文章中对于面试所提出的问题“virtio会创建哪些设备”有了初步答案即virtio后端设备分为两大类设备virtio PCI控制设备和virtio设备。具体来说就是virtio-pci设备和具体的virtio设备。本回对于细节进行讲解在初步回答此面试问题的基础上深入回答此问题。 virtio设备的初始化 virtio设备首先需要创建一个PCI设备叫作 virtio PCI代理设备就是上边的virtio PCI控制设备这个代理设备挂到了PCI总线上接着virtio代理设备再创建一条virtio总线这样virtio设备就可以挂到这条总线上了。 首先来看virtio PCI代理设备类型的定义在hw/virtio/virtio-pci.c中如下 static const TypeInfo virtio_pci_info {.name TYPE_VIRTIO_PCI,.parent TYPE_PCI_DEVICE,.instance_size sizeof(VirtIOPCIProxy),.class_init virtio_pci_class_init,.class_size sizeof(VirtioPCIClass),.abstract true, }; 其中 TYPE_VIRTIO_PCI TYPE_VIRTIO_PCI的定义在include/hw/virtio/virtio-pci.h中如下 #define TYPE_VIRTIO_PCI virtio-pci OBJECT_DECLARE_TYPE(VirtIOPCIProxy, VirtioPCIClass, VIRTIO_PCI) TYPE_PCI_DEVICE TYPE_PCI_DEVICE的定义在include/hw/pci/pci_device.h中如下 #define TYPE_PCI_DEVICE pci-device typedef struct PCIDeviceClass PCIDeviceClass; DECLARE_OBJ_CHECKERS(PCIDevice, PCIDeviceClass,PCI_DEVICE, TYPE_PCI_DEVICE) VirtIOPCIProxy VirtIOPCIProxy结构的定义也在include/hw/virtio/virtio-pci.h中如下 struct VirtIOPCIProxy {PCIDevice pci_dev;MemoryRegion bar;union {struct {VirtIOPCIRegion common;VirtIOPCIRegion isr;VirtIOPCIRegion device;VirtIOPCIRegion notify;VirtIOPCIRegion notify_pio;};VirtIOPCIRegion regs[5];};MemoryRegion modern_bar;MemoryRegion io_bar;uint32_t legacy_io_bar_idx;uint32_t msix_bar_idx;uint32_t modern_io_bar_idx;uint32_t modern_mem_bar_idx;int config_cap;uint32_t flags;bool disable_modern;bool ignore_backend_features;OnOffAuto disable_legacy;/* Transitional device id */uint16_t trans_devid;uint32_t class_code;uint32_t nvectors;uint32_t dfselect;uint32_t gfselect;uint32_t guest_features[2];VirtIOPCIQueue vqs[VIRTIO_QUEUE_MAX];VirtIOIRQFD *vector_irqfd;int nvqs_with_notifiers;VirtioBusState bus; };VirtioPCIClass VirtioPCIClass结构的定义也在include/hw/virtio/virtio-pci.h中如下 struct VirtioPCIClass {PCIDeviceClass parent_class;DeviceRealize parent_dc_realize;void (*realize)(VirtIOPCIProxy *vpci_dev, Error **errp); }; 再回顾一下virtio PCI代理设备类型的定义 static const TypeInfo virtio_pci_info {.name TYPE_VIRTIO_PCI,.parent TYPE_PCI_DEVICE,.instance_size sizeof(VirtIOPCIProxy),.class_init virtio_pci_class_init,.class_size sizeof(VirtioPCIClass),.abstract true, }; 由定义可知virtio PCI代理设备的父设备是一个PCI设备.parent         TYPE_PCI_DEVICE,virtio PCI代理设备的类型为VirtioPCIClass.class_size     sizeof(VirtioPCIClass),virtio PCI代理设备的实例为VirtIOPCIProxy.instance_size sizeof(VirtIOPCIProxy),注意这是一个抽象设备所以并不能创建其实例只能由其子类去创建。 QEMU源码中定义了所有virtio设备的PCI代理设备如virtio balloon PCI设备、virtio scsi PCI设备、virtio crypto PCI设备等。以virtio scsi PCI设备为例其定义在hw/virtio/virtio-scsi-pci.c中如下 static const VirtioPCIDeviceTypeInfo virtio_scsi_pci_info {.base_name TYPE_VIRTIO_SCSI_PCI,.generic_name virtio-scsi-pci,.transitional_name virtio-scsi-pci-transitional,.non_transitional_name virtio-scsi-pci-non-transitional,.instance_size sizeof(VirtIOSCSIPCI),.instance_init virtio_scsi_pci_instance_init,.class_init virtio_scsi_pci_class_init, }; virtio设备在系统的设备树中的位置如下图所示 所有的virtio设备都有一个共同的父类TYPE_VIRTIO_DEVICE。仍以virtio balloon设备为例virtio balloon设备的定义在hw/virtio/virtio-balloon.c中如下 static const TypeInfo virtio_balloon_info {.name TYPE_VIRTIO_BALLOON,.parent TYPE_VIRTIO_DEVICE,.instance_size sizeof(VirtIOBalloon),.instance_init virtio_balloon_instance_init,.class_init virtio_balloon_class_init, }; 其中 TYPE_VIRTIO_BALLOON TYPE_VIRTIO_BALLOON的定义在include/hw/virtio/virtio-balloon.h中如下 #define TYPE_VIRTIO_BALLOON virtio-balloon-device OBJECT_DECLARE_SIMPLE_TYPE(VirtIOBalloon, VIRTIO_BALLOON) TYPE_VIRTIO_DEVICE TYPE_VIRTIO_DEVICE的定义在include/hw/virtio/virtio.h中如下 #define TYPE_VIRTIO_DEVICE virtio-device OBJECT_DECLARE_TYPE(VirtIODevice, VirtioDeviceClass, VIRTIO_DEVICE) VirtIOBalloon VirtIOBalloon结构的定义在中如下 struct VirtIOBalloon {VirtIODevice parent_obj;VirtQueue *ivq, *dvq, *svq, *free_page_vq, *reporting_vq;uint32_t free_page_hint_status;uint32_t num_pages;uint32_t actual;uint32_t free_page_hint_cmd_id;uint64_t stats[VIRTIO_BALLOON_S_NR];VirtQueueElement *stats_vq_elem;size_t stats_vq_offset;QEMUTimer *stats_timer;IOThread *iothread;QEMUBH *free_page_bh;/** Lock to synchronize threads to access the free page reporting related* fields (e.g. free_page_hint_status).*/QemuMutex free_page_lock;QemuCond free_page_cond;/** Set to block iothread to continue reading free page hints as the VM is* stopped.*/bool block_iothread;NotifierWithReturn free_page_hint_notify;int64_t stats_last_update;int64_t stats_poll_interval;uint32_t host_features;bool qemu_4_0_config_size;uint32_t poison_val; }; 再来回顾一下virtio balloon设备的定义 static const TypeInfo virtio_balloon_info {.name TYPE_VIRTIO_BALLOON,.parent TYPE_VIRTIO_DEVICE,.instance_size sizeof(VirtIOBalloon),.instance_init virtio_balloon_instance_init,.class_init virtio_balloon_class_init, }; 由定义可知virtio balloon设备的实例对象为VirtIOBalloon。具体的virtio设备、virtio PCI代理设备以及virtio公共设备的关系如下图所示 到此就能够完全、完整地回答“virtio会创建哪些设备”这一面试问题了 virtio会创建两类设备 virtio PCI控制设备也可称作virtio PCI代理设备 virtio PCI代理设备virtio-pci是一个抽象设备并不能创建实例只能由其子类去创建实例如virtio balloon PCI设备virtio-balloon-pci-base、virtio scsi PCI设备virtio-scsi-pci-base、virtio crypto PCI设备virtio-crypto-pci等。 virtio设备 virtio 设备virtio-device是一个抽象设备并不能创建实例只能由其子类去创建实例如virtio balloon设备virtio-balloon-device、virtio scsi设备virtio-scsi-device、virtio crypto设备virtio-crypto-device等。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/86251.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

做特色菜的网站徐州市住房和城乡建设局网站

概述 前台服务是用户主动意识到的一种服务,因此在内存不足时,系统也不会考虑将其终止。前台服务必须为状态栏提供通知,将其放在运行中的标题下方。这意味着除非将服务停止或从前台移除,否则不能清除该通知。 在 Android 8.0&…

南海区住房和城乡建设部网站农业网站建设方案 ppt模板下载

中文大模型正在后来居上,也必须后来居上。 数科星球原创 作者丨苑晶 编辑丨大兔 从GPT3.5彻底出圈后,大模型的影响力开始蜚声国际。一段时间内,国内科技公司可谓被ChatGPT按在地上打,毫无还手之力。 彼时,很多企业…

淘宝网站开发多少金额php黄页系统

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼编写程序,登录幼儿园200个小朋友的数据:姓名、性别、年龄、身高、体重、出生日期,分别按年龄排序后输出。要求:(1)登录数据用函数input()(2)按身高排序用函数sort()(3)输出排序结果用…

购物网站黑白如何创业开网店

影片剪辑脚本和按钮的脚本类似,它们都使用事件处理函数,与按钮的on关键字不同,影片剪辑使用 onClipEvent关键字。当某种影片剪辑事件发生时,就会触发相应的事件处理函数。影片剪辑最重要的两种事件是load和enterFrame,…

数字媒体应用 网站开发东莞网站建设十大品牌

JavaScript 只有一种数字类型。可以使用也可以不使用小数点来书写数字。 var pi3.14; // 使用小数点 var x34; // 不使用小数点 极大或极小的数字可通过科学(指数)计数法来写: var y123e5; // 12300000 var z123e-5; // 0.0…

静态网站素材威海建设局网站首页

超级无敌棒棒糖🖌 🌭功能介绍🍕 Demo准备一个数据类准备一个Excel导入Excel行数据转换导出到Excel 🍱新增映射字段类型 🌭功能介绍 💡.Excel 行数据转对象:把导入的Excel 每一行数据进行自动映…

互联网客户做网站wordpress首页显示vip标识

多主机网关仅能工作在TCP服务器模式下,可同时处理多台Modbus TCP的主机请求,串口服务器在一个主机请求未完成时又收到了其他的主机请求此时串口服务器会在RS485总线上进行仲裁输出(通俗地讲就是对后来的指令进行阻塞)。 仿真软件演…

山东网站建设运营煤棚球形网架公司

大家千万不要着急,不要慌张,即使自己并不了解多少汇编代码的知识,即使自己计基课上的基础知识学的并不扎实,也都不要紧,因为这次计基实验考察的重点并不是基础知识,而是对gdb工具的掌握,以及心细…

腾讯云网站备案不能用阿里云品牌推广案例

引言 链表(Linked List)是数据结构中最基础且最重要的线性存储结构之一。与数组的连续内存分配不同,链表通过指针将分散的内存块串联起来,具有动态扩展和高效插入/删除的特性。本文将以C/C++语言为例,从底层原理到代码实现,手把手教你构建完整的链表结构,并深入探讨其应…

广东制作公司网站怎么做外贸网站

Git简介Git是一个开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目。Git是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件。Git与常用的版本控制工具 CVS, Subversion 等不同,它采用了分布式版本库的方…

个人免费域名空间建站dns设置 看国外网站

一、母版页简介 使用 ASP.NET 母版页可以为应用程序中的页创建一致的布局。单个母版页可以为应用程序中的所有页(或一组页)定义所需的外观和标准行为。 母版之所以称为母版,就是将大部分网页上固定内容,比如导航栏,版…

爱电影网站做律师网站公司

(int)faultsGroup是0或1但我总是得到这个错误:列’FaultGroup’不能为null有人告诉我为什么吗?语法看起来不错.MySqlCommand cmdAdd new MySqlCommand("INSERT INTO Faults (" " FaultGroup, Text, Date, IP" ") VALUES (&quo…

长春百度网站优化百度网盘登录入口

前言 公司新需求需要导出ppt给业务用,查阅资料后发现也挺简单的,记录一下。 如有不懂的可以留言!!! 1.安装包 npm install pptxgenjs --save2.引入包 在需要使用的文件中引入 import Pptxgenfrom "pptxgenjs&…

做网站接广告南宁seo按天收费

前几天在玩 FFmpeg 的时后,突然发现 Ubuntu 上多了 php5-ffmpeg 这个扩充套件,就想来玩玩看,看好不好用,有两个结论:读取影片取决于 FFmpeg 的支援性,如果想要什么格式都支援的话,建议自己重新编…

湖南网站开发 岚鸿qq空间登录入口

1、按下win R键,在其中输入:hdwwiz,然后点击“确定”或者按回车键,打开“添加硬件”对话框。2、看到如下界面时,选择“网络适配器”(如下图所示), 在接着出现的界面中,左方“厂商”一栏里选择“…

网站流量作用网站风格总结

SpeechRecognition可以支持多种模型语音转文字,感觉vosk还不错,使用起来也简单一些;百度也有PaddleSpeech,但是安装起来太麻烦,不是这个库版本不对就是那个库有问题,用起来不方便; 安装SpeechR…

海口网站建设是什么意思wordpress文章格式

目录 51.1 输入元素 input 51.1.1 文本域 51.1.2 密码输入框 51.1.3 单选框 51.1.4 复选框 51.1.5 提交按钮 51.1.6 重置按钮 51.1.7 普通按钮 51.1.8 图片按钮 51.1.9 隐藏域 51.1.10 文件域 51.2 多行文本框 51.3 下拉列表框 51.4 表单的综合示例 表单是网页中…

专门做尿不湿的网站最好的app制作公司

环境: 飞凌OK6410A开发板, Windows CE6.0系统 最近在做GPRS通信,可是手头上的GPRS模块(Q2403A)是五线串口的(RXD、TXD、GND、RCS、CTS),老板又不愿买新的模块。所以考虑将调试串口CO…

网站开发步骤规划建筑贴图素材网站

题目描述 求出1~13的整数中1出现的次数,并算出100~1300的整数中1出现的次数?为此他特别数了一下1~13中包含1的数字有1、10、11、12、13因此共出现6次,但是对于后面问题他就没辙了。ACMer希望你们帮帮他,并把问题更加普遍化,可以很快的求出任意非负整数区间中1出现的…

织梦网站源码大连企业建设网站

while 循环是一种前测试循环结构,意味着在每次循环开始时先检查条件是否为真,如果为真,则执行循环体中的代码,然后再次检查条件。只有当条件为假时,循环才会终止。 通过结合实际问题和 while 循环,我们可以…