进程丶线程丶CPU关系简述
来源:互联网 发布:折扇淘宝 编辑:程序博客网 时间:2024/06/10 04:53
<div id="article_content" class="article_content tracking-ad" data-mod="popu_307" data-dsm="post">
<div>
<h3><a target="_blank" href="http://bs-yg.iteye.com/blog/2246355" style="color:black">进程丶线程丶CPU关系简述</a></h3>
<ul>
<strong>博客分类:</strong>
<li><a target="_blank" href="http://bs-yg.iteye.com/category/347815" style="color:black">java基础</a></li></ul>
<div><a target="_blank" href="http://www.iteye.com/blogs/tag/%E8%BF%9B%E7%A8%8B" style="color:rgb(255,255,255)">进程</a><a target="_blank" href="http://www.iteye.com/blogs/tag/%E7%BA%BF%E7%A8%8B" style="color:rgb(255,255,255)">线程</a><a target="_blank" href="http://www.iteye.com/blogs/tag/CPU" style="color:rgb(255,255,255)">CPU</a><a target="_blank" href="http://www.iteye.com/blogs/tag/java" style="color:rgb(255,255,255)">java</a><a target="_blank" href="http://www.iteye.com/blogs/tag/%E9%9D%A2%E5%90%91%E5%AF%B9%E8%B1%A1" style="color:rgb(255,255,255)">面向对象</a> </div>
</div>
<div id="blog_content">
<div>
<p>本文简单阐述了进程与线程的关系,为了便于理解,本文也将简述CPU的工作原理。</p>
<p> <span style="color:rgb(255,0,0)">进程</span>是计算机中的程序关于某数据集合上的一次运行活动,是系统进行资源分配和调度的基本单位,是<a href="http://lib.csdn.net/base/operatingsystem" class="replace_word" title="操作系统知识库" target="_blank" style="color:#df3434; font-weight:bold;">操作系统</a>结构的基础。或者说<span style="color:rgb(255,0,0)">进程</span>是具有一定独立功能的程序关于某个数据集合上的一次运行活动,进程是系统进行资源分配和调度的一个独立单位。</p>
<p> <span style="color:rgb(255,0,0)">线程</span>则是<span style="color:rgb(255,0,0)">进程</span>的一个实体,是CPU调度和分派的基本单位,它是比进程更小的能独立运行的基本单位。</p>
<p> </p>
<p><span style="color:rgb(255,0,0)">进程和线程的关系:</span></p>
<p> (1)一个线程只能属于一个进程,而一个进程可以有多个线程,但至少有一个线程。</p>
<p> (2)资源分配给进程,同一进程的所有线程共享该进程的所有资源。</p>
<p> (3)处理机分给线程,即真正在处理机上运行的是线程。</p>
<p> (4)线程在执行过程中,需要协作同步。不同进程的线程间要利用消息通信的办法实现同步。</p>
<p> </p>
<p> </p>
<p><span style="color:rgb(255,0,0)">打开你的任务管理器就能看到进程一栏。如下图</span></p>
<p><br>
<br>
<img alt="" src="http://dl2.iteye.com/upload/attachment/0112/0069/e61596f2-2504-3358-aa50-ed167a17ac04.png"><br>
<br>
<span style="color:rgb(255,0,0)">程序、线程、进程的树形关系图如下</span></p>
<p><span style="color:rgb(255,0,0)"> </span></p>
<p><span style="color:rgb(255,0,0)"><br>
<br>
<img alt="" src="http://dl2.iteye.com/upload/attachment/0112/0071/332e02ed-22f7-3248-9866-252638aabd19.bmp"><br>
<br>
</span></p>
<p><span style="color:rgb(255,0,0)">操作系统的设计,因此可以归结为三点:</span></p>
<p>(1)以多进程形式,允许多个任务同时运行;</p>
<p>(2)以多线程形式,允许单个任务分成不同的部分运行;</p>
<p>(3)提供协调机制,一方面防止进程之间和线程之间产生冲突,另一方面允许进程之间和线程之间共享资源。</p>
<p> </p>
<p> 例如我们在玩格斗游戏程序的时候,玩家1出拳时,玩家2格挡,这两个动作是同时发生的,所以此时涉及到了多线程,所以游戏进程要至少有两个线程,分别为出招和格挡。比如我们用QQ聊天,同时开着QQ音乐,此时大家感觉QQ聊天和QQ音乐是同时进行的,但是CPU在同一时间只能处理一件事情。</p>
<p> 我想大家小的时候都应该看过或者很喜欢看一种漫画书,当你快速的翻阅那本书的时候,书上的人物好像动起来了一样,就是所谓的逐帧动画,CPU的处理事件的原理与其类似。</p>
<p> 当你运行QQ聊天和QQ音乐的时候,CPU的工作就是不断的切换进程,如果每秒切换6次,你一定会觉得卡,如果切换的足够快,你将会感觉是同时在运行QQ音乐和QQ聊天。</p>
<p> </p>
<p><span style="color:rgb(255,0,0)">结论:</span></p>
<p> (1)线程是进程的一部分</p>
<p> (2)CPU调度的是线程</p>
<p> (3)系统为进程分配资源,不对线程分配资源</p>
<p> </p>
<p> </p>
<p> </p>
</div>
</div>
<div>
<ul>
<li><a target="_blank" href="http://bs-yg.iteye.com/blog/2246355#" style="color:black">查看图片附件</a></li></ul>
</div>
<div>
<h3><a target="_blank" href="http://bs-yg.iteye.com/blog/2246355" style="color:black">进程丶线程丶CPU关系简述</a></h3>
<ul>
<strong>博客分类:</strong>
<li><a target="_blank" href="http://bs-yg.iteye.com/category/347815" style="color:black">java基础</a></li></ul>
<div><a target="_blank" href="http://www.iteye.com/blogs/tag/%E8%BF%9B%E7%A8%8B" style="color:rgb(255,255,255)">进程</a><a target="_blank" href="http://www.iteye.com/blogs/tag/%E7%BA%BF%E7%A8%8B" style="color:rgb(255,255,255)">线程</a><a target="_blank" href="http://www.iteye.com/blogs/tag/CPU" style="color:rgb(255,255,255)">CPU</a><a target="_blank" href="http://www.iteye.com/blogs/tag/java" style="color:rgb(255,255,255)">java</a><a target="_blank" href="http://www.iteye.com/blogs/tag/%E9%9D%A2%E5%90%91%E5%AF%B9%E8%B1%A1" style="color:rgb(255,255,255)">面向对象</a> </div>
</div>
<div id="blog_content">
<div>
<p>本文简单阐述了进程与线程的关系,为了便于理解,本文也将简述CPU的工作原理。</p>
<p> <span style="color:rgb(255,0,0)">进程</span>是计算机中的程序关于某数据集合上的一次运行活动,是系统进行资源分配和调度的基本单位,是<a href="http://lib.csdn.net/base/operatingsystem" class="replace_word" title="操作系统知识库" target="_blank" style="color:#df3434; font-weight:bold;">操作系统</a>结构的基础。或者说<span style="color:rgb(255,0,0)">进程</span>是具有一定独立功能的程序关于某个数据集合上的一次运行活动,进程是系统进行资源分配和调度的一个独立单位。</p>
<p> <span style="color:rgb(255,0,0)">线程</span>则是<span style="color:rgb(255,0,0)">进程</span>的一个实体,是CPU调度和分派的基本单位,它是比进程更小的能独立运行的基本单位。</p>
<p> </p>
<p><span style="color:rgb(255,0,0)">进程和线程的关系:</span></p>
<p> (1)一个线程只能属于一个进程,而一个进程可以有多个线程,但至少有一个线程。</p>
<p> (2)资源分配给进程,同一进程的所有线程共享该进程的所有资源。</p>
<p> (3)处理机分给线程,即真正在处理机上运行的是线程。</p>
<p> (4)线程在执行过程中,需要协作同步。不同进程的线程间要利用消息通信的办法实现同步。</p>
<p> </p>
<p> </p>
<p><span style="color:rgb(255,0,0)">打开你的任务管理器就能看到进程一栏。如下图</span></p>
<p><br>
<br>
<img alt="" src="http://dl2.iteye.com/upload/attachment/0112/0069/e61596f2-2504-3358-aa50-ed167a17ac04.png"><br>
<br>
<span style="color:rgb(255,0,0)">程序、线程、进程的树形关系图如下</span></p>
<p><span style="color:rgb(255,0,0)"> </span></p>
<p><span style="color:rgb(255,0,0)"><br>
<br>
<img alt="" src="http://dl2.iteye.com/upload/attachment/0112/0071/332e02ed-22f7-3248-9866-252638aabd19.bmp"><br>
<br>
</span></p>
<p><span style="color:rgb(255,0,0)">操作系统的设计,因此可以归结为三点:</span></p>
<p>(1)以多进程形式,允许多个任务同时运行;</p>
<p>(2)以多线程形式,允许单个任务分成不同的部分运行;</p>
<p>(3)提供协调机制,一方面防止进程之间和线程之间产生冲突,另一方面允许进程之间和线程之间共享资源。</p>
<p> </p>
<p> 例如我们在玩格斗游戏程序的时候,玩家1出拳时,玩家2格挡,这两个动作是同时发生的,所以此时涉及到了多线程,所以游戏进程要至少有两个线程,分别为出招和格挡。比如我们用QQ聊天,同时开着QQ音乐,此时大家感觉QQ聊天和QQ音乐是同时进行的,但是CPU在同一时间只能处理一件事情。</p>
<p> 我想大家小的时候都应该看过或者很喜欢看一种漫画书,当你快速的翻阅那本书的时候,书上的人物好像动起来了一样,就是所谓的逐帧动画,CPU的处理事件的原理与其类似。</p>
<p> 当你运行QQ聊天和QQ音乐的时候,CPU的工作就是不断的切换进程,如果每秒切换6次,你一定会觉得卡,如果切换的足够快,你将会感觉是同时在运行QQ音乐和QQ聊天。</p>
<p> </p>
<p><span style="color:rgb(255,0,0)">结论:</span></p>
<p> (1)线程是进程的一部分</p>
<p> (2)CPU调度的是线程</p>
<p> (3)系统为进程分配资源,不对线程分配资源</p>
<p> </p>
<p> </p>
<p> </p>
</div>
</div>
<div>
<ul>
<li><a target="_blank" href="http://bs-yg.iteye.com/blog/2246355#" style="color:black">查看图片附件</a></li></ul>
</div>
</div>
转自:http://blog.csdn.net/u013322876/article/details/50595886
阅读全文
0 0
- 进程丶线程丶CPU关系简述
- 进程丶线程丶CPU关系简述
- 进程丶线程丶CPU关系简述
- 进程与线程 - 简述
- 进程和线程简述
- 进程与线程的关系和区别 CPU调度简介
- 简述CPU,内存,磁盘,指令的关系
- 进程与线程的简述
- 什么是类,什么是虚拟机,和内存CPU有什么关系......线程与进程的关系
- 进程线程 关系
- 进程、线程关系图
- 进程与线程关系
- 进程与线程关系
- 进程与线程关系
- 进程和线程关系
- 进程、线程的关系
- 进程和线程关系
- 进程与线程之间的关系和区别 及 CPU调度
- HTTP概述
- JS正则表达式完整教程(略长)
- 网站运营及管理要点_影响网站运营的要素paobujiv
- 代码处理 iOS 的横竖屏旋转
- 获取任意网站的图标,标题栏logo,网站logo
- 进程丶线程丶CPU关系简述
- mongodb
- Rx、kotlin、retrofit三者结合封装的网络请求库
- HDU1728 逃离迷宫 DFS练习题
- GitStack使用说明
- HashTable 源码分析
- Intellij IDEA使用笔记(持续更新...)
- Zxing二维码精简(竖屏、拉伸处理、扫描框大小和扫描线移动)
- HDU1166 疑兵布阵 【线段树】