OS
2016-01-25 15:20
197 查看
线程定义
进程 vs 线程
进程是资源管理的最小单位,线程是程序执行的最小单位。在操作系统设计上,从进程演化出线程,最主要的目的就是更好的支持SMP以及减小(进程/线程)上下文切换开销。
最初的进程定义都包含程序、资源及其执行三部分,其中程序通常指代码,资源在操作系统层面上通常包括内存资源、IO资源、信号处理等部分,而程序的执行通常理解为执行上下文,包括对cpu的占用,后来发展为线程。
在线程概念出现以前,为了减小进程切换的开销,操作系统设计者逐渐修正进程的概念,逐渐允许将进程所占有的资源从其主体剥离出来,允许某些进程共享一部分资源,例如文件、信号,数据内存,甚至代码,这就发展出轻量进程的概念
线程:进程内部的一种控制序列
线程的优点
1 在加锁和数据一致性方面,线程的开销比进程小很多。
2 对于多道程序,可以将多道事情划分多个线程,来提高程序运行的效率
3 线程间切换需要OS的工作开销比进程切换小得多
进程 vs 线程
进程是资源管理的最小单位,线程是程序执行的最小单位。在操作系统设计上,从进程演化出线程,最主要的目的就是更好的支持SMP以及减小(进程/线程)上下文切换开销。
最初的进程定义都包含程序、资源及其执行三部分,其中程序通常指代码,资源在操作系统层面上通常包括内存资源、IO资源、信号处理等部分,而程序的执行通常理解为执行上下文,包括对cpu的占用,后来发展为线程。
在线程概念出现以前,为了减小进程切换的开销,操作系统设计者逐渐修正进程的概念,逐渐允许将进程所占有的资源从其主体剥离出来,允许某些进程共享一部分资源,例如文件、信号,数据内存,甚至代码,这就发展出轻量进程的概念
线程:进程内部的一种控制序列
线程的优点
1 在加锁和数据一致性方面,线程的开销比进程小很多。
2 对于多道程序,可以将多道事情划分多个线程,来提高程序运行的效率
3 线程间切换需要OS的工作开销比进程切换小得多
相关文章推荐
- JavaScript:函数
- AFNetworking 的请求方法
- Linux学习笔记:MySQL主从复制的风险与防范
- 经典opengl
- ios runtime之深入浅出 Cocoa 消息
- Cacti图形数据自动导出脚本(二)
- 磁盘与文件系统管理之二
- 回显是什么鬼?浅谈
- memerched+tomcat 缓存浏览器的session
- 关于viewpoint的疑惑
- 动态添加js文件.
- C语言小知识点练习总结
- ICCV 2015 Calibration robust to defocus
- 二.基本快照(下)
- leetcode之ZigZag Conversion
- 图片上写文字
- 深度学习2015年文章整理(CVPR2015)
- springmvc中@PathVariable和@RequestParam的区别
- Android 第三方应用监听home键
- LA3029