嵌入式课程7

僵尸进程:子进程终止了,但是父进程还活着,父进程在没有回收子进程资源之前,子进程就是僵尸进程。
为什么子进程会变成僵尸进程?
子进程已经终止不再运行,但是父进程还在运行,它没有释放子进程占用的资源,所以就变成了占着资源不拉屎僵尸进程。好比人死后不腐烂,身体占用的资源得不到回收是一样的,像这种情况就是所谓的僵尸。

孤儿进程:没爹没妈的孩子就是孤儿,子进程活着,但是父进程终止了,子进程就是孤儿进程。
为了能够回收孤儿进程终止后的资源,孤儿进程会被托管给pid==1的init进程,每当被托管的子进程终止时,init会立即主动回收孤儿进程资源,回收资源的速度很快,所以孤儿进程没有变成僵尸进程的机会。

守护进程:就是通常讲Daemon进程,是linux后台执行的一种服务进程,特点是独立于控制终端、周期性地执行某种任务或等待处理某些发生事件,不会随终端关闭而停止,直到接受停止信息才会结束,且一般采用以d结尾的名字。

前台进程:是当前正在使用的程序,
后台进程:是在当前没有使用的但是也在运行的进程,包括那些系统隐藏或者没有图形化界面的程序。
Linux中将前台进程挂到后台的意思就是,退出程序但是让这个程序依然进行运行,而不是退出当前程序只能关闭。
特点:1. 前台进程可以自己控制,后台进程由系统进行维护和管理。2. 前台进程和后台进程可以互相转换,3. 由于是后台进程,所以系统会将主要精力放在前台也就是当前进程中,后台进程自然会比较慢。

进程和线程的区别:
进程:是正在执行的一个程序(软件)或者命令,每一个进程都是一个运行的实体都有自己的地址空间,并且占用一定的系统资源。说白了进程就是正在运行着的程序,只要运行就会产生至少一个进程。
线程:说白了就是一个轻量级进程,只不过这线程是属于某个进程的,这个线程共享这个进程的内存空间和地址空间,不可以分享其他的进程空间。

你可能感兴趣的:(#嵌入式)