内核线程、用户进程、用户线程

本文深入探讨Linux操作系统中三种不同类型的进程:内核线程、用户进程和用户线程。从创建init进程后的内核行为开始,详细解释了每种进程的特点,包括它们在内存管理、资源访问和运行机制上的区别。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

内核线程、用户进程、用户线程

从kernel创建init 进程之后,内核就不再主动占有cpu了。只有当进程主动要求和中断到来时,内核才动一动,很快又把cpu还给合适的进程。
Linux上进程分3种,内核线程、用户进程、用户线程。


内核线程
内核线程拥有进程描述符、PID、进程正文段、核心堆栈;
因为内核线程不访问用户空间,只操作内核空间内存,而所有内核线程的内核空间都是一样的。这样就省下了一个mm域的内存。


用户进程
拥有进程描述符、PID、进程正文段、核心堆栈 、用户空间的数据段和堆栈


用户线程
拥有进程描述符、PID、进程正文段、核心堆栈,同父进程共享用户空间的数据段和堆栈;
用户线程也可以通过exec函数族拥有自己的用户空间的数据段和堆栈,成为用户进程。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值