04 2022 档案

摘要:kernel/sched.c struct rq { ... #ifdef CONFIG_SMP struct sched_domain *sd; /* 用于主动均衡 */ int active_balance; int push_cpu; //表示需要迁移进程的目的CPU /*该就绪队列的CPU: 阅读全文
posted @ 2022-04-27 23:59 while(true);; 阅读(62) 评论(0) 推荐(0)
摘要:可以用两种方法激活调度。一种是直接的,比如进程打算睡眠或出于其他原因放弃CPU;另一种是通过周期性机制,以固定的频率运行,不时检测是否有必要进行进程切换。在下文中我将这两个组件称为通用调度器(generic scheduler)或核心调度器(core scheduler)。 <sched.h> st 阅读全文
posted @ 2022-04-26 22:48 while(true);; 阅读(171) 评论(0) 推荐(0)
摘要:asmlinkage int sys_fork(struct pt_regs regs) { return do_fork(SIGCHLD, regs.esp, &regs, 0, NULL, NULL); }这意味着在子进程终止后发送SIGCHLD信号通知父进程。最初,父子进程的栈地址相同(起始地 阅读全文
posted @ 2022-04-25 22:25 while(true);; 阅读(136) 评论(0) 推荐(0)