Linux内核-二

本文深入探讨Linux内核中的进程调度,包括重要函数如`schedule()`和`switch_to()`,以及进程的不同状态。同时,详细介绍了进程销毁的流程,如通过`do_exit()`释放内存,关闭文件,改变进程状态为僵死,并向父进程发送信号。最后,讨论了父进程如何处理子进程的销毁,如`wait`和`waitpid`函数的作用。
摘要由CSDN通过智能技术生成

Linux内核(二)

一、进程调度

分析shed.c

1.1重要函数说明

内核中进程调度函数: void schedule(void)

进程切换函数:switch_to(next)

辅助函数:void show_task(int nr,struct task_struct * p)

// 调度函数

void schedule(void) 函数:
		for(p = &LAST_TASK ; p > &FIRST_TASK ; --p) //遍历
		if (*p) {
   
			if ((*p)->alarm && (*p)->alarm < jiffies) {
    //根据时间触发信号
					(*p)->signal |= (1<<(SIGALRM-1));
					(*p)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值