ICode9

精准搜索请尝试: 精确搜索
首页 > 系统相关> 文章详细

Windows技术篇——进程、线程、消息机制进程间通信

2021-06-10 19:01:59  阅读:185  来源: 互联网

标签:状态 多线程 Windows 间通信 线程 进程 执行 CPU


概念

192.168.0.1–192.168.0.255

一、进程状态

1、创建状态:进程由创建而产生。
2、就绪状态:指进程已准备好运行状态,即进程已分配到除CPU以外所有的必要资源后,只要再获得CPU,合可立即执行。(有执行资格,没有执行权的进程)
3、运行状态:指进程已经获取CPU,其进程处于正在执行的状态。(既有执行资格,又有执行权的进程)
4、阻塞状态:指正在执行的进程由于发生某事件(如I/O请求,申请缓冲区失败等)暂时无法继续执行的状态,即进程执行受到阻塞。
5、终止状态:进程的终止也要通过两个步骤:首先,是等待操作系统进行善后处理,最后将其PCB清零,并将PCB空间返还给操作系统。

二、为何阻塞状态和就绪状态分开?

看定义可知

三、线程

是进程的一个执行单元,是进程内部调试的实体,比进程更小的独立运行的基本单位,线程也被称为轻量级进程。一个程序至少一个进程,一个进程至少一个线程。

四、为什么会有线程?

早期:在OS中一直都是以进程作为能拥有资源和独立运行的基本单位.后来人们又提出了比进程更小的能独立运行的基本单位-线程(Threads),试图通过它来提高系统内程序并发执行的程序,从而进一步提高系统的吞吐量.后来多处理机系统得到迅速发展,线程能比进程更好的提高程序的并发执行程序,充分发挥多处理机的优越性。

五、进程线程的区别?

地址空间:同一进程的线程共享本进程的地址空间,而进程之间则是独立的地址空间。
资源拥有:同一进程内的线程共享本进程的资源如内存、I/O、CPU等,但是进程之间的资源是独立的。
执行过程:每个独立的进程有一个程序运行的入口,顺序执行序列和程序入口,但是线程不能独立执行,必须依存在应用程序中,由应用程序提供多个线程执行控制。线程是处理器调试的基本单位,但是进程不是。两者均可并发执行。

六、线程进程优缺点?

线程执行开销小,但是不利于资源的管理和保护,线程适合在SMP机器(双CPU系统)上运行;
进程执行开销大,但是能够很好的进行资源管理和保护,进程可以跨机器前移。

对资源的管理和保护要求高,不限制开销和效率时,使用多进程;
要求效率高,频繁切换时,资源的保护管理要求不是很高的时候,使用多线程;

八、多线程应用场景

常见浏览器、Web服务、Web请求、各种专用服务器(游戏服务器);
Servlen多线程、FTPd下载、多线程操作文件、数据库用到多线程;
分布式计算(tomcat内部采用多线程)。

标签:状态,多线程,Windows,间通信,线程,进程,执行,CPU
来源: https://blog.51cto.com/u_15265965/2892073

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有