进程与线程(1)
来源:互联网 发布:redis队列php 编辑:程序博客网 时间:2024/05/21 11:25
在我们学习之前,先来了解一下:
进程与线程是操作系统任务调度时的单位。应用程序都是运行在进程或者线程中。通过使用进程或线程,应用程序可以实现并发控制等功能。
【归纳】
操作系统最小的调度单位是线程
资源最小的单位是进程
(1)操作系统的调度概念
操作系统中同时运行着的多个应用程序在有限的CPU资源中如何高效运行,并为其分配系统资源包括硬件资源和软件资源等,这就是操作系统的调度。
(2)进程与线程
进程与线程是操作系统的两种调度单位。
a、进程:指的是正在操作系统中运行着的一个应用程序,是应用程序的一次动态执行。进程由进程控制块、程序段、数据段3部分组成。一个进程可以包含若干线程,使用线程可以实现应用程序同时做几件事并且互相不干扰。进程是操作系统进行资源分配的单位。
b、线程:是系统分配处理器时间资源的基本单元。是进程中的一个实体,是被系统独立调度和分派的基本单位,线程自己不拥有全部的资源。一个线程可以创建和撤销另一个线程,同一进程的多个线程之间可以并发执行。
对于操作系统而言,其调度单元是线程。一个进程至少包括一个线程,通常将该线程称为主线程。
(3)进程与线程关系
一个线程可以创建和撤销另一个线程;
同一个进程中的多个线程之间可以并发执行;
相对进程而言,线程是一个更加接近于执行体的概念,它可以与同进程中的其他线程共享数据,但拥有自己的栈空间,拥有独立的执行序列。
(4)进程与线程的区别
子进程与父进程有不同的代码和数据空间,而多个线程则共享进程的数据空间,每个线程有自己的执行堆栈和程序计数器为其执行上下文。多线程主要为了利用CPU时间,同时在一个进程内运行多个任务。
a、一个程序至少有一个进程,一个进程至少有一个线程
b、进程在执行过程中拥有独立的内存单元,而多个线程共享进程所拥有的内存。
c、进程可以独立运行,但线程不能独立执行,必须依存在进程中,由使用该进程的应用程序提供多个线程执行控制。
友情链接:http://www.cnblogs.com/way_testlife/archive/2011/04/16/2018312.html
- 进程与线程(1)
- 线程(1)----线程与进程
- 进程,线程与线程池(1)
- 进程与线程1
- 1 进程与线程
- 线程与进程1
- 1、进程与线程
- Android的进程与线程(1)
- 进程与线程-1、进程状态+PCB
- 进程管理----进程与线程(一)
- 线程与进程(中)
- 线程与进程(总结)
- 进程与线程(一)
- 进程与线程(一)
- 线程与进程(上)
- 进程与线程(二)
- Android进程与线程(二):线程
- 进程与线程线程
- 【iOS程序启动与运转】- RunLoop个人小结
- 总结圣典中操作物体任意方向旋转的三种方法
- 自定义注解拦截
- 应用非标准分析中译本序
- Java 流(Stream)、文件(File)和IO
- 进程与线程(1)
- Flink流处理与Kafka流
- 浅析C++静态成员函数
- PackageManager详解
- 【图片整合技术】为什么要将多个图片整合到一张图然后定位?
- javascript组件开发方式
- oracle导入导出数据的几种方式
- CCF-201604-3 路径解析(模拟)
- HttpServletRequest对象