PC端建议访问 https://www.liuluanyi.cn 或点击底部原文阅读 ---- 安装要求 由于 APIC-EM 会调用部分 PI 的功能,在安装 APIC-EM 之前,必须先安装好 PI...选择Create a new APIC-EM cluster: ? 3. 输入APIC-EM网卡配置参数,安装向导会提示用户为每块网络配置相应的参数,APIC-EM默认的主用网卡是eth0。...输入登录Linux(grapevine)的信息,这部分参数用于登录APIC-EM Linux Console。 ? 7....输入APIC-EMadmin用户名和密码,这个用户名/密码用于登录APIC-EMWeb接口。 ? 8. 输入NTP Server IP地址。 ? 9....APIC-EM安装成功。
惠伟:linux time和kvm time虚拟化综述zhuanlan.zhihu.com 在这篇中遗留了几个问题,先尝试回答一下,不一定准确,代码太多,看不过来,全靠猜测,代码的历史很长,都是智慧的结晶...有全局hpet和局部local apic timer,cpu会用哪个呢?...linux要正常运转,不能没有timer中断,就像人不能没有心跳,NO_HZ_IDLE和NO_HZ_FULL也只是把timer中断的周期拉长了一点。...static void apic_timer_expired(struct kvm_lapic *apic, bool from_timer_fn) { if (!...(apic->vcpu)) { kvm_apic_inject_pending_timer_irqs(apic); return; } } https://github.com/torvalds
有全局hpet和局部local apic timer,cpu会用哪个呢?...linux要正常运转,不能没有timer中断,就像人不能没有心跳,NO_HZ_IDLE和NO_HZ_FULL也只是把timer中断的周期拉长了一点。...kvm_set_lapic_tscdeadline_msr -->start_apic_timer -->restart_apic_timer {...static void apic_timer_expired(struct kvm_lapic *apic, bool from_timer_fn) { if (!...(apic->vcpu)) { kvm_apic_inject_pending_timer_irqs(apic); return; } } https://github.com/torvalds
VPSee 前天收到一位网友的邮件提到了 SMP IRQ Affinity,引发了今天的话题:D,以下操作在 SUN FIre X2100 M2 服务器+ 64位版本 CentOS 5.5 + Linux...光有高级可编程中断控制器的硬件支持还不够,Linux 内核还必须能利用到这些硬件特质,所以只有 kernel 2.4 以后的版本才支持把不同的硬件中断请求(IRQs)分配到特定的 CPU 上,这个绑定技术被称为...更多介绍请参看 Linux 内核源代码自带的文档:linux-2.6.31.8/Documentation/IRQ-affinity.txt 如何使用 先看看系统上的中断是怎么分配在 CPU 上的,很显然...timer 1: 2 0 IO-APIC-edge i8042 8: 0 0 IO-APIC-edge...VPSee 经常收到网友来信问到如何优化 Linux、优化 VPS、这个问题不太好回答,要记住的是性能优化是一个过程而不是结果,不是看了些文档改了改参数就叫优化了,后面还需要大量的测试、监测以及持续的观察和改进
前言 KVM (Kernel-based Virtual Machine) 是基于 虚拟化扩展指令集 (Intel VT or AMD-V) 在 linux x86 平台上的 完全虚拟化 解决方案 KVM...的核心是一个内核模块,用户空间组件由QEMU来提供 KVM (for Kernel-based Virtual Machine) is a full virtualization solution for Linux...Using KVM, one can run multiple virtual machines running unmodified Linux or Windows images....The kernel component of KVM is included in mainline Linux, as of 2.6.20....kvm-demo 2.6.32-573.8.1.el6.x86_64 #1 SMP Tue Nov 10 18:01:38 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux
文章目录 一、查看 Linux 操作系统位数 二、查看 Linux 操作系统软硬件信息 一、查看 Linux 操作系统位数 ---- 在 64 位的 Linux 中 , 使用 48 位 表示 "...得到结果 64 , 说明该系统是 64 位 Ubuntu Linux 操作系统 ; 二、查看 Linux 操作系统软硬件信息 ---- 执行 cat /proc/cpuinfo 命令 , 可以查看...fpu : yes fpu_exception : yes cpuid level : 22 wp : yes flags : fpu vme de pse tsc msr pae mce cx8 apic...nopl xtopology tsc_reliable nonstop_tsc cpuid pni pclmulqdq vmx ssse3 fma cx16 pcid sse4_1 sse4_2 x2apic...nopl xtopology tsc_reliable nonstop_tsc cpuid pni pclmulqdq vmx ssse3 fma cx16 pcid sse4_1 sse4_2 x2apic
继续执行/proc/iomem | grep -i apic apic设备的访问可以使用mmio(memory mapped io)的方式进行。...同时,irq 1也会路由到io apic一份,io apic也会向lapic继续delivery。lapic继续向vCPU注入中断。...linux在启动阶段,检查到io apic后,会选择使用io apic。...尽管经过irq routing产生了i8259 master和io apic两个中断,但是Linux选择io apic上的中断。 同理,如果是virtio-blk产生了中断,则路由到msi处理。...如果在内核中加log,就会发现有趣的现象:在vm启动阶段,会有大量的注入中断的log;linux启动过程中,log就停止了。
控制器,因此我需要知道I/O APIC控制器的控制寄存器的地址,书上说的方法是查主板芯片手册。...然后,根据ACPI规范,我们可以看到,这个Entry指向了多种数据结构,如APIC、HPET等。...Entry中可能包含的部分数据结构(因物理平台而异) 关于我们目标的APIC的信息,就位于表格中的Signature为APIC的数据结构中。...I/O APIC的控制寄存器的地址。...再继续查找文档,看到Interrupt Controller Structure的部分内容如下: 其中,I/O APIC的数据结构中,就有我们需要的I/O APIC控制寄存器的物理地址。
Linux 在每个 CPU 上会创建一个 ksoftirqd 内核线程。 softirqs 是在 Linux 内核编译时就确定好的,例如网络收包对应的 NET_RX_SOFTIRQ 软中断。...0 IO-APIC 7-edge parport0 8: 0 1 IO-APIC 8-edge rtc0 9:...0 176583 IO-APIC 9-fasteoi acpi 12: 0 144 IO-APIC 12-edge i8042 14...: 0 0 IO-APIC 14-edge ata_piix 15: 0 0 IO-APIC 15-edge...61 IO-APIC 19-fasteoi ehci_hcd:usb1 22: 0 0 IO-APIC 22-fasteoi
所有本地 APIC 都连接到 I/O APIC,形成一个多级 APIC 系统,如图下所示。...本地 APIC 被激活,且所有的外部中断都通过 I/O APIC 接收。...中断处理 - 上半部(硬中断) 由于 APIC中断控制器 有点小复杂,所以本文主要通过 8259A中断控制器 来介绍Linux对中断的处理过程。...Linux通过 __softirq_active 这个字段得知哪种softirq需要执行(只需要把对应位设置为1)。...在Linux内核中有两种tasklet,一种是高优先级tasklet,一种是普通tasklet。
______________________________________________________________________________ 接下来我们开始步入正题,我们常用的系统分为Linux...Linux 使用命令【grep aes /proc/cpuinfo】即可查看,当此命令能返回内容,说明此服务器的处理器是支持AES-NI的。...[root@xxxxx ~]# grep aes /proc/cpuinfo flags : fpu vme de pse tsc msr pae mce cx8 apic sep...syscall nx lm constant_tsc rep_good nopl eagerfpu pni pclmulqdq ssse3 fma cx16 pcid sse4_1 sse4_2 x2apic...xxx-MB0:~ xxxxxx$ sysctl -n machdep.cpu | grep -i aes FPU VME DE PSE TSC MSR PAE MCE CX8 APIC SEP MTRR
来源: CSDN | phenix_lord的专栏 硬件处理 最近解决一个关于Linux中断的问题,把相关机制整理了一遍,记录在此。...不同的外部设备、不同的体系结构、不同的OS其中断实现机制都有差别,本文对应的OS为linux3.4版本,外部设备为PCI设备、系统为X86。...对这部分内容,《interrupt in linux》有详细的描述。...对应I/O APIC和local APIC的组合,其连接方式见下图 ? 针对X86中断控制器硬件和linux对这些硬件的初始化,在《interrupt in linux》中有很详细的描述。...》 除了中断路由表,其它两种机制的初始化(包括相关中断路由信息的初始化)的在《interrupt in linux》中有很详细的描述。
x86架构中,每个处理器包含自己的APIC,每个APIC具有32位的寄存器,内部时钟,内部定时器以及2个额外的IRQ线,LINT0和LINT1,用作APIC的中断。...所有私有的APIC都连接到I/O-APIC,组成一个多APIC系统。 图4-1展示了一个多APIC系统的原理图。I/O-APIC通过APIC总线和各个APIC连接在一起。...I/O-APIC相等于一个中继的角色。 图4-1 多APIC系统 I/O-APIC由24条中断线,中断重定向表,可编程寄存器和一个通过APIC总线收发数据的消息单元组成。...然后通过APIC总线发送给目标APIC,该APIC就会给自己的CPU发送一个相应的中断。 CPU间的中断(简称IPI)是多核系统一个重要组成部分。Linux有效地利用它们,在CPU之间传递消息。...其实对于Linux来说,只使用了supervisor和user两种特权等级。所以中断应该都是在supervisor特权等级下运行。
root@h102 ~]# cat /etc/issue CentOS release 6.6 (Final) Kernel \r on an \m [root@h102 ~]# uname -a Linux...h102.temp 2.6.32-504.el6.x86_64 #1 SMP Wed Oct 15 04:27:16 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux [...fpu : yes fpu_exception : yes cpuid level : 11 wp : yes flags : fpu vme de pse tsc msr pae mce cx8 apic...pebs bts xtopology tsc_reliable nonstop_tsc aperfmperf unfair_spinlock pni ssse3 cx16 sse4_1 sse4_2 x2apic...fpu : yes fpu_exception : yes cpuid level : 11 wp : yes flags : fpu vme de pse tsc msr pae mce cx8 apic
is : siblings : 2 [root@testhost ~]# 1 2 3 4 5 6 7 8 扩展 查看系统是多少位 [root@testhost ~]# uname -a Linux...testhost 3.10.0-862.14.4.el7.x86_64 #1 SMP Wed Sep 26 15:12:11 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux...[root@testhost ~]# cat /proc/cpuinfo | grep lm flags : fpu vme de pse tsc msr pae mce cx8 apic...arch_perfmon nopl xtopology tsc_reliable nonstop_tsc eagerfpu pni pclmulqdq ssse3 cx16 sse4_1 sse4_2 x2apic...arch_perfmon nopl xtopology tsc_reliable nonstop_tsc eagerfpu pni pclmulqdq ssse3 cx16 sse4_1 sse4_2 x2apic
本分方案中,host和guest都使用Linux4.4。相比更早的Linux版本,Linux4.4的虚拟化更加完善。...Timer:在Host上,Linux在启动阶段,如果发现了apic timer,会优先使用精度更高的apic timer,并关闭掉i8254,也就是PIT。这个对虚拟机的vm exit没有影响。...初始条件,在一个guest空载的Linux4.4。...0x830 和0x80b 都是APIC_BASE_MSR~APIC_BASE_MSR + 0x3ff范围内的数据。...或者libvirt的xml中配置: apic eoi='on'/> 0x830是IA32_X2APIC_EOI x2APIC EOI Register
linux time linux对时间有两种需求: 第一就是获取当前时间,就像人想知道时间时看墙上挂的时钟一样,简称clock,如time()/ftime()/gettimeofday()/data()...clock软件是无法实现的,只能是硬件实现,硬件增加一个counter寄存器,周期性增加,软件想获取当前时间,读一下这个寄存器就行,linux把这个counter称为clocksource,比如这台服务器就有三个...看x86代码,linux初始化这些硬件设备,注册中断,中断处理中都调用到event_handler,简单理解为tick模块注册的函数,调用到tick的这个函数,它负责处理软件定时器,进行进程时间片计算等...); evt->event_handler(evt); } /* * Local APIC timer interrupt....再考虑一些问题,有全局hpet和局部local apic timer,cpu会用哪个呢?hpet中断哪个cpu处理?其它cpu收不到这个中断怎么tick呢?软件定时器是全局的还是局部的?
注:CONFIG_X86_UP_APIC用于没有IO-APIC的单处理器机器。...CONFIG_X86_UP_IOAPIC用于具有IO-APIC的单处理器。 对于X86_64, APIC也已自动编译进内核。...--这就是Local-APIC watchdog的缺点。不幸的是:没有"clock ticks"事性可以始终工作。 使用 IO-APIC NMI watchdog 没有这个缺点。...perf_event_create_kernel_counter(wd_attr, cpu, NULL, watchdog_overflow_callback, NULL); PMU说明:翻译 tools/perf/design.txt linux...性能计数器:Performance Counters for Linux ------------------------------ 性能计数器(Performance counters)是一类多数现代
领取专属 10元无门槛券
手把手带您无忧上云