c++多线程和并发

本文介绍了进程和线程的概念,强调进程是操作系统分配资源的基本单位,而线程是CPU调度的基本单位。线程相比进程更加轻量级,能共享进程资源。还讨论了用户级线程与内核支持线程的区别,并指出进程在创建、撤销和切换时开销较大,而通过线程实现并发执行可以提高系统效率。
摘要由CSDN通过智能技术生成

1.进程的概念:进程就是程序(可执行文件)的一次执行,是一个应用程序被操作系统加载到内存之后从开始到结束的一个过程。进程通常由程序,数据和进程控制块组成(PCB)。

(*)扩展:PCB:每个进程中在内核中都有一个进程控制块来维护进程的相关信息

        (1)进程id:系统中每个进程有唯一的id,是一个非负整数

        (2)进程的状态有:初始,就绪,运行,挂起,停止

        (3)进程切换时需要保存和恢复一些CPU寄存器

        (4)描述虚拟地址空间信息

        (5)描述控制终端的信息

        传统的进程有两个基本属性:可拥有资源的独立单位;可独立调度和分配的基本单位。进程可以获取操作系统的资源,如内存。进程可以参与操作系统的调度,参与CPU的竞争,得到分配的时间片,获得CPU运行。

2.线程的概念:线程是进程中的一个实体,是被系统独立分配和调度的基本单位。也就是说,线程是CPU可执行调度的最小单位。也就是说,进程本身不能获取CPU时间,只有他的线程才可以,在引入线程之后进程的两个能力被分割,线程负责争夺CPU资源,参与操作系统调度,而进程负责获取资源。县城作为调度和分配的基本单位,进程作为独立分配资源的单位。

线程基本上不用有资源,只拥有一点运行中必不可少的资源,他可以与同属一个进程的其他线程共享所拥有的全部资源。

线

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值