进程、线程、程序区别和联系

程序是一个静态的概念存储在计算机的某个位置,可供计算机运行。

程序开始运行就会加载到内存,创建进程,进程需要占用系统资源(CPU资源、内存资源、磁盘资源和网络资源等)。

一个程序运行后至少有一个进程,进程是资源分配的最小单位,它是操作系统进行资源分配和调度运行的基本单位。

一个程序与它有关的进程的对应关系是一对多,一个程序运行时可以有多个进程,比如在计算机上上了两个QQ,就是说QQ程序下有两个子进程。我们可以打开任务管理器看到进程一栏有很多一开机就运行的进程,,也称为系统进程,是电脑运行时必须的一些程序,这些进程在系统启动时加载,确保系统的稳定运行和各种功能的实现。也可以说我们开机就是运行计算机的第一个程序,其它所有进程都属于操作系统的子进程。

线程是进程的一个实体,是CPU调度和分派的基本单位,它是比进程更小的能独立运行的基本单位.线程自己基本上不拥有系统资源,只拥有一点在运行中必不可少的资源(如程序计数器,一组寄存器和栈)。一个进程默认至少有一个线程(主线程),也可以有多线程,如果有两个线程意味着代码可以从两个不同的地方同时执行。

多线程是一种编程技术‌,它允许在一个程序中同时执行多个独立的任务或操作。每个任务或操作都是由一个单独的线程来执行,而这些线程共享程序的资源和内存空间。与单线程相比,多线程可以提高程序的运行效率和响应速度,因为它可以充分利用CPU的多核处理能力,同时也可以避免某些操作阻塞其他操作的问题。

比如一个项目开始动工最少得有一个部门干活,这个部门下最少得有一个人干活,人是最小的可调度单位。

一个程序的运行最少得有一个进程,一个进程最少得有一个主线程,线程是能独立运行的基本单位。当然多线程在执行过程中,需要协作同步,不同进程的线程间要利用消息通信的办法实现同步。

个人能力有限,以上纯属个人理解,难免有错误恳请谅解,后面我会陆续发一些关于【从计算机安装系统到计算机软件是如何运行】的一些个人的浅见,也算是对自己所学的一点总结。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值