1. rlwinm r4, r7,27, 31, 31 指令计算过程:
(r7 << 27) & (31, 31) -> r4
2. rlwi r7, r7, 16 计算过程
== rlwinm r7, r7, 16, 0, 31-16 ,即:取取r7的高16位
3. 指令后缀的信义:
+:转移被静态预测为真时转移
-:转移被静态预测为假,选择转移
.:指令的结果更新CR寄存器
C:指令的结果影响CA位
O:指令结果影响SO和OV位
S:立即数要shift
4. git-send-email --to xxx --from xxx FILE1 FILE2...
5. git-am 应用patch
6. git-format-patch commit_id 生成patch
7. GPR寄存器使用规则:
GPR0:GCC用来保存LR,linux用它传递系统调用(易失)
GPR1:SP
GPR2:进程描述符地址,即current地址
GPR3-4:函数返回值
GPR3-10:8个寄存器做为参数传递用,多于8个用堆栈传递
GPR11-12:存放临时变量,GCC未用
GPR13:sdata段的地址
GPR14-31:临时变量,可以自由使用
8. 部分全局变量作用:
defined in :arch/powerpc/sysdev/mpic.c
static struct mpic *mpics: 指向struct mpic,以此访问所有linux系统内的mpic 结构
static struct mpic *mpic_primary: 用来访问当前操作系统中的Primary MPIC中断控制器。
defined in : arch/powerpc/kernel/irq.c
struct irq_map_entry irq_map[NR_IRQS];软件中断到硬件中断的映射关系
static LIST_HEAD(irq_hosts);系统中所有irq_host结构的头指针
cache_cache: linux 创建的第一个cache,保存linux其它的cache描述符
cache_chain: 所有cache组成的队列的头指针
malloc_sizes: 通用cache数组,范围大小从2^5~2^17
9. set_user_nice调用时的nice范围范围-20~19,static_prio为:100~139。
rt_priority range is:0~99.
when the policy is SCHED_FIFO or SCHED_RR, rt_priority is valid.
prio range is: 0~139.
when prio is 0~99, the process is realtime process. when prio is 100-139, the process is normal process.
阅读(318) | 评论(0) | 转发(0) |