/proc/interrupts 的数值是如何获得的?

之前为了确认 /proc/interrupts 文件第一列的缩进方式,看了一下相关源码,在这里做一些记录。

系统一共有多少个中断?

系统可用的中断数量主要由架构决定,x86 的具体数量可以参考以下定义。

/* kernel/irq/irqdesc.c */

 96 int nr_irqs = NR_IRQS;
 97 EXPORT_SYMBOL_GPL(nr_irqs);
/* arch/x86/include/asm/irq_vectors.h */

152 #define NR_IRQS_LEGACY            16
153    
154 #define IO_APIC_VECTOR_LIMIT        ( 32 * MAX_IO_APICS )
155    
156 #ifdef CONFIG_X86_IO_APIC
157 # define CPU_VECTOR_LIMIT       (64 * NR_CPUS)
158 # define NR_IRQS                    \
159     (CPU_VECTOR_LIMIT > IO_APIC_VECTOR_LIMIT ?  \
160         (NR_VECTORS + CPU_VECTOR_LIMIT)  :  \
161         (NR_VECTORS + IO_APIC_VECTOR_LIMIT))
162 #else /* !CONFIG_X86_IO_APIC: */
163 # define NR_IRQS            NR_IRQS_LEGACY
164 #endif

继续阅读“/proc/interrupts 的数值是如何获得的?”

泰国:清迈,素可泰,曼谷

特价机票

像我这样,不喜欢玩水,不喜欢寺庙,不去夜店,其实在泰国没啥好玩的。

只是,一年前亚航大促,给自己挖了个坑。澳门< ->曼谷,含税280元人民币。小便宜,必须占。

Day 1 - 曼谷

第一天,坐了最早的一班城际铁路去拱北,跟着众多跨境上班的人们快速通关到澳门。在机场吃完早餐,还有大把时间。(麦当劳土匪价,7-11良心价)

亚航的灰机通常停在“远机位”。在袖珍的澳门,“远机位”有不一样的含义:明明灰机就在眼前20米的地方,却要在摆渡车上呼吸着柴油,看着一位位乘客往上挤,关门,前行不到15秒,开门,登机......

前排的乘客端着ipad在看《大圣归来》,我偷看了2小时之后,到达曼谷了。话说,曼谷的廊曼机场已经走在移动互联网的最前沿,出入境手机全覆盖。在这里,你可以见识到入境官用粗壮的手指,一个字母一个字母地,在手机上点点点,点点点,点点点...
继续阅读“泰国:清迈,素可泰,曼谷”

使用 Pacemaker 搭建集群服务

Pacemaker 简述

Pacemaker 是一个集群资源管理器,它负责管理集群环境中资源(服务)的整个生命周期。

Pacemaker is a cluster resource manager, that is, a logic responsible for a life-cycle of deployed software — indirectly perhaps even whole systems or their interconnections — under its control within a set of computers (a.k.a. nodes) and driven by prescribed rules.

Pacemaker 的内部构成

Pacemaker 主要由以下部件组成:
CIB - Cluster Information Base
CRMd - Cluster Resource Management daemon
LRMd - Local Resource Management daemon
PEngine - Policy Engine
STONITHd - Fencing daemon
继续阅读“使用 Pacemaker 搭建集群服务”

Where will log goes during logrotate.

During logroate, if there comes a log entry, where will this log entry goes? To the rotated file, lost, or to the newly created file?

It depends.

The logrotate process

In RHEL 6 (centos 6), logrotate works like below:

1. Rename the original file. For example, /var/log/messages --> /var/log/messages.1

2. Create a new file. In this example, create an empty /var/log/messages

3. Run post-rotate script. For rsyslog, it would send a HUP signal to rsyslogd.

继续阅读“Where will log goes during logrotate.”

日本游 - 东京横滨随便逛

特价机票

通过“去哪儿网”的智能搜索,只需选择出发时间和停留天数,已经想去的区域(比如日韩),就能搜索到最低价的机票,哪里便宜往哪走。

在某个周日,我搜索到了端午节当周北京往返东京的机票,往返含税1600元,果断剁手。

后来发现海南航空的官网只卖1400元含税。
继续阅读“日本游 - 东京横滨随便逛”