进程与线程的区别
来源:互联网 发布:清华网络教育 编辑:程序博客网 时间:2024/06/04 18:55
时间:2014.06.25
地点:基地
-------------------------------------------------------------------------
一、简述
进程Process和线程Thread是操作系统的基本概念,抽象而重要。以下从几个方面来分析进程和线程的区别。
-------------------------------------------------------------------------
二、分析
进程可认为是程序执行时的一个实例,是系统进行资源分配的独立实体,每个进程拥有独立的地址空间,所以一个进程无法直接访问另一个进程的变量和数据结构。如果希望让一个进程访问另一个进程的资源,需要使用进程间通信,比如:共享存储系统,消息传递系统,管道通信系统等。
线程是进程的一个特定执行路径,当一个线程修改了进程中的资源时,其兄弟线程可以立即看到这种变化。
-------------------------------------------------------------------------
三、总结
1.进程是系统进行资源分配的基本单位,有独立的内存地址空间;线程是CPU调度的基本单位,没有单独的地址空间,有独立的栈,局部变量,寄存器和程序计数器等。2.创建进程的开销大,包括创建虚拟地址空间等需要大量的系统资源;创建线程的开销小,基本上只有一个内核对象和一个堆栈。
3.一个进程无法直接访问另一个进程的资源;同一个进程内的多个线程共享进程的资源
4.进程的切换开销大,线程的切换开销下;进程间通信开销大,线程间通信开销小。
5.线程属于进程,不能独立执行,每个进程至少有一个线程,即主线程。
0 0
- 线程与进程的区别
- 线程与进程的区别
- 线程与进程的区别
- 进程与线程的区别
- 进程与线程的区别
- 线程与进程的区别
- 进程与线程的区别
- 进程与线程的区别
- 进程与线程的区别
- 线程与进程的区别
- 线程与进程的区别
- 进程与线程的区别
- 进程与线程的区别
- 进程与线程的区别
- 进程与线程的区别
- 进程与线程的区别
- 线程与进程的区别
- 进程与线程的区别
- 设计模式--对职责链模式的思考
- 蓝牙技术发展
- Redis 常用命令
- unix命令自我总结
- Android SDK Manager不能更新的解决方案(已验证于2014.6.25)
- 进程与线程的区别
- 字符串中重复字符的处理
- MysQL数据库修改密码
- 软件架构视图
- STL(3)之for_each算法实现
- linux下由带-开头文件想到的
- 算法入门 3-4回文
- MFC 多线程总结
- 正则表达式