LINUX系统下多线程与多进程性能分析.pdfVIP

  1. 1、本文档共5页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
LINUX系统下多线程与多进程性能分析,linux多进程多线程,linux多进程和多线程,多进程多线程,多线程和多进程的区别,多进程和多线程,多进程与多线程的区别,python多进程多线程,多线程和多进程编程,多线程与多进程

电子发烧友 电子技术论坛 LINUX 系统下多线程与多进程性能分析1 周丽 焦程波 兰巨龙 ( 国家数字交换工程技术中心,河南,450002) 摘要:采用多进程处理多个任务,会占用很多系统资源(主要是 CPU 和内存的使用)。在 LINUX 中,则对这种弊端进行了改进,在用户态实现了多线程处理多任务。本文系统论述 了多线程间通信技术的使用,通过对单 cpu 系统中多线程和多进程技术的比较和和性能分 析,结合线程间通信技术的有关特性提出了应用该项技术所应遵循的原则和思路,并提出了 改进思路,同时还讨论了多线程通信中存在的一些问题。 关键词: 多线程 多进程 中图分类号:TP—30 文献标志码:A The Performance of Multi-Pthreads vs Multi-Processes in Linux Operation System ZHOU Li JIAO Cheng-bo LAN Ju-long (National Digital Switching System Engineering Technology Research Center, Henan,450002) Abstract: Using multi-processes to handle multi-tasks will use a lot of system resources(mainly include cpu and memory).In linux os,this disadvantage is improved by using multi-threads to deal with multi-tasks.In this paper,we discuss the application of multi-threads and multi-processes by comparing their performance.In the end,we give a method which use multi-threads and multi-processes together to improve.Also we mention some problems in multi-threads communication. Key words :multi-threads ;multi-processes 1.关于进程和线程的简述 在 Linux 操作系统中,一个进程(Process)相当于一个任务(Task),从操作系统核心的角 度来看,进程是管理系统资源(cpu,内存,文件等)的基本单位,是为正在运行的程序所 提供的运行环境;从用户角度来看,进程是应用程序的一个动态执行过程。进程具有一段可 执行的程序、专用的系统堆栈空间、私有的“进程控制块”(即 task_struct 数据结构)和独立的 存储空间。 在 linux 操作系统中,内核空间是通过进程模拟线程的,在用户空间用 pthread 创建线 程。线程又称为轻量级进程 (LWP) ,是程序执行的最小单位。一个进程至少需要有一个线 程来执行指令。线程也具有一段可执行的程序、专用的系统堆栈空间、私有的“进程控制块 (PCB )”(即task_struct 数据结构) ,但是没有自己的存储空间。 线程与进程的主要区别在于:线程不能够单独执行,它必须运行在处于活动状态的进程 中;多个线程共享同一进程除cpu 以外的所有资源,各线程间允许任务协作和数据交换。创 建线程比进程开销小,多线程间通信也比多进程间的通信过程简单。简而言之,线程只不过 是进程的一个执行上下文。 通常单独一个程序运行时,缺省的包含一个主线程,主线程以函数地址的形式(如 main 函数)提供程序的启动点,这就是单进程单线程的情况。若在 main 函数中创建多个线程, 则该程序运行时,操作系统为每个线程分配不同的 CPU 时间片,并根据线程优先级进行调 度。由于每个时间片时间很短,看上去好象各个线程是并发执行的,实际上同一时刻只有一 个线程在

文档评论(0)

tianma2015 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档