




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、毕业论文开题报告学 生 姓 名:学 号:系 别:电子与计算机科学技术系专 业:网络工程论文题目:基于qt多线程下载软件的设计与实现指导教师: 2011 年 12 月 09 日毕 业 论 文 开 题 报 告1结合毕业论文课题情况,根据所查阅的文献资料,撰写2000字左右的文献综述:一、本课题的研究背景及意义以往我们开发的程序大多是单线程的,即一个程序只有一条从头至尾的执行线索。然而现实世界中的很多过程都具有多条线索同时动作的特性。例如,我们可以一边看电视,一边活动胳膊,如果不容许这样做,我们会感觉很难受。再如一个网络服务器可能需要同时处理多个客户机的请求等。qt c+语言的一大特性就是内置对多线
2、程的支持。多线程是指同时存在几个执行体,按几条不同的执行线索共同工作的情况,它使得编程人员可以很方便地开发出具有多线程功能、能同时处理多个任务的功能强大的应用程序。虽然执行线程给人一种几个事件同时发生的感觉,但这只是一种错觉,因为我们的计算机在任何给定的时刻只能执行那些线程中的一个。为了建立这些线程正在同步执行的感觉。qt c+快速地把控制从一个线程切换到另一个线程。 多个线程的执行是并发的,也就是在逻辑上“同时”,而不管是否是物理上的“同时”。如果系统只有一个cpu,那么真正的“同时”是不可能的,但是由于cpu的速度非常快,用户感觉不到其中的区别,因此我们也不用关心它,只需要设想各个线程是同
3、时执行即可。自从“多线程下载”技术发明以来,这项技术得到前所未有的关注已是不争的事实。在“网络蚂蚁”软件流行开后,许多下载软件也都纷纷效仿,是否具有“多线程下载”技术、甚至能支持多少个下载线程都成了人们评测下载软件的要素。“多线程下载”的基础是web服务器支持远程的随机读取,也即支持“断点续传”。这样,在下载时可以把文件分成若干部分,每一部分创建一个下载线程进行下载。多线程和传统的单线程在程序设计上最大的区别在于,由于各个线程的控制流彼此独立,使得各个线程之间的代码是乱序执行,由此带来的线程调度问题。由于是多线程进行断点续传,还要考虑记录多个断点位置,且记录断点位置时也要考虑同步互斥等问题。所
4、有这些都使得这一步比较复杂。但是可以明显提高网络文件的下载速度。 现在,不要说编写专门的下载软件,在自己编写的软件中,加入下载功能有时也非常必要。如让自己的软件支持自动在线升级,或者在软件中自动下载新的数据进行数据更新,这都是很有用、而且很实用的功能。二、多线程下载的现状及发展趋势浏览器属于第一代下载工具。这种工具除了具有多任务属性以外,其自动化程度也是比较高的。就下载软件而言,只要点击的链接指向的文件名称具有.exe或者.zip扩展名,就能够打开供用户选择保存到本地计算机上的对话框。第一代下载工具主要的缺点有两个:一个是用户自己不能方便地定制所能够下载的文件的类 外一个就是下载的过程一旦中途
5、因为意外情况中断,已经下载过来的那些数据就作废了。为了克服这种缺点,人们专门开发了优化下载过程的工具软件。最早的就是以当时的getright、go!zilla以及net vampire等为代表的断点续传下载工具。这种工具的优点就是能够具体地管理下载的过程,即使中断了,也可以重新接着中断的地方下载。实际上,专用的下载工具不但从这方面进行了优化,而且将其它更多的与下载有关的功能都集成进来,如下载以后文件的保存与管理、病毒自动扫描以及自动定时下载、可任意定制能够下载的文件类型等等。可以说,经典的断点续传工具属于第二代下载工具。三、本课题相关理论综述多线程:多线程是这样一种机制,它允许在程序中并发执行
6、多个指令流,每个指令流都被称为一个线程,线程间互相独立。 线程又称为轻量级进程,它和进程一样拥有独立的执行控制,由操作系统负责调度,区别在于线程没有独立的存储空间,而是和所属进程中的线程共享一个存储空间,这使得线程间的通信远较进程简单。 多个线程的执行是并发的,也就是在逻辑上“同时”,而不管是否是物理上的“同时”。如果系统只有一个cpu,那么真的“同时”是不可能的,但是由于cpu的速度非常快,用户感觉不到其中的区别是,因此我们只需要设想各个线程是同时执行即可。http工作原理:http是hyper text transportation protocol(超文本传输协议)的缩写,它是计算机之间
7、交换数据的方式,原理非常简单,就是用某种规则(协议)和提供文件的服务器取得联系并将文件搬到自己的计算机中来,从而实现下载的功能。也就是指可以从网页上直接通过链接获得文件地址的下载方式。 ftp工作原理:ftp是transportation protocol(文件传输协议)的缩写,是一种很常用的网络下载方式。它的标准地址形式就像 “ftp :/ / 00/ down/ f reezip23. zip”,其下载基本与http相同。p2p工作原理:p2p是英文peer-to-peer(对等)的简称,又被称为point to point “点对点”。“对等”技术,是一种网络新技术,
8、依赖网络中参与者的计算能力和带宽,而不是把依赖都聚集在较少的几台服务器上。它是下载术语,意思是在你自己下载的同时,自己的电脑还要继续做主机上传,这样你就可以在就近的资源点上下载自己需要的资料。 p2sp工作原理:p2sp下载方式实际上上对p2p技术的进一步延伸,它不但支持p2p技术,同时还通过多媒体检索数据库这个桥梁把原本孤立的服务器资源和p2p资源整合到了一起,用户下载资源的时候可以从任意就近的pc端或者服务器下载想要的资源。而且下载的同时下载程序会从多个资源丰富的站点产生多个镜像,同时下载文件。 四、作者的观点和主要思路从多方面资源搜索与调查来看,从本人目前的了解出发,未来的资源下载工具会
9、向以下几个方向发展: 1. 聚合资源 决定下载软件成败与否的关键因素有两个,一是资源的丰富性和优质性;二是下载的速度,这两者缺一不可。但目前大部分下载工具还仅仅停留在只追求速度的基础上,而事实上,用户对资源的诉求已经远远高于了对速度的诉求,这就导致眼下各类下载软件陷入了死胡同。 所谓平台化,是指软件基于其核心功能进而发展成为一个平台,这个平台可以聚合更多的资源,从而降低用户获取和使用资源的成本,提供更好的用户体验。下载软件未来发展就在于聚合资源,通讯软件、浏览器、下载软件平台化的发展趋势也让认未来的下载软件设计受益匪浅, 因为下载软件被公认为是下一个资源聚合平台,很可能成为“兵家必争之地”。
10、2. 界面将发生革命性的变化 无论多漂亮的界面,看惯了也会生厌,主界面是否具有新意和个性,是否能够在第一时间吸引用户的目光,操作是否简单、人性化,将是用户关注的重点,至于功能方面反而在其次了,毕竟同类型下载工具之间的差距不会很大。 3. 海量资源是否能够发挥作用 快车和迅雷的同质化是非常严重的,前者有车库(车友),后者有雷区(雷友),但快车还同时提供了发布和收藏的功能,这样可以更方便的实现资源的共享,不过目前的版本所提供的功能仍然相对有限,远远没有发挥出应有的功能。 快车的技术人员可能正在进一步完善资源定制的功能,也就是借助强大的“快车搜索”,为下载狂人提供量身订造的资源速递服务,这里给出的“
11、快车游戏排行榜”、“剧集批发市场”、“卡通急先锋”自然只是默认的推荐设置,估计用户可以通过“资源定制”重新进行设置。也许不久的将来,我们可以直接从快车中获得最流行的电影大片,最好听的流行金曲,最需求的商务文档,也许还有最畅销的网络文字,甚至只需要进行简单的设置,快车就会自动搜索出相关的资源供你下载,当然可能还会与车友级别实现挂钩,而这一切并不是梦想。 4. 下载速度是否能够进一步提升 老资格的网民都知道,很早以前flashget(最初是叫做“网际快车”)是和netants(网络蚂蚁)相提并论的,但后来迅雷凭借p2sp等技术异军突起(其实是有些盗链的意思),不过随着快车先后发布2.0的多个测试版
12、本,特别是beta4版本在下载速度方面有了质的提升,又重新占据了下载高地。快车已经在结束下载前的最终速度方面获得了满意的技术突破,我们完全有理由憧憬新版本的快车将在下载速度方面有着更直接的改观,从而发挥出宽带网络的最大极限。下载工具的竞争其实也是一种速度的竞争。未来的下载工具被期望着以更优化的程序造就更快的下载速度,实现宽带的利用最大化。 5. 版权问题 网络中传输的作品表现形式与传统意义上的作品表现形式有所不同,但并不意味着网络中传输的不是作品。我们下载网络资源的过程,是一个复制的过程。数据通过网络从服务器上被复制到了个人用户的计算机上,而数字化的作品无论经过多少复制的过程,与源头本身还是相
13、同的。根据美国版权法第107条的规定,用户为个人欣赏目的而下载音乐,使其免费获得了他们本来需要购买的东西,属于商业性使用;被下载的音乐具有高度原创性,应当受到最高程度的保护;下载音乐属于对作品的全部复制,而且已对正版市场造成严重影响。根据这四个因素进行分析后,法院应该可以认定最终使用用户未经作品版权人同意下载音乐的行为不属于“合理使用”范围,构成了对复制权的侵犯。 参考文献:1 张海藩. 软件工程m.第二版.北京:人民邮电出版社.2005,(03) :225-229 2 毛光喜. 多线程下载工具的开发与应用j .计算机应用与软件, 2006, 23 (7) : 1362138 . 3 廖乐林.
14、 断点续传的原理探讨和编程应用j .计算机与信息技术, 2007, 23: 352 .4 marc abrams, ed. world wide web - beyond the basics, prentice hall, 19985 谭浩强. c+程序设计.第一版.北京:清华大学出版社.2004,(06) .6 stephen prata.c+ primer plus中文版人民邮电出版社 2005,(5). 毕 业 论 文 开 题 报 告本课题要研究或解决的问题和拟采用的研究手段(途径):一、本课题要研究或解决的问题本课题主要研究的是基于qt的多线程软件的设计和实现的问题。设计实现具有运行速度快,效率高,并具有多任务和断点续传等特性的下载工具,为用户提供安全,绿色的实用性下载工具。软件设计与分析主要分为:系统需求分析,包括功能分析和可行性分析;系统分析,包括模块划分和模块设计;系统实现。其中又穿插了利用下载协议来实现下载指定的url和多线程任务的实现。二、拟采用的设计分析方法1)前期准备:收集相关资料,查阅中外文献,请教老师和同学。学习、掌握软件的设计流程和方法,分析
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 外资小公司车辆管理制度
- 核酸检测分级管理制度
- 外出检查差旅费管理制度
- 加强实训室安全管理制度
- 实验室分级分区管理制度
- 口腔科门诊手术管理制度
- 幼儿园弹性午睡管理制度
- 安保部设施设备管理制度
- 五天制工作公司管理制度
- 旅游公司安保管理制度
- 2025年广东省广州市白云区中考数学二模试卷
- 磷化池安全管理制度
- 工厂车间计件管理制度
- 太空安全主题班会课件
- 护理文书课件
- 2025年企业大脑·AI赋能低空经济白皮书
- 2024北京海淀区六年级(下)期末数学试题及答案
- 2025年中考英语作文预测及满分范文11篇
- 三级养老护理员职业技能鉴定理论考试题(附答案)
- 2025重庆水务环境控股集团有限公司招聘6人笔试参考题库附带答案详解
- 办公技能实操考试试题及答案
评论
0/150
提交评论