liuchg 发表于 2014-5-6 20:48:55

求教 什么情况下需要用操作系统

我一直做工控类的嵌入式开发,以前以51为主,现在逐渐的用ARM的也越来越多。全部都是俗称的裸奔
从来没在产品中用过操作系统,大概了解过UCOS。
请问各位,什么情况下,需要使用操作系统。或者说,使用了操作系统,能给我们带来什么。

鼻儿眼睛花 发表于 2014-5-6 21:22:16

本帖最后由 鼻儿眼睛花 于 2014-5-6 21:23 编辑

看你的开发规模,操作系统能够让多个人的工作 很容易就整合到一起,维护也很容易,就跟电脑安装软件一样。操作系统还可以让你更加简单的规划你的程序框架,使你的程序框架更加复杂,还可以更加方便的规划你的任务紧迫关系,最大化利用CPU计算能力。总之,太多了。
工程具有一定的规模了的话,优势就自然凸显出来了。
唯一的劣势就是运行系统需要花费一定的硬件资源,还有可能需要购买授权许可。

太阳花 发表于 2014-5-6 21:50:36

点个led灯也可以用系统

Etual 发表于 2014-5-6 21:55:45

同意2L,主要是为了模块化编程。所谓的实时,并不一定比裸奔快。
其实主要是软件的规模吧,如果是5K代码以下,区别不是很大。

另外,可能是为了实现一些功能,例如GUI,文件系统等,都是建立在OS的基础上的。

usecool 发表于 2014-5-6 21:59:35

GUI、文件系统不一定非要用刀os。

看复杂度了。

liuchg 发表于 2014-5-6 22:18:59

太阳花 发表于 2014-5-6 21:50
点个led灯也可以用系统

我确实在开发板上这么干过

rootxie 发表于 2014-5-7 08:22:25

还是看项目复杂度和成本 要不要选择一款OS
1. 好多人共同code,估计要上OS了,或者自己制定一套规则,大家遵守?
2. GUI, 网络等复杂功能时,考虑使用OS(因为OS都会提供这些)
3. 对于实时性来说,肯定没有裸奔实时性来得好,当然裸奔的任务多起来的时候 会发现任务执行时间(一圈)会越来越长,导致很多不可控的时候就开始考虑增加一款至少是调度器了吧
4. 还没想到{:lol:}

谢冲 发表于 2014-5-7 08:44:56

       嵌入式实时操作系统,主要就是利用它的实时性,比如当你的程序中有好多if判断时,执行效率低,响应时间也可能跟不上,这时候你就可以考虑加入操作系统,把每个if抽象成一个任务,在操作系统中它们是并行执行的,就不会出现响应时间跟不上的问题。当然这只是加入操作系统的一个好处,当用到网络通信的时候操作系统就必不可少。实际上,当你加操作系统时,就是点个灯也想加个操作系统进去!

zhugean 发表于 2014-5-7 08:55:58

对于一定规模的软件操作系统都是有的,裸奔的其实是自己写的操作系统
自己写得好还是通用的好?

shuiluo2 发表于 2014-5-7 09:12:54

主要还是划分任务方便吧,实时性的话控制好程序架构应该还是裸奔最高。不非常熟悉操作系统还是不要用了,有问题找不出会被搞死。

stm8s 发表于 2014-5-7 09:17:11

太阳花 发表于 2014-5-6 21:50
点个led灯也可以用系统

这是老兄明显是来砸场的{:biggrin:}

kinsno 发表于 2014-5-7 09:32:51

不开心了就OS一下;开心了就裸奔;
BOSS要求了就OS一下,不要求了就裸奔;
跑不动了就OS一下,跑得动就裸奔;
一切看心情,看BOOS,看体力!

NewKing 发表于 2014-5-22 11:22:31

学习了,想了解嵌入式系统开发的技巧,哪位大神可以指点一二?

NJ8888 发表于 2014-5-22 13:12:00

如果是用比较多的外设库,协议栈,有的OS带有完整的或是第三方提供的资源是基于OS的,这时用OS会方便

xinchangkk 发表于 2014-5-22 13:30:32

跑OS在OS下编程 和调用库编程 有多少区别?

gycsy963 发表于 2014-5-22 13:39:17

编程上说, 上操作系统并不影响使用库函数.
OS还是裸奔各有利弊, 主要看代码规模, 任务复杂程度以及数量, 实时性要求等.

上OS, 任务间配合会变得更加谨慎, 不然挂了, 找问题会更加困难.
还有毕竟是单片机, 硬件开销会因为上了操作系统变得敏感.

xi_liang 发表于 2014-6-27 03:27:28

用上系统,以后维护和升级就方便了,比如UCOS,以后要加个功能,只要加个任务就好了

wind2100 发表于 2014-6-27 08:47:48

UCOS好像不是免费的吧
页: [1]
查看完整版本: 求教 什么情况下需要用操作系统