12
返回列表 发新帖
楼主: teclimber

[已解决] 单片机上为什么要跑操作系统?(已解决)

[复制链接]

该用户从未签到

1

主题

29

帖子

0

中级会员

Rank: 3Rank: 3

积分
217
最后登录
1970-1-1
发表于 2013-10-29 10:41:40 | 显示全部楼层

回复:单片机上为什么要跑操作系统?

回复第 9 楼 于2013-10-29 10:11:27发表:
回复第 4 楼 于2013-10-28 15:13:03发表:
我觉得在单片机上跑实时操作系统的用处还是挺大的。比如对事件响应时间有要求,事件处理又比较复杂的系统,用实时操作系统就要方便一些。 

对事件的响应肯定是没有操作系统的响应及时吧。有操作系统,就会增加操作系统任务之间不断切换的时间。
 
我觉得吧,实时操作系统任务之间切换是只有在必要的时候才切换的,比如有更高优先级的事情等待去做,或是当前任务等待的资源还在被别人使用,需要等待的时候,并不是每个tick都要去进行任务切换,为了提高系统的整体响应时间,这些开销也是值得的。我没系统的学过操作系统,只能按我的想法举一个粗浅的例子吧:比如有一个中断可以触发A事件,A事件又可以通过中断参数的不同分别触发B事件和C事件,B和C的处理时间都是50ms,但是要求B的处理优先级要比C的高,比如在任何情况要求A发生后10ms之内就要开始B事件的处理。如果用大while循环来处理,貌似就要把C分成一系列10ms的子任务来处理,每次处理前要判断一下是不是有B事件发生了。不是不能做,只是没有用操作系统那么方便,关键看应用场景是什么。
 
回复 支持 反对

使用道具 举报

该用户从未签到

124

主题

3600

帖子

0

金牌会员

Rank: 6Rank: 6

积分
5781
最后登录
1970-1-1
发表于 2013-10-29 14:51:00 | 显示全部楼层

RE:单片机上为什么要跑操作系统?

欢迎有使用过操作系统的工程师们各抒己见,没有使用过操作系统的工程师也可以围观学习哦!1
回复 支持 反对

使用道具 举报

该用户从未签到

1

主题

29

帖子

0

中级会员

Rank: 3Rank: 3

积分
217
最后登录
1970-1-1
发表于 2013-10-29 19:42:22 | 显示全部楼层

回复:单片机上为什么要跑操作系统?

回复第 11 楼 于2013-10-29 10:41:40发表:
回复第 9 楼 于2013-10-29 10:11:27发表:
回复第 4 楼 于2013-10-28 15:13:03发表:
我觉得在单片机上跑实时操作系统的用处还是挺大的。比如对事件响应时间有要求,事件处理又比较复杂的系统,用实时操作系统就要方便一些。 

对事件的响应肯定是没有操作系统的响应及时吧。有操作系统,就会增加操作系统任务之间不断切换的时间。
 
我觉得吧,实时操作系统任务之间切换是只有在必要的时候才切换的,比如有更高优先级的事情等待去做,或是当前任务等待的资源还在被别人使用,需要等待的时候,并不是每个tick都要去进行任务切换,为了提高系统的整体响应时间,这些开销也是值得的。我没系统的学过操作系统,只能按我的想法举一个粗浅的例子吧:比如有一个中断可以触发A事件,A事件又可以通过中断参数的不同分别触发B事件和C事件,B和C的处理时间都是50ms,但是要求B的处理优先级要比C的高,比如在任何情况要求A发生后10ms之内就要开始B事件的处理。如果用大while循环来处理,貌似就要把C分成一系列10ms的子任务来处理,每次处理前要判断一下是不是有B事件发生了。不是不能做,只是没有用操作系统那么方便,关键看应用场景是什么。
 -------------------------------------------------------------------------------------------------------------------------------------------------------------------------
哦,我忘了还有种方式可以实现我说的这个应用场景,可以将B事件的处理放到定时器中断里。在A事件处理流程中,判断是B事件就启动一个10ms的one-shot的定时器,在定时器中断中去处理B事件也是可以满足时间要求的。不过如果场景再复杂些,限制再多些,操作系统可能就能体现出它的作用了。
 
 

 
回复 支持 反对

使用道具 举报

该用户从未签到

124

主题

3600

帖子

0

金牌会员

Rank: 6Rank: 6

积分
5781
最后登录
1970-1-1
发表于 2013-10-30 13:32:36 | 显示全部楼层

RE:单片机上为什么要跑操作系统?

谢谢分享自己的经验。
回复 支持 反对

使用道具 举报

  • TA的每日心情
    郁闷
    2021-1-9 21:21
  • 签到天数: 56 天

    连续签到: 1 天

    [LV.5]常住居民I

    52

    主题

    677

    帖子

    5

    金牌会员

    Rank: 6Rank: 6

    积分
    1470
    最后登录
    2021-1-9
    发表于 2013-11-3 13:00:02 | 显示全部楼层

    RE:单片机上为什么要跑操作系统?

    使用操作系统主要是为了协调多任务,假设系统比较简单,就1、2个任务,而且任务不复杂,还是裸奔更简单。
    回复 支持 反对

    使用道具 举报

    您需要登录后才可以回帖 注册/登录

    本版积分规则

    关闭

    站长推荐上一条 /3 下一条

    Archiver|手机版|小黑屋|恩智浦技术社区

    GMT+8, 2025-7-19 15:45 , Processed in 0.091786 second(s), 24 queries , MemCache On.

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.

    快速回复 返回顶部 返回列表