冷面阎罗

低调做人&&高调做事
随笔 - 208, 文章 - 3, 评论 - 593, 引用 - 0
数据加载中……

线程与进程

前几天研究java的线程,感觉理论的掌握不够,故向同学借了点资料研究,不了同学给我考博的操作系统的材料,我总结了一下,把其中部分分享一下,大家一同进步.


1 线程的引入
      进程:资源分配单位(存储器、文件)和CPU调度(分派)单位。又称为"任务(task)"
      线程:作为CPU调度单位,而进程只作为其他资源分配单位。
只拥有必不可少的资源,如:线程状态、寄存器上下文和栈
同样具有就绪、阻塞和执行三种基本状态
      线程的优点:减小并发执行的时间和空间开销(线程的创建、退出和调度),因此容许在系统中建立更多的线程来提高并发程度。
      线程的创建时间比进程短;
      线程的终止时间比进程短;
      同进程内的线程切换时间比进程短;
      由于同进程内线程间共享内存和文件资源,可直接进行不通过内核的通信;

2 进程和线程的比较
         地址空间和其他资源(如打开文件):进程间相互独立,同一进程的各线程间共享--某进程内的线程在其他进程不可见
         通信:进程间通信IPC,线程间可以直接读写进程数据段(如全局变量)来进行通信--需要进程同步和互斥手段的辅助,以保证数据的一致性
         调度:线程上下文切换比进程上下文切换要快得多

posted on 2006-12-14 15:11 冷面阎罗 阅读(229) 评论(0)  编辑  收藏


只有注册用户登录后才能发表评论。


网站导航: