进程和线程

进程是组织资源的最小单位,而线程是安排CPU执行的最小单位

    其实在一个进程中多个线程并行和在操作系统中多个进程并行非常类似,只是线程共享的是地址空间,而进程共享的是物理内存,打印机,键盘等资源……

    每一个进程和线程所独自占有的资源如表1所示。

      
进程占有的资源 线程占有的资源
地址空间 
全局变量 
打开的文件 
子进程 
信号量 
账户信息
栈 
寄存器 
状态 
程序计数器

   其中,线程可以共享进程独占的资源。

 

    我们常用的术语“多线程”一般指的是在同一个进程中多个线程的并发执行。

在多线程的进程中,每个线程轮流使用CPU,因此实际上线程并不是并行的,但从宏观上看,是并行的。

    在多线程模型中,每一个进程初始创建时只有一个线程。这个线程可以通过调用系统的库函数去创建其它线程。线程创建的线程并必须要为其指定地址,因为新的线程自动在创建它的地址空间内工作。虽然一个线程可以创建另一个线程,但通常来讲,线程之间是并列的,并不存在层级关系。

    当一个进程完成其工作后,可以通过调用系统库函数进行销毁。

 在操作系统中,线程可以实现在用户模式下,也可以实现在内核模式下,也可以两者结合实现。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值