社区
其它技术问题
帖子详情
关于进程线程开销问题
feilongzafei
2012-11-13 05:52:56
看了下操作系统的书,对线程和进程的结构不是很理解,为什么说线程开销比进程要小,
究竟小到哪里,求高手专家详细解答一下进程和线程的结构。
...全文
211
2
打赏
收藏
关于进程线程开销问题
看了下操作系统的书,对线程和进程的结构不是很理解,为什么说线程开销比进程要小,究竟小到哪里,求高手专家详细解答一下进程和线程的结构。
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
2 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
mujiok2003
2012-11-13
打赏
举报
回复
1,进程需要独立的地址空间, 而线程不需要(进程内的所有线程共享地址空间) 2,线程之间更容实现共享。
转角天边
2012-11-13
打赏
举报
回复
http://hi.baidu.com/stefan_c/item/20a26f170bdbc08888a9568c 别人已经总结的很好了,楼主看看
进程
和
线程
:
进程
的
开销
比
线程
大在了哪里?
不知你在面试中是否遇到过这样的
问题
,题目很短,看似简单,但在回答时又感觉有点吃力?比如下面这两个
问题
:
进程
内部都有哪些数据? 为什么创建
进程
的成本很高? 这样的
问题
确实不好回答,除非你真正理解了
进程
和
线程
的原理,否则很容易掉入面试大坑。本讲,我将带你一起探究
问题
背后的原理,围绕面试题展开理论与实践知识的学习。通过本讲的学习,希望你可以真正理解
进程
和
线程
原理,从容应对面试。
进程
和
线程
进程
(Process),顾名思义就是正在执行的应用程序,是软件的执行副本。而
线程
是轻量级的
进程
。
进程
是分配资源
进程
和
线程
切换的
开销
进程
切换
开销
切换虚拟地址空间 切换CPU上下文 切换内核栈
线程
切换
开销
切换CPU上下文 切换内核栈 虚拟地址空间 每个
进程
都有自己的虚拟地址空间,
进程
内的所有
线程
共享
进程
的虚拟地址空间。 虚拟内存是操作系统为每个
进程
提供的一种抽象,每个
进程
都有属于自己的、私有的、地址连续的虚拟内存,当然我们知道最终
进程
的数据及代码必然要放到物理内存上,那么必须有某种机制能记...
经典面试题:
进程
、
线程
、协程
开销
问题
,为什么
进程
切换的
开销
比
线程
的大?
操作系统面试常问
问题
进程
切换的
开销
为什么比
线程
更大
进程
有独立的地址空间,
进程
切换时需要切换地址空间的映射关系,这涉及到页表的切换和 TLB(Translation Lookaside Buffer)的刷新等操作,
开销
较大。由于
进程
具有独立的地址空间和资源,
进程
切换需要考虑安全性和隔离性,例如需要刷新 TLB、清理缓存等,增加了切换的
开销
。
线程
切换只需要保存和恢复
线程
的上下文信息,相对于
进程
来说,
线程
的上下文信息更少,因此
线程
切换的
开销
较小。
进程
有独立的资源,包括文件描述符、打开的文件、信号处理器等,
进程
切换时需要切换和管理这些资源,
开销
较大。
线程
开销
为何比
进程
小
线程
共享同一
进程
的地址空间。因此,在多
线程
的环境中,
线程
之间可以更容易地共享数据和资源,像
进程
那样进行复杂的和。这降低了在
进程
间传递信息的
开销
。
其它技术问题
3,882
社区成员
9,046
社区内容
发帖
与我相关
我的任务
其它技术问题
C/C++ 其它技术问题
复制链接
扫一扫
分享
社区描述
C/C++ 其它技术问题
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章