bil*_*llu 53
进程是正在执行的计算机程序的实例.它包含程序代码及其当前活动.根据操作系统(OS),进程可以由多个执行线程组成,这些执行线程同时执行指令.基于进程的多任务处理使您可以在使用文本编辑器的同时运行Java编译器.在使用单个CPU的多个进程中,使用各种存储器上下文之间的上下文切换.每个进程都有一整套自己的变量.
线程是CPU利用率的基本单位,由程序计数器,堆栈和一组寄存器组成.执行线程从计算机程序的分支到两个或多个并发运行的任务.线程和进程的实现因操作系统而异,但在大多数情况下,进程中包含一个线程.多个线程可以存在于同一进程中并共享资源(如内存),而不同的进程不共享这些资源.同一进程中的线程示例是自动拼写检查并在写入时自动保存文件.线程基本上是在相同的内存上下文中运行的进程.线程可以在执行时共享相同的数据. 线程图,即单线程与多线程
任务是一组加载到内存中的程序指令.
小智 10
用简单的术语来解释
进程:进程是一组指令,作为对相关数据进行操作的代码,当程序加载到内存中时,进程有各自的状态,休眠,运行,停止等等.当CPU被分配时,每个进程至少有一个线程称为sigled线程程序.
线程:线程是进程的一部分.作为进程的一部分,可以存在多个线程.Thread有自己的程序区和内存区.一个进程内的多个线程无法访问彼此的数据.进程必须处理线程的sycnhronization以实现理想的行为.
任务:任务在全球范围内使用并不广泛.当程序指令加载到内存中时,人们会将其称为进程或任务.任务和流程现在都是同义词.
简短回答:
线程是一种调度概念,它实际上是CPU"运行"(您不运行进程).进程至少需要一个CPU/OS执行的线程.
流程是数据组织概念.为进程分配资源(例如,用于保持状态的存储器,允许的地址空间等).
小智 6
A process调用或启动程序.它是一个程序的实例,可以是多个并运行相同的应用程序.A thread是流程中最小的执行单元.一个进程可以运行多个线程.执行线程会导致任务.因此,在多线程环境中,发生多线程.
甲program在执行被称为process.程序可以有任意数量的进程.每个进程都有自己的地址空间.
线程使用进程的地址空间.线程和进程之间的区别在于,当CPU从一个进程切换到另一个进程时,需要将当前信息保存在进程描述符中并加载新进程的信息.从一个线程切换到另一个线程很简单.
A task只是一组加载到内存中的指令.线程本身可以将自己分成两个或多个同时运行的任务.
有关更多信息,请参阅链接:http://www.careerride.com/os-thread-process-and-task.aspx