当前位置:  技术问答>linux和unix

面试问题:描述线程和进程的概念以及它们的区别?

    来源: 互联网  发布时间:2015-04-30

    本文导语:  面试问题:描述线程和进程的概念以及它们的区别? 征求用于面试的答案(简洁,清晰。) 谢谢! | 一个进程就是一个拥有自己的虚拟地址空间的单独运行程序。当操作系统改变当前的活动进程(active...

面试问题:描述线程和进程的概念以及它们的区别?
征求用于面试的答案(简洁,清晰。)
谢谢!

|
一个进程就是一个拥有自己的虚拟地址空间的单独运行程序。当操作系统改变当前的活动进程(active process)时,就会出现一个系统状态切换操作(a context switch)。由于每一个进程都有它们自己的虚拟地址空间,地址转换映射表(address translation map)就会在上下文切换过程中相应地发生改变。

  在一个进程内,也有可能存在多个执行线程。线程与进程是类似的,但是,和进程不同的是,线程没有独立的虚拟地址空间,而是工作在父进程的空间里,同时,能够访问父进程的所有资源。相应地,线程创建时间只是进程创建时间的一小部分,此外,在线程之间产生的线程交互通讯(interprocess communication,IPC)比进程之间产生的进程交互通讯,速度要高出一大截。

|
进程:进程是一个运行程序并为其提供执行环境的实体,它包括一个地址
空间和至少一个控制点,进程在这个地址空间上执行单一指令序列。进程
地址空间包括可以访问或引用的内存单元的集合,进程控制点通过一个一
般称为程序计数器(program counter,PC)的硬件寄存器控制和跟踪进程指令序列。

   在一个应用程序中使用多个进程有一个明显的缺点。创建这些进程增加了
一些基本开销,因为fork 是一种很大的系统调用,因为每个进程都有它
自己的地址空间,它必须使用进程间通信的手段如消息传递或者共享内
存。要把这些进程分配到不同的机器或处理器上去运行,及在进程之间传
递消息,等待进程完成,收集结果等都需要额外的开销。由于这些原因,
线程机制出现了。这时允许一个应用含有多个线程,所有这些线程共享一
个运行空间,但是每个线程有各自的私有栈。当系统在管理这些多线程时
(不论是用户态的线程,还是内核支持的线程),线程之间的切换将要比
进程之间的切换减少很多的工作量,从而节约系统的开销。

|
Process = thread + code, data, and kernel context

How threads and processes are similar
• Each has its own logical control flow.
• Each can run concurrently.
• Each is context switched.

How threads and processes are different
• Threads share code and data, processes (typically) do not.
• Threads are somewhat less expensive than processes.

|
进程是资源分配的最小单位。
线程是任务调度的最小单位。

    
 
 
 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 各位朋友,小弟过两天要到创智去面试了,这是我头一次去参加面试,不知道要问些什么问题,请大家多提点,提点。
  • 高分求进外企面试时的英语面谈经历
  • 哪位大哥知道杭州CSK公司怎么样?面试会试些什么呀? 薪水大概多少?急!!谢谢!! iis7站长之家
  • 面试过linux c的进来
  • 去建行面试应该注意些什么?帮帮我!
  • Unix/Linux下的开发经验,谁有这方面面试题.
  • 急!!! Java面试时的一个排列组合问题
  • 一家月薪上万的外企的面试题(Linux C工程師)
  • ### java面试问题集 ###
  • 请你展望一下软件技术未来的发展?(面试题)
  • 用UNIX/Linux开发的公司,面试都问些啥????
  • 哪位大哥知道浙大兰德怎么样?面试会试些什么呀?
  • 哪位大哥知道杭州CSK公司怎么样?面试会试些什么呀? 薪水大概多少?急!!谢谢!!
  • 急:我要去面试,大家给指点一下(在线等)
  • 谁有腾讯面试题目,请提供以下,谢谢~其他的也可以,谢谢~
  • H3C面试问题
  • Linux平台下的面试~~~
  • 关于招聘面试
  • 笔试和面试时回答不出具体服务的配置怎么办?有些Linux服务都是看书才会做的。
  • 这个面试题该怎么回答啊?


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3