我是靠谱客的博主 幽默芹菜,最近开发中收集的这篇文章主要介绍Linux进程入门学习(一)-认识进程1.进程的概念2.进程的组织方式,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

1.进程的概念

一个可执行的程序文件(ELF格式)被加载到内存当中,然后让CPU逐条执行其代码,根据代码作出相应的动作,这样一个动态进程就产生了。因此,进程是一个动态变化的过程。

下面用一张图来表示一个程序从编写到最终运行的过程:

进程的概念以及程序的运行过程

一段固化在磁盘的代码可以多次被加载到内存中运行,从而产生多个进程。磁盘,即ROM(Read Only Memory只读存储器) 掉电不丢失数据,但读写速度非常慢,所以用来存储数据;内存DDR,即RAM(RamdomAccessMemory随机存取存储器),读写速度快,掉电丢失数据。故程序固化在磁盘中,运行时则加载到内存中,然后执行代码。
当ELF格式的程序被执行时,内核中实际上产生了一个名为task_struct{}的结构体来表示这个进程。进程从一开始就需要各种资源来维护,比如内存资源、CPU资源、文件、信号、各种锁资源等,所有这些东西都是动态变化的,而进程的这些信息都会记录在task_struct当中,所以这个结构体也常称为进程控制块(Process Control Block,简称PCB)。
下面是内核中task_struct的截图

task_struct

总之,当一个程序文件被执行产生一个进程时,内核将会产生一个task_struct结构体,来承载该进程运行后所需要的所有资源,随着进程的运行,各种资源被分配和释放,是一个动态的过程。

2.进程的组织方式

进程是一个动态的过程,既然会产生进程,那么进程也会消失,即死亡。每个进程都是有其父进程产生,若子进程结束后,父进程会回收其资源。若子进程的父进程先被结束,那么子进程就会进入孤儿态,其会被系统的1号进程回收其资源。
shell命令ps -lA可以查看当前系统的进程,例如:

系统进程

关于进程的生命周期,下节继续学习。

最后

以上就是幽默芹菜为你收集整理的Linux进程入门学习(一)-认识进程1.进程的概念2.进程的组织方式的全部内容,希望文章能够帮你解决Linux进程入门学习(一)-认识进程1.进程的概念2.进程的组织方式所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(34)

评论列表共有 0 条评论

立即
投稿
返回
顶部