[[437491]]澳门娱乐城
中断是计较机系统中相等病笃的部分,计较机基础表面竹素频频也会花上许多篇幅究诘中断,然而因为操作系统齐替斥地东说念主员处分好中断了,是以除非是系统工程师,不然一般斥地东说念主员对中断很难有一个很直不雅的意识,因此相识如何通过软件的面貌来模拟中断更是一个挑战。
因此,在本章中,咱们毛糙先容硬件中断的基同意趣,然后衔尾中断的基同意趣究诘如何虚构化中断芯片。咱们从首先IBM PC为单核系统狡计的PIC(8259A)机制开动,究诘到为多核系统狡计的APIC,一直到绕开I/O APIC、从建造径直向LAPIC发送基于讯息的MSI机制。
中断芯片不错在用户空间中模拟,也不错在内核空间模拟,然而因为中断芯片需要密集地和Guest以及内核中的KVM模块交互,显着在内核空间模拟更合理,是以KVM在内核中兑现中断芯片的模拟。终末,咱们究诘了为了普及效果,Intel是如何从硬件层濒临虚构化中断进行因循的,以及KVM是如何使用他们的。
虚构中断在接洽Guest款式的CPU处分中断前,咱们当先纪念一下物理CPU是如何反映中断的。当操作系统允许CPU反映中断后,每当实行完一条提醒后,CPU齐将搜检中断引脚是否灵验,一朝灵验,CPU将处分中断,然后再实行下一条提醒,如图3-1所示。
图1 CPU处分中断
当有中断需要CPU处分时,中断芯片将灵验贯串CPU的INTR引脚,也便是说若是INTR是高电平灵验,那么中断芯片拉高INTR引脚的电平。CPU在实行完一条提醒后,将搜检INTR引脚。一样的,虚构中断也效仿这种机制,虚构中断芯片认真将与CPU的INTR引脚连结的“引脚”灵验,然后在每次VM entry时,KVM将搜检虚构中端芯片的INTR“引脚”是否灵验。关于软件虚构的中断芯片而言,“引脚”只是一个变量。若是KVM发现虚构中断芯片有中断肯求,则向VMCS中VM-entry control部分的VM-entry interruption-informationfield字段注入中断信息,然后Guest款式下的CPU将实行Guest系统IDT中对应的中断处分处事,图3-2为单核系统使用PIC中断芯片下的虚构中断经过。
新皇冠汽车价格及图片图2 基于PIC的虚构中断经过澳门娱乐城
具体步履如下:
zh皇冠信用盘哪里申请www.royalsportsbookzonehome.com1)虚构建造向虚构中断芯片PIC发送中断肯求,虚构PIC记载下虚构建造的中断信息。与物理的中断经过不同,此时并不会触发虚构PIC芯片的中断评估逻辑,而是在VM entry时进行。
2)若是虚构CPU处于就寝气象,则叫醒虚构CPU,即使虚构CPU对应的线程干涉物理CPU的就绪任务部队,随时不错准备获得运行契机。
3)当虚构CPU开动运行时,在其切入Guest前一刻,KVM模块将搜检虚构PIC芯片,检察是否有中断需要处分。此时,KVM将触发虚构PIC芯片的中断评估逻辑。
4)一朝虚构中断芯片计较出有需要Guest处分的中断,则将中断信息注入到VMCS中的字段VM-entry interruption-information。
博彩网站排名澳门UA银河影院5)干涉Guest款式后,CPU将调用Guest IDT中相应的中断处事处分中断。
PIC只可因循单处分器系统,关于多处分器系统,需要APIC因循。关于虚构化而言,显着也需要虚构相应的APIC,然而其骨子上与PIC基本交流,如图3-3所示。
图3 基于APIC的虚构中断经过澳门娱乐城
与单处分器情况比较,多处分器的虚构中断主要有2点不同:
1)在多处分器系统下,不同CPU之间需要收发中断,因此,每个CPU差别需要关联一个独处的中断芯片,这个中断芯片称为LAPIC。LAPIC不仅需要接受CPU之间核间中断IPI(Inter-Processor Interrupt),还需要接受来自外设的中断。外设的中断引脚不可能贯串到每个LAPIC上,因此,有一个和洽的I/O APIC芯片认真贯串外设,若是一个I/O APIC引脚不够用,系统中不错使用多个I/O APIC。LAPIC和I/O APIC齐接到中断总线上,通过总线进行通讯。是以在虚构化场景下,需要虚构LAPIC和I/O APIC两个组件。
赌神2)在多处分器情况下,只是是叫醒可能在就寝的虚构CPU线程还不够,若是虚构CPU是在另外一颗物理CPU上运行于Guest款式,此时还需要向其发送IPI中断,使观念CPU从Guest款式退出到Host款式,然后下一次VM entry时,进行中断注入。
Guest款式的CPU和虚构中断芯片处于两个寰宇,是以处于Guest款式的CPU不行搜检虚构中断芯片的引脚,只可在VM entry时由KVM模块代为搜检,然后写入到VMCS。是以,一朝有中断需要注入,那么处于Guest款式的CPU一定需要VM exit,退出到Host款式,这是一个很大的支拨。
为了去除VM exit这个支拨,Intel在硬件层濒临中断虚构化进行了因循。LAPIC使用一个页面大小内存存储寄存器,咱们知说念,当Guest造访LAPIC这些寄存器时,将导致VM exit,然而事实上,某些造访LAPIC的这些寄存器,并不需要VMM介入,是以也就无需VM exit,是以Intel兑现了一个处于Guest款式的这么的一个页面,称之为virtual-APIC page。除次以外,Intel还在Guest款式下兑现了部分中断芯片的逻辑,比如中断评估,咱们将其称之为虚构中断逻辑,如图4所示。
在2024年欧洲杯半决赛中,法国队对阵葡萄牙队,比赛进行到第60分钟,法国队在一次反击中取得了领先,葡萄牙队急忙加强攻势。图4 硬件虚构化因循下的中断虚构化经过
皇冠手机网址多少Intel从硬件层濒临虚构化进行了因循,兑现了一个处于Guest款式的用于存储中断关连寄存器的virtual-APIC page。除次以外,Intel还在Guest款式下兑现了部分中断芯片的逻辑,用于中断评估和递交。
在此情况下,惟有LAPIC收到中断,其不必再恭候下一次VM entry时,被迫实行中断评估,而是主动向处于Guest款式的CPU奉告信息,这个位置便是posted-interrupt descriptor。若是指标CPU处于Guest款式,则通过一个绝顶的核间中断posted-interrupt notification呈文指标CPU,从而触发虚构的中断逻辑,其会在Guest款式下进行评估评估况且向虚构CPU递交中断,而无谓再通过VM exit/VM entry的面貌注入中断。
在硬件虚构化的因循下,在Guest款式下有了气象和逻辑,就不错模拟许多中断的活动,比如造访中断寄存器、追踪中断的气象以及向CPU递交中断等。因此,许多中断活动就无谓VMM介入了,从而大大的减少了VM exit的次数。虽然有些写中断寄存器的操作是具有反作用的,比如通过写icr寄存器发送IPI中断,这时就需要触发VM exit,由土产货LAPIC向指标LAPIC发送IPI中断。
王柏生 资深手艺大家,先后赴任于中科院软件所、红旗Linux和百度,现任百度主任架构师。在操作系统、虚构化手艺、漫步式系统、云计较、自动驾驶等关连范围栽植多年,有着丰富的实验教会。著有畅销书《深度探索Linux操作系统》(2013年出书)。
谢广军 计较机专科博士,毕业于南开大学计较机系。资深手艺大家,多年的IT行业责任教会。现担任百度智能云副总司理,认真云计较关连家具的研发。多年来一直从事操作系统、虚构化手艺、漫步式系统、大数据、云计较等关连范围的研发责任,实验教会丰富。
本文转载自微信公众号「Linux阅码场」,不错通过以下二维码关心。转载本文请说合Linux阅码场公众号。
扬子晚报网9月12日讯(记者 刘浏)秋风起、板栗香,今秋的第一口糖炒栗子你吃了吗?记者了解到,南京秋日街头巷尾的小吃炒栗子已经纷纷“上线”,知名品牌金味栗子门前也排起了长队。与往年不同的是,等候购买的队伍边出现了各种“代购”,只要加价几元,热乎乎的栗子就能一拎就走。
澳门娱乐城