基于Windows数控系统的多线程实现(1)

基于Windows数控系统的多线程实现(1)

ID:36796983

大小:298.33 KB

页数:5页

时间:2019-05-15

基于Windows数控系统的多线程实现(1)_第1页
基于Windows数控系统的多线程实现(1)_第2页
基于Windows数控系统的多线程实现(1)_第3页
基于Windows数控系统的多线程实现(1)_第4页
基于Windows数控系统的多线程实现(1)_第5页
资源描述:

《基于Windows数控系统的多线程实现(1)》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、-&"K-$机床与液压%0##!1<)1=基于A78B)C9数控系统的多线程实现帅!梅%!王爱囡0!王广炎%"%D西安交通大学机械学院陕西西安O%##"P#0D合肥工业大学理学院!安徽合肥0!###P$摘要!本文介绍了基于A78B)C9平台数控系统的多线程的实现方法!着重阐述了数控系统多线程实现的线程创建"优先级设定和线程同步问题#关键词!多线程$数控$线程同步中图分类号!Q/!%!!文献标识码!&!!文献编号!%##%$!??%"0##!#=$02?$0O1(I(5+/@50/-6-3D;+0/01.(5C/6,>5B(C-6Q/6C-)B:’:7FB0(2.Z&-N:7!A

2、&<]&7L8>8!A&<]]’>8MLc>8*B78M;:>E7K78M(:GT87h’:)JA78B)C9*<*9c9(:HC>978(;)B’G:B!>8BJ)’8B78M)J(;:>B!9:((78M)JF;7);7(c>8B9c8GT;)87K78M)JH’E(7(T;:>B78MC>9:HFT>(7G>EEc:SF)’8B:BDE(F)-.CB%N’E(7(T;:>B78M$*<*$QT;:>B9c8GT;)87K>(7)8!!前言*C78QT;:>B#F*>QT;:>B$&&该变量用来保存创目前流行的A78B)C9操作系统具有高

3、精度的实建插补运算线程时返回的线程对象的指针时响应特性和抢占式多任务管理调度机制!它通过在在*8G.c9&FF1GFF加入创建工作线程的代码%竞争*/时间的线程间分配*/时间!允许多个运I)7B*G8G.c9&FF%%*>-8(:;F)QT;:>B)*行单元同时运行!迅速地在这些单元中切换!正符合+数控系统对多任务并发处理的要求#在A78B)C9中&&Q3+3%&BBc)’;G)HH>8BT>8BE:;G)B:T:;:线程才是运行和调度的基本单元!因此!基于A78LF*>QT;:>B4&JSY:M78QT;:>B)*>EG’E(>(:-8(:;LB)C9的数控系统所要实现的插

4、补任务"译码解释任F)E>(7)8!(T79*$务"刀补任务和-&3监控任务"人机界面管理任务以,及加工信息显示等任务都要通过实现其相应的线程及其中!&JSY:M78QT;:>B)*函数创建了插补运算其之间的合理调度来完成#本文作者在所开发的校基工作线程!其第一个参数为此线程函数的起始地址!金课题’基于A78B)C9平台下开放式数控系统的研第二个参数为此线程函数的参数#制(中实现了A78B)C9数控系统的多线程调度!系)0*然后编写线程函数统的多线程结构图如图%所示#下面从创建线程"线-EG’E(>(:-8(:;F)E>(7)8)*程优先级设定"线程间同步这三部分的具体

5、实现分别+进行阐述#所采用的开发环境为R*66=1##&&Q3+3%&BBc)’;>EM);7(TH)J78(:;F)E>(7)8"!线程的创建G)B:T:;:用Na*编写的A78L,B)C9数控系统线程有两种#!线程优先级设定类型!即工作线程和用户线程调度是基于A78B)C9数控系统要实现的一界面线程#工作线程不处项重要任务#数控系统根据所有活动线程的优先级来理A78B)C9消息!用于实对线程进行调度#A78B)C9操作系统拥有!0个允许现比较耗时的后台任务!的线程优先级%#为最低等级!!%为最高等级#操作对于数控系统可以用来完系统为线程分配*/时间时!首先将*/时间分配成

6、插补运算"译码解释任给优先级为!%的线程!当该线程的时间片结束后!务$用户界面线程有自己图%!基于A78B)C9*<*系统再把*/时间分配给下一个优先级为!%的线的消息循环!可以处理程#当所有优先级为!%的线程都轮过一次后!系统!!系统多线程结构图A78B)C9消息!并可以创再次将*/时间分配给第一个优先级为!%的线程#建和管理诸如窗口和控件的用户界面部件!对于数控如果所有优先级为!%的线程都执行完了!则系统开系统用来显示当前的执行的加工文件代码"机床各轴始执行优先级为!#的线程!对优先级为!#的线程采当前应到位置和实际位置等#以插补运算线程创建为用同样的方法#这样依此类推#

7、例%数控系统的多线程调度原则还要采用一些策略保)%*首先编写创建线程代码%证不会出现低级线程永远得不到执行的’饿死(现在所创建的名为’*8G.c9&FFDT(中加入如下象!做到对所有线程公平合理地分配*/时间#通定义%过调用]:(N:99>M:)*函数!使系统在没有发现给F’[E7G%该线程的消息时!则挂起该线程!同时收回分配给该!机床与液压"0##!1<)1=,&"!,线程的剩余时间片!立即将*/时间片分配给其他级"其原型为#等待的线程"这样使高优先级的线程不会一直在执Y3

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。