0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

英创信息技术应用线程时间片分析比较介绍

英创信息技术 来源:英创信息技术 作者:英创信息技术 2020-01-14 14:53 次阅读

对于一个嵌入式多任务、多线程操作系统,所启动的应用进程至少拥有一个线程或多个线程,线程在进程中执行代码。一个进程能够“同时”运行多个线程,“同时”加上引号,因为实际上,在单处理CPU平台上,任何时刻,只有一个线程在执行。操作系统通过任务调度算法快速切换线程来模拟多线程并行,交替地停止一个线程,然后切换到另外一个上运行。支持任务优先级,高优先级线程比低优先级线程更先执行,也就是说低优先线程必须等到高优先级线程被阻塞挂起后才可能被调度。对于优先级别相等的线程使用轮换算法来调度。

无论是WinCE还是Linux操作系统,应用线程的运行总是涉及到两个基本的参数:一个是系统分配给线程的时间片,一个是系统调度的时间间隔。Linux和WinCE下这两个参数有所不同,如下表所示:

WinCE

嵌入式Linux

线程的运行时间片

100ms

10ms

系统调度间隔

1ms

10ms

这里需要注意的是,线程不一定需要将时间片完全用完,事实上,在嵌入式系统中,线程的运行处理时间通常都远小于所分的时间片,这时线程应当调用相关系统函数将自己挂起,系统将立即进行线程重调度。这时的重调度实际是加快了各个线程的轮片,提高了多线程并行运行的程度,客观上保证了嵌入式设备的实时响应能力。

如果线程运行处理的时间超过了系统分配的时间片,在到达时间片后系统将强制挂起该线程,进行任务调度,以保证其他线程的运行。所以在多任务的程序设计中,特别忌讳线程中出现长时间查询代码,如:


while( bFlag == FALSE )
{
// Polling Flag…
}

这种代码总是占完了时间片,大大地浪费CPU资源,使得整个进程的线程调度变得很慢,比如对于WinCE来说,就会出现100ms才调度一次,如果有10个这样的线程,意味着每个线程需要1s才能轮询一次,在嵌入式应用中,就很容易出现数据丢失等错误,从而无法实现正常的功能。对于Linux也是存在同样的问题。

在实际应用中,常用的挂起线程的方法是调用延时函数。对于WinCE,调用Sleep( ms )函数;对Linux,可以调用select( )函数来挂起当前线程。由于系统的调度间隔不一样,对相同的挂起时间,系统会有不同的处理。比如,设置挂起时间为2ms,在WinCE中,将在挂起2ms之后的1ms后,被系统重新调度;在Linux中,由于调度间隔大于挂起的时间,所以系统将在线程挂起10ms之后才被重新调度,也就是说在Linux下,无论程序中设置的挂起时间2ms还是9ms,该线程实际被挂起的时间总是10ms。


声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 嵌入式系统
    +关注

    关注

    41

    文章

    3587

    浏览量

    129416
  • Linux
    +关注

    关注

    87

    文章

    11290

    浏览量

    209290
收藏 人收藏

    评论

    相关推荐

    龙芯中科助力2024首届教育信息技术应用创新大赛成功举办

    近日,2024首届教育信息技术应用创新大赛在北京航空航天大学成功举办。本次大赛由中国教育技术协会主办,教育信实验室、公安部第三研究所、中国电子工业标准化技术协会信
    的头像 发表于 12-19 17:02 126次阅读

    拓维信息参与牵头组建!长沙新一代信息技术产教联合体正式获批

    的长沙新一代信息技术产教联合体成功获批,为长沙市信息技术产业发展注入了新的活力。图/《2024年长沙市市级市域产教联合体名单》长沙新一代信息技术产教联合体将依托龙头企
    的头像 发表于 12-07 01:06 334次阅读
    拓维<b class='flag-5'>信息</b>参与牵头组建!长沙新一代<b class='flag-5'>信息技术</b>产教联合体正式获批

    中科达荣获2024年软件和信息技术服务优秀企业

    及前百家企业”名单。中科达凭借非凡的技术实力与持续的创新能力,成功入选“2024年度软件和信息技术服务竞争力百强企业”以及“2024年软件和信息技术服务优秀企业”。
    的头像 发表于 10-30 11:44 451次阅读

    国产化背景下的工控主板发展现状

    ,是信息技术应用创新产业的简称,于2016年“信工委会”(信息技术应用创新工作委员会)提出,目的就是要推动我们国内软硬件关键技术的研发
    的头像 发表于 09-21 16:15 378次阅读

    加速鲲鹏落地!拓维信息迁移工具荣获鲲鹏原生开发技术认证

    认证。图/拓维·数据库适配中间件取得鲲鹏原生开发N认证在数字化时代的大潮中,信战略作为国家推动信息技术应用创新、保障信息安全与自主可控的关键举措,其重要性日益凸显
    的头像 发表于 09-10 08:03 436次阅读
    加速鲲鹏落地!拓维<b class='flag-5'>信息</b>信<b class='flag-5'>创</b>迁移工具荣获鲲鹏原生开发<b class='flag-5'>技术</b>认证

    梯度科技入选2023年信息技术应用创新解决方案名单

    日前,工业和信息化部网络安全产业发展中心(工业和信息化部信息中心)在天津举办2024信息技术应用创新发展大会暨解决方案应用推广大会。会上正式公布了2023年
    的头像 发表于 09-09 16:29 411次阅读

    中软国际信服务助力大连信产业发展

    为进一步激发大连本地信产业生态的活力与潜力,搭建一个高效、开放的交流平台。由大连软件行业协会携手大连市信息技术应用创新综合服务中心主办,中软国际协办的,2024年大连市信息技术应用创新产业发展大会
    的头像 发表于 08-27 16:49 857次阅读

    【「时间序列与机器学习」阅读体验】时间序列的信息提取

    本章主讲时间序列的信息提取,章节中有许多概念定义和数学公式,并配有Python代码演示,细细品读与理解动手演练,还是很开拓思维视野的。下面以笔记形式进行展开。 时间序列的信息提取是
    发表于 08-17 21:12

    摩尔线程和乐能源签署战略合作协议

    近日,摩尔线程和乐能源签署了战略合作协议,双方将聚焦能源大模型的创新与应用,围绕新能源领域的电池、新能源发电、负荷管理、需求侧响应等产品技术方向,共同研发能源大模型。依托摩尔线程全功
    的头像 发表于 07-11 14:35 712次阅读

    翼辉信息入选2023年信息技术应用创新解决方案名单

    近日,2023 年(第五届)信息技术应用创新解决方案公布遴选名单,历经资格初审、技术中评、区域评议、终评预审,翼辉以“面向工业领域嵌入式操作系统 SylixOS 解决方案”,成功在全国优秀方案中脱颖而出,入选典型解决方案名单。
    的头像 发表于 04-28 11:37 544次阅读
    翼辉<b class='flag-5'>信息</b>入选2023年<b class='flag-5'>信息技术</b>应用创新解决方案名单

    龙芯中科三项信方案入围工信部2023年信息技术应用创新应用示范案例名单

    近日,工业和信息化部通报了2023年信息技术应用创新解决方案征集遴选结果,本次共评选出典型解决方案173个、应用示范案例83个、单项创新案例64个。
    的头像 发表于 03-07 16:45 911次阅读
    龙芯中科三项信<b class='flag-5'>创</b>方案入围工信部2023年<b class='flag-5'>信息技术</b>应用创新应用示范案例名单

    RX78M组 EtherCAT ETG.5003示例程序固件信息技术

    电子发烧友网站提供《RX78M组 EtherCAT ETG.5003示例程序固件信息技术.pdf》资料免费下载
    发表于 02-21 14:22 1次下载
    RX78M组  EtherCAT ETG.5003示例程序固件<b class='flag-5'>信息技术</b>

    软通动力与捷技术签订战略合作协议

    近日,软通动力信息技术(集团)股份有限公司(以下简称“软通动力”)与宁波捷技术股份有限公司(以下简称“捷技术”)正式签订战略合作协议,并
    的头像 发表于 02-03 16:35 1111次阅读

    软件架构之时间

    首先来个demo,该demo是使用电脑开两个线程:一个线程模拟单片机的定时器中断产生时间轮询个时钟,另一个线程则模拟主函数中一直运行的
    的头像 发表于 01-18 09:29 565次阅读
    软件架构之<b class='flag-5'>时间</b>轮<b class='flag-5'>片</b>法

    氮化镓芯片的应用及比较分析

    随着信息技术和通信领域的不断发展,对高性能芯片的需求也越来越大。作为半导体材料中的重要组成部分,氮化镓芯片因其优异的性能在近年来受到了广泛关注。本文将详细介绍氮化镓芯片的基本原理及其应用领域,并
    的头像 发表于 01-10 09:25 1780次阅读