目录

一、什么是程序

二、什么是进程

三、程序和进程的关系

1、程序和进程的区别

2、程序和进程的联系

四、什么是线程

1、线程概念

2、线程和main函数关系

五、进程和线程的关系


一、什么是程序

程序是计算机系统中存储的数据文件,大可分为两种:

(1)源代码程序--描述程序的行为和功能,属于文本文件;

(2)可执行程序--该文件是由源代码程序通过编译器编译得到的二进制文件,可以直接加载并运行。

二、什么是进程

1、广义角度:程序关于某个数据集合的一次运行活动;

2、狭义角度:程序被加载到内存中并执行而得到的运行实体。

三、程序和进程的关系

1、程序和进程的区别

(1)程序是计算机硬盘中的静态文件,存储在内存中的一段由二进制表示的文件;

(2)进程是内存中动态的运行实体,比如PC指针,代码段等。

2、程序和进程的联系

(1)一个程序可能对应多个进程:同一个可执行程序,被同时加载运行,每次运行产生一个进程;

(2)一个进程可能存在多个程序:一个程序的运行,可能需要依赖多个lib或者dll动态库(也属于可执行程序)。

四、什么是线程

1、线程概念

(1)进程中的一个执行单位;

(2)操作系统中一个可以调度的实体;

(3)进程中相对独立的一个控制流序列;

(4)执行时的现场数据和其他调度所需的信息。

2、线程和main函数关系

main()函数其实就是进程里主线程的入口地址,可以通过以下的关系图进行了解:

五、进程和线程的关系

在当代操作系统中,进程是操作系统分配资源的基本单位,线程是操作系统CPU调度执行的基本单位。

1、进程中可以存在多个线程,并且多个线程共享进程资源;

2、线程是被调度的基本单元,而进程不是调度的基本单元;

3、线程不能脱离进程而独立存在,必须依赖于进程运行;

4、线程有生命周期,有诞生和死亡;

5、任意线程都可以创建其他新的线程。

Logo

瓜分20万奖金 获得内推名额 丰厚实物奖励 易参与易上手

更多推荐