进程和线程的关系

  1. 电脑的cpu是核心,它处理所有的计算任务,相当于一个工厂
  2. 假设一个工厂里面只能允许运作一个车间,也就是说单个cpu只能运行一个进程,这时候其他进程处于非运行状态,这时候车间就相当于进程
  3. 但是一个车间里面,可以有很多工人,很多工人协同运行车间里面的东西,这就是多线程协成进程运行任务,一个进程可以有多个线程
  4. 车间有些房间是可以允许多个工人进去的,也就是说,进程的内存是可以共享的,每个线程都可以使用这些共享内存
  5. 有些房间容纳的人多,而厕所只允许一个人进去,也就是说,共享内存时,只允许一个线程的操作,其他线程等待(阻塞)
  6. 防止别人进去测试,用的是加锁,这把锁就是互斥锁(Mutual exclusion,缩写Mutex),防止多个线程同时读取某一块内存地址
  7. 但是也有房间是允许多个人的,也就是说,某些内存区域,只能供给固定数目的线程使用,在门口放几把钥匙,进去一个人拿一把钥匙,这叫做信号量(Semaphore)

操作系统的设计,因此可以归结为三点:

(1)以多进程形式,允许多个任务同时运行;

(2)以多线程形式,允许单个任务分成不同的部分运行;

(3)提供协调机制,一方面防止进程之间和线程之间产生冲突,另一方面允许进程之间和线程之间共享资源。

时间: 2024-10-04 02:51:35

进程和线程的关系的相关文章

进程和线程的关系和区别

进程和线程的关系:(1)一个线程只能属于一个进程,而一个进程可以有多个线程,但至少有一个线程.(2)资源分配给进程,同一进程的所有线程共享该进程的所有资源.(3)处理机分给线程,即真正在处理机上运行的是线程.(4)线程在执行过程中,需要协作同步.不同进程的线程间要利用消息通信的办法实现同步.线程是指进程内的一个执行单元,也是进程内的可调度实体.线程与进程的区别:(1)调度:线程作为调度和分配的基本单位,进程作为拥有资源的基本单位(2)并发性:不仅进程之间可以并发执行,同一个进程的多个线程之间也可

CPU进程与线程的关系和区别

进程是具有一定独立功能的程序关于某个数据集合上的一次运行活动,进程是系统进行资源分配和调度的一个独立单位. 线程是进程的一个实体,是CPU调度和分派的基本单位,它是比进程更小的能独立运行的基本单位. 进程和线程的关系: (1)一个线程只能属于一个进程,而一个进程可以有多个线程,但至少有一个线程. (2)资源分配给进程,同一进程的所有线程共享该进程的所有资源. (3)处理机分给线程,即真正在处理机上运行的是线程. (4)线程在执行过程中,需要协作同步.不同进程的线程间要利用消息通信的办法实现同步.

进程与线程的关系

进程与线程的关系 线程只能属于一个进程,而一个进程可以有多个线程,但至少有一个线程. 资源分配给进程,同一进程的所有线程共享该进程的所有资源. 线程在执行过程中,需要协作同步.不需要进程的线程间要利用消息通信的办法实现同步. 处理机分给线程,即真正在处理机上运行的是线程. 线程是指进程内的一个执行单元,也是进程内的可调度实体. 为什么在进程中派生出线程? 应用的需要 开销的考虑 性能的考虑 线程的应用 典型的应用 web服务器 工作方式 从客户端接收网页请求(http协议) 从磁盘上检索相关网页

进程和线程的关系及区别,进程间如何通讯,线程间如何通讯

1 定义 进程:进程是程序处理机上的一次执行过程, 它是一个动态的概念,它是系统进行资源分配和调度的一个独立单位. 线程:进程的一个实体,是CPU运行调度的基本单位,它是比进程更小的能独立运行的基本单位.线程自己基本上不拥有系统资源,只拥有一点在运行中必不可少的资源(如程序计数器,一组寄存器和栈),但是它可与同属一个进程的其他的线程共享进程所拥有的全部资源. 2 关系 一个线程可以创建和撤销另一个线程:同一个进程中的多个线程之间可以并发执行: 相对进程而言,线程是一个更加接近于执行体的概念,它可

python全栈开发,Day41(线程概念,线程的特点,进程和线程的关系,线程和python理论知识,线程的创建)

昨日内容回顾 队列 队列:先进先出.数据进程安全 队列实现方式:管道+锁 生产者消费者模型:解决数据供需不平衡 管道 双向通信,数据进程不安全 EOFError: 管道是由操作系统进行引用计数的 必须在所有进程中关闭管道后才能生成EOFError异常 数据共享(不常用) Manager list dict 数据进程不安全的 进程池 存放进程的容器 在进程创建之初,创建固定个数的进程 会被多个任务循环利用 节省了进程创建和销毁的时间开销 降低了操作系统调度进程的压力 信号量和进程池的区别 信号量:

进程与线程关系

一. 进程的概念 进程是在多道程序系统出现以后,为了描述系统内部各作业的活动规律而引进的概念. 由 于多道程序系统所带来的复杂环境,程序本身有了并行性[为了充分利用资源,在主存中同时存放多道作业运行,所以各作业之间是并行的].制约性[各程序由于 同时存在于主存中,因此他们之间会存在着相互依赖.相互制约的关系.一个是通过中间媒介--资源发生的间接制约关系,一个是各并行程序间需要相互协同而引 起的直接制约关系]和动态性[不论是系统程序还是用户程序,由于他们并行地在系统中运行且有着各种制约关系,因而他

进程与线程之间的关系

看到一种说法是"一个程序至少有一个进程,一个进程至少有一个线程",这种把程序与进程,进程与线程的关系混淆的说法是错误的. 程序(program)只能有一个进程,一个进程就是一个程序.有人说,我打开一个程序,比如chrome,有十多个进程呢,这是咋回事.那就是十多个程序,操作系统给他们分配了彼此独立的内存,相互执行不受彼此约束,分配同样时间的CPU.对于用户而言,他们是一个整体,我们通常称之为应用程序(application).对于计算机而言,一个进程就是一个程序,多个进程(比如一个浏览

进程丶线程丶CPU关系简述

本文简单阐述了进程与线程的关系,为了便于理解,本文也将简述CPU的工作原理. 进程是计算机中的程序关于某数据集合上的一次运行活动,是系统进行资源分配和调度的基本单位,是操作系统结构的基础.或者说进程是具有一定独立功能的程序关于某个数据集合上的一次运行活动,进程是系统进行资源分配和调度的一个独立单位. 线程则是进程的一个实体,是CPU调度和分派的基本单位,它是比进程更小的能独立运行的基本单位. 进程和线程的关系: (1)一个线程只能属于一个进程,而一个进程可以有多个线程,但至少有一个线程. (2)

进程与线程之间的关系和区别 及 CPU调度

进程是具有一定独立功能的程序关于某个数据集合上的一次运行活动,进程是系统进行资源分配和调度的一个独立单位. 线程是进程的一个实体,是CPU调度和分派的基本单位,它是比进程更小的能独立运行的基本单位. 进程和线程的关系: (1)一个线程只能属于一个进程,而一个进程可以有多个线程,但至少有一个线程. (2)资源分配给进程,同一进程的所有线程共享该进程的所有资源. (3)处理机分给线程,即真正在处理机上运行的是线程. (4)线程在执行过程中,需要协作同步.不同进程的线程间要利用消息通信的办法实现同步.