
kernel进程
文章平均质量分 92
showstopper_x
这个作者很懒,什么都没留下…
展开
-
Linux进程创建二——do_fork
前言kernel在启动初期并没有“进程”这个概念,如果不涉及支持多任务并发、调度,kernel可以一直以一个控制流运行。本篇从内核初始化时的0进程开始分析,延伸到多进程的创建。0 进程内核中的所有进程都存在依赖关系,进程有父进程、子进程、兄弟进程。0号进程为所有进程的祖先进程,又称为idle进程、swapper进程。init_task如前文所述,内核在初始化初期没有进程的概念,原创 2017-01-17 21:12:46 · 1005 阅读 · 0 评论 -
Linux进程创建一——进程、线程、LWP
前言本篇主要对进程和线程的概念进行分析,kernel中的进程、线程模型,涉及进程、用户态线程、内核态线程、轻量级进程(LWP),在分析之前,需要阅读What is Thread?,该文章有便于理解操作系统中线程、用户态线程和内核态线程的对应关系。 根据资料和我的理解,不同操作系统对线程和进程的理解及对应关系稍有不同,本篇只针对Linux操作系统。 本篇文章是阅读ULK3及网上相应文章后的个人总结原创 2017-01-12 23:20:23 · 969 阅读 · 0 评论 -
What are threads (user/kernel)?
What are threads (user/kernel)?Threads are “light weight processes” (LWPs). The idea is a process has five fundamental parts: code (“text”), data (VM), stack, file I/O, and signal tables. “Heavy-weig原创 2017-01-13 11:08:27 · 471 阅读 · 0 评论 -
Linux进程创建三——fork、vfork、clone、kernel_thread
前言Linux创建线程的API主要有fork、vfork、clone、kernel_thread,最终都调用了do_fork。 do_fork的具体流程在上一篇已经分析完毕Linux进程创建二——do_forkfork、vfork、clone都是系统调用,用来实现用户空间的进程创建。 内核空间创建的进程称为内核线程,主要通过kernel_thread,对kernel_thread进行包装的API原创 2017-01-17 22:53:15 · 1742 阅读 · 0 评论