- 4
- 0
- 约3.28千字
- 约 16页
- 2017-05-11 发布于湖北
- 举报
计算思维 Ch9-2精要
Lu Chaojun, SJTU Lu Chaojun, SJTU 并行计算 Lu Chaojun, SJTU * Lu Chaojun, SJTU * * 程序的执行 von Neumann体系结构计算机:程序(指令序列)和数据都存储在内存中 CPU根据程序计数器PC(或称指令指针IP)的内容, 取出当前指令执行,然后PC被赋予下一条要执行的指令的地址. 虽然也存在指令级并行技术,但我们讨论的是程序级的并行. Lu Chaojun, SJTU * Lu Chaojun, SJTU * * 串行执行程序 CPU执行一个程序时总是从该程序的第一条指令开始,不间断地一直到执行到最后一条指令. 只有一个程序结束,才会去执行下一个程序. CPU每次由一个程序独占.只要前一个程序还没有结束,下一个程序就不能使用CPU. 缺点:系统资源的利用率不高. 计算机系统中有许多资源.当一个程序在使用某个资源时,其他资源是空闲的.如果允许其他程序使用空闲资源,就能提高系统资源的利用率. 例如DMA Lu Chaojun, SJTU * Lu Chaojun, SJTU * * 并发执行 计算机程序的执行是由操作系统控制的.现代操作系统都支持所谓多道程序或多任务,即允许多个程序同时执行. 同时:在只有一个CPU的情况下,是不可能有真正的多个程序同时运行的,因为CPU在任一时刻只能执行一条指令! 分时使用CPU,即CPU在多个程序之间切换. 这种多个相互独立的程序交叉执行的方式称为并发或并行执行. 多处理器/多核处理器上能真正并行. 进程 进程是指程序的一次执行所形成的实体.程序一旦执行,即创建一个进程. 进程的构成:程序代码+进程状态信息(上下文,包括程序数据的当前值,当前执行点等). 程序与进程:不同程序的执行对应不同的进程;同一个程序多次执行也创建多个进程(相同程序代码+不同上下文). OS调度进程:上下文切换代价高. Lu Chaojun, SJTU * 线程 线程,是指程序(进程)中的一段代码,它构成程序中一个相对独立的执行流. 字面意义:线程是程序内部的一个线索” 线程是一个程序内部的多任务机制. 一个程序中可以有多个执行线索. Lu Chaojun, SJTU * 进程 vs 线程 进程带有独立的状态信息,而一个进程内的多个线程则共享状态,内存和其他资源 进程有独立的地址空间,而同一进程的多个线程共享地址空间 进程间通信(IPC)较麻烦,而线程之间可通过共享内存通信 进程上下文切换开销大,而线程切换开销小 Lu Chaojun, SJTU * 多线程编程 线程原是OS中的概念,是系统的工具,用于系统的功能 线程现在已成为用户程序设计的工具 用在需要并行执行的场合: 科学应用:更快地计算; 解决阻塞:用户输入;在长时间计算期间进行显示服务;多媒体,动画等. Lu Chaojun, SJTU * Python多线程:thread模块 程序开始执行,即构成主线程.其中随时可以创建新线程去执行特定任务. 线程的创建和启动: thread.start_new_thread (function, args) 创建新线程并立即返回 新线程启动,向函数function传递参数元组args,并执行function 线程终止:当函数function返回. Lu Chaojun, SJTU * 例eg9_3:thread模块用法 def task(tName,n): for i in range(n): print %s:%d\n % (tName,i) print %s:任务完成!回真身去喽...\n % tName thread.interrupt_main() print 老孙:我是孙悟空! print 老孙:我拔根毫毛变个小猴儿~~~ thread.start_new_thread(task,(小猴,3)) print 老孙:我睡会儿,小猴儿干完活再叫醒我~~~\n while True: print 老孙:Zzzzzzz\n Lu Chaojun, SJTU * 例eg9_4:thread模块用法 def task(tName,n,delay): for i in range(n): time.sleep(delay) print %s:%d\n % (tName,i) print 老孙:我是孙悟空! print 老孙:我拔根毫毛变个小猴儿哼 thread.start_new_thread(task,(哼,5,2)) print 老孙:我再拔根毫毛变个小猴儿哈 thread.start_new_thread(task,(哈,5,
您可能关注的文档
- 壳牌煤气化技术简介要点.docx
- 壳聚糖涂膜在鲜切果蔬保鲜中的应用要点.doc
- 解读《火星救援》精要.pptx
- 壶口与龙门要点.ppt
- 解读建筑——大师作品分析精要.ppt
- 声音的特性PPT要点.ppt
- 触电急救方法精要.ppt
- 处世悬镜原文及译文要点.docx
- 触摸屏的调试精要.ppt
- 言语表达-详解-20精要.doc
- 03-2 2025年度民主生活会征求意见座谈会主持词.docx
- 03-1 2025年度民主生活会主持讲话提纲.docx
- 02-1 会前学习-《县以上党和国家机关党员领导干部民主生活会若干规定》相关要求.docx
- 在2025年度民主生活会上的总结讲话三篇.docx
- 在2025年度民主生活会上的总结讲话三篇 (3).docx
- 市委宣传部2025年度民主生活会查摆问题整改方案两篇.docx
- 在市行政审批和政务信息管理局机关2026年全体干部政绩观教育大会上的党课讲稿.docx
- X市应急管理局2026年度安全生产监督检查计划.docx
- 2025年度民主生活会领导班子对照检查材料(五个带头)三篇.docx
- 2025年度民主生活会“五个带头”个人对照检查材料三篇.docx
最近下载
- DB5115_T 06-2019 农村产权流转交易服务规范 土地经营权价值评估.docx VIP
- 国新资本有限公司相关岗位招聘16人备考考试题库含答案解析.docx VIP
- 《农村产权流转交易 抵(质)押融资规范》.pdf VIP
- 《农村产权流转交易 农村产权价值评估规范》.pdf VIP
- 循环水处理标准GB50050-2007.doc VIP
- 《DL T5068-2016火力发电厂化学设计技术规程.epub》.pdf
- 2011年高考湖北卷英语试题(真题).pdf VIP
- 国新资本有限公司相关岗位招聘16人备考考试试题有答案解析.docx VIP
- 2011年高考湖北卷语文试题(真题).pdf VIP
- 2026国新资本有限公司相关岗位招聘16人考试参考试题及答案解析.docx VIP
原创力文档

文档评论(0)