多线程通讯技术的应用

来源 :城市建设理论研究 | 被引量 : 0次 | 上传用户:jcmmdq
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  【摘要】近年来,随着计算机技术的迅速发展,计算机技术已经被广泛应用于各个领域,多线程通讯技术应用的作用也显得越来越重要。通过详细地研究有关串行通讯的原理和应用实例的分析,这为接下来的相关技术人员和程序开发人员的工作带来了一定的指导作用。
  【关键词】多线程;通讯技术;基本原理;
  中图分类号:I253文献标识码: A
  一、多线程的应用领域
  在操作系统中,进程是应用程序的运行实例,是应用程序的一次动态执行,其所有线程共享虚拟地址空间、全局变量和该进程的操作资源。而多线程是进程内部程序执行的路径,是进程的一个执行单元。多线程是操作系统分配CPU时间的基本单位,一个线程可以执行应用程序的任何部分,包括当前被其它线程执行的部分。一个应用程序至少包括一个主线程,还可拥有其它辅线程,当一个应用程序中的线程多于一个时,就称该程序是多线程的。
  为了运行所有多线程,操作系统为每个独立线程安排一些CPU,并通过其本身的调度机制来评价各个活动线程的优先级,优先级别高的活动优先执行,优先級别低的活动线程挂起。创建一个进程时,它的第一个线程称为主线程,它由系统自动生成,然后可由这个主线程生成辅助线程,这些辅助线程又可生成更多的线程。在这个框架中,所有程序编译后生成的都是中间代码,而这些中间代码的隔离、加载和卸载以及安全边界的提供都是通过应用程序域来实现的。此时,一个进程可以包含一个或多个应用程序域,而一个应用程序域又可以包含一个或多个线程。这样实际上就相当于在进程和线程之间增加了一个新的安全边界。无论在同一个进程之内还是在不同的进程之间,每个应用程序域之间都是相互无关的,这些不同的应用程序域之间只能通过远程通讯来实现消息和对象的传递。
  二、WIN32 API 的串行通讯技术的应用原理
  1.串行口的创建与打开
  RS232 串行口在 WIN32 系统可以类比为磁盘上的文件。 WIN32 API 中可以通过一个函数 CreateFile()创建一个新文件或者打开已有的系统文件,有所区别的是函数的参数,当“创建方式”这一参数的值应为 OPEN_EXISTING 表示打开文件。另一方面值得注意的是在串行口文件使用的问题,当串行口文件“共享模式”的参数值为 0 时,串行口为独占使用方式,在串口独立使用的时候,其他的应用程序不能够并行,要并行,只有等到串行口的文件使用结束以后,才能关闭以便其他的应用程序共同使用这个串口。
  2. 串行口的设置
  串行口打开后就会产生一个串行口的句子,这个句子一般是HANDLEhComm中存放起来的,而且对于hComm对该串行口实时操作时必须注意串行口的设置要进行初始化,否则很难实现串口行的操作。这些串口行的操作中要设置CommProp、CommConfig结构、串口状态、串口超时、标志等这些内容,而且这些设置中,以 CommProp 结构最大最复杂,其设置往往要包含最大发送序列和最大接受序列,所以这个结构的设置也是串口配置中最为关键的环节,而且是串口配置的核心部分内容,决定着关键的结构设置。
  一般而言,将 DCB 结构进行初始化的过程主要是数据位数的定义过程,首先是对于每个字符的数据位数的奇偶、事件字符,停止位数,以及流量控制的方式以及串口发送的波特率进行校验和设置,然后再是关注设置的一些方法,比如在此串口的设置中,要预先得到缺省的配置再去修改参数部分,而且这样才能够令下个环节立刻可以将串口当前的状态进行反应,基带协议中带有分组头信息,包括了 HFC 信息与 CRC 信息,这些信息对于分组和传输过程中的错误都能够有效地进行检验,并得到充分的结果,而且在该基带协议中,出于有效载荷正确与否,可以将循环冗余校验码进行加载,加载的信息进行分组,然后在 ARQ 的方案基础上,对分组的荷载进行工作和分析。而话音在系统中,因为有效的分组头没有保护措施,所以蓝牙可以得到快速和没有编号的确认,而且在应答前,还要进行一次分组,返回过程一般使用ACK (ARQN=1)或者 NAK (ARQN=0)程序,在程序形成的过程中,还是要进行 ACK / NACK 域的组成,这种组成可以在某个区域里才能了解负载接收,这种接受能够在区域里的编码是不是对的,并且便于根据实际情况,决定是否重新发送或者发送到下一个分组。
  MSComm 控件提供了使 RS-232 进行数据通信的所有协议,它有两种处理通信的方式,即事件驱动和查询方式,本文利用了事件驱动方式,可以满足工业用实时性的要求。但是这里特别指出的是一个MSComm控件只能对应一个串口。假如程序中要用到多个串口,那么相应的就有同等数量MSComm 控件,但是 MSComm 控件的数量并非没有限制,一个程序中对多只能有 16 个 MSComm 控件。这点是需要注意的。利用 MSComm 控件进行串口通信的一般步骤为:
  (1)设置通信对象、通信端口以及其它属性;
  (2)设定通信协议;
  (3)打开通信端口,进行数据的传送;
  (4)关闭通信端口。
  三、多线程程序以及通讯技术的应用实例分析
  1.多线程程序的应用
  并发多线程程序设计使得系统性能获得很大提高,具体表现在:①快速线程切换;②减少(系统)管理开销;③(线程)通信易于实现;④并行程度提高;⑤节省内存空间。
  目前多线程技术在应用软件和系统软件的实现中得到了广泛的使用,如操作系统中的并行文件操作;数据库中的多用户事务处理;窗口系统中的多个相关了窗口操作;实时系统中多事件的同时响应;网络中多个客户共享网络服务器等等下面给出了一些线程应用的例子:
  (一)加快执行速度一个多线程进程在计算一批数据的同时,读入设备(网络、终端、打印机硬盘)上的下一批数据,而这分别由两个线程实现。
  (二)c/s应甩局域网上服务器处理多个用户文件(任务)请求时,创建多个线程,若该服务器是多CPU的,则同一进程中的多线程可以同时运行在不同CPU上。
  (三)前台和后台工作如在一个电了表格软件中,一个线程执行显示菜单和读入用户输入,同时,另一个线程执行用户命令和修改电了表格。
  (四)多事件处理每当用户要求执行一个动作时,就建立一个独立线程来完成这项动作当用户要求有多个动作时,就由多个线程来实现。
  (五)多窗口系统当用户要求建立多窗口系统时,用多个线程分别实现主从窗口。
  2.多线程通讯技术应用实例
  下面,本文将说明如何利用VB设计出基于MSComm控件的两 PC 机的网络串行通信程序:
  a.新建工程,打开 VB6.0,点击[文件]、[新建工程],出现界面。选择其中的[标准 EXE]选项,新建工程。
  b. 添加标签. 选择选项卡上的标签控件,并将其添加到工程中。在右下角属性卖面板中更改标签的属性为“发送数据”,同样的步骤添加“接收数据”标签。
  c.添加输入文本框,并更改属性为空。
  d.添加发送按钮。
  e.添加 MSComm 控件。
  f. 添加程序代码双击 From1,添加代码如下:
  Private Sub Form_load()
  MSComm1.Commport=1 ‘指定控件所使用的串口
  MSComm2.Commport=2
  MSComm1.Settings=”9600,n,8,1” ‘设置波特率
  MSComm1.Settings=”9600,n,8,1”
  MSComm1.PortOpen=True ‘打开串口
  MSComm1.PortOpen=True
  Text2.Enabled=False ‘输入框中的数据不允许更改End Subg. PC2 上的程序界面与 PC1 完全相同,但是 PC2 是利用 COM1 作为接收串口,COM2 作为发送串口,因此程序代码只是 COM1 功能与 COM2 功能互换即可。
  四、结束语
  多线程通讯技术的广泛应用,有效的解决各种逻辑并发性问题和物理并行性问题,大大提高了系统处理的效率,增强了整个系统的响应性。
  参考文献:
  [1]王彩兵.多线程通讯技术原理分析及应用[J].科技咨询导报.2007(26).
  [2]叶雪军,朱卫锋.系统集成中的多线程网络通信技术研究[J].数字技术与应用.2012(03).
  [3]伍光胜,宋信忠,郑明辉.多线程技术及其应用的研究[J].计算机应用研究. 2001(01).
其他文献
一、准确把握当前经济形势今年以来,全省上下坚持以邓小平理论和“三个代表”重要思想为指导,深入贯彻落实科学发展观,全面贯彻落实党的十七届五中全会和中央经济工作会议精
摘要:随着我国经济建设的迅速发展,迎来了水利工程投资高峰和建设高潮,水利工程建设项目尤其是病险水闸除险加固、防洪工程、灌区节水改造等工程项目越来越多,因此,如何有效控制施工质量成了水利工程建设中的关键。文章作者对水利工程施工管理的质量控制进行了具体分析。  关键词:水利工程;施工管理;质量控制  中图分类号:TV文献标识码: A  水利工程施工是水利工程建设的重要阶段,施工质量在工程建设中起着决定
摘要:本文通过对某电厂扩建工程2×350MW供热机组空冷岛钢结构及设备安装实践,总结和分析空冷岛施工的方法和经验,优化安装方案,为以后同类型机组空冷岛项目施工提供最佳的施工方案。  中国关键词: 空冷岛、安装、空冷机组  中图分类号:C35文献标识码: A  [abstract] this article through to the Hohhot thermal power plant, the
摘 要:能源统计是社会经济统计的重要组成部分,能源统计研究能源总体现象的数量表现,和其他统计一样,不仅是反映和认识社会的一种重要手段,而且是管理国家和企业经济活动,并实行监督的有效工具。同时,又是构成信息和制定方针、政策、计划的基础。  关键词:能源统计工作;现状;对策  中图分类号:C8文献标识码: A  前 言:能源统计是节能减排的重要基础性工作,它既是制定节能政策措施的重要依据,也是检验节能
对被称为“特殊儿童之王”的自闭症儿童进行教育干预,是一项极为艰巨的工作。国外与我国的教育工作者都在努力摸索行之有效的教育干预模式。招远市特殊教育学校这几年针对学
期刊
摘要:设计中讨论了发光二极管(LED)字符显示屏的基本结构和工作原理。LED显示系统使用高密度点阵,高显示分辨率和扫描速度,无闪烁现象。该系统采用MAX232进行通信,来接收计算机的控制命令及显示数据来控制显示屏的扫描显示。AT89C52单片机接收从计算机机上传来的数据并存储于24C02,再将要显示的内容转换为合适的形式输出给LED屏幕。最后根据系统设计的框架和要求对各模块进行协调匹配,并进行芯片
新课程为我们广大体育教师开辟了一个很好的环境,教材的选择得以开放,选择面大大拓宽,社会上一些时尚运动、新兴的项目都受到人们的关注。我在教学活动中,不断地开发和利用课
摘 要:现代飞机都载有各种功能的计算机,而机载计算机在生产制造、飞行、维护和整个寿命周期中会遇到各种各样复杂的电磁使用环境,包括电磁干扰、高强辐射场、闪电雷击、静电等危害。作为飞机上使用的计算机,要求在各种电磁环境下都能够可靠的正常工作,完成既定的飞行任务。因此,机载计算机的雷电电磁防护技术成为机载计算机研究设计的重要内容。  关键词: 机载计算机; 雷击; 雷电电磁防护; TVS   中图分类号
摘要:随着经济的快速发展和基本建设投资规模的不断扩大,中国建筑市场对建筑工程项目进行全过程工程造价控制的要求十分迫切。同时工程造价管理人员必须从全新的角度来管理和控制工程项目的造价。本文从建设项目工程造价的主体及其相互关系入手,探究工程的全过程造价控制。  关键词:工程项目;全过程造价;控制  中图分类号: TU723.3文献标识码:A   建设工程造价具体包括设备及工器具购置费用、建筑安装工程费
中国茶学界泰斗张天福6月4日在福州走完了他的事茶一生,享年108岁。张天福的人生颇具传奇色彩。1943年,英国生物化学家、科学技术史专家李约瑟不远万里到访战争中的中国,特别