嵌入式学rtos还是linux,嵌入式学安卓还是linux
今天给各位分享嵌入式学rtos还是linux的知识,其中也会对嵌入式学安卓还是linux进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!
嵌入式linux和rtos的区别
嵌入式Linux和RTOS的主要区别如下:
设计目的:
嵌入式Linux:结合Linux的强大功能和嵌入式系统的特点,旨在提供开放源代码、强大的网络功能和稳定性。RTOS:专为实时计算设计,旨在确保高可靠性和实时性,能够在固定的时间内响应和执行特定的任务。应用场景:
嵌入式Linux:广泛应用于智能家居、医疗设备、工业控制等多个领域,因其支持大量不同的处理器和硬件平台,且提供丰富的API供开发人员使用。RTOS:主要服务于工业控制、航空航天、汽车等特定应用领域,对于时间要求特别敏感的任务环境具有很强的适用性。特性:
嵌入式Linux:具有开源特性,开发者可以方便地进行开发和优化,适应不同的硬件平台和应用场景。同时,它提供强大的网络功能和稳定性。RTOS:支持优先级中断,能够实现中断延迟最小的响应时间要求,为具有确定性的系统和设备提供了一种安全且可预测的环境。总结:嵌入式Linux和RTOS在设计目标、应用场景和特性上有所不同。Linux更注重通用性和强大的功能支持,而RTOS则专注于实时性和可靠性。在实际应用中,需要根据具体需求来选择适合的操作系统。
现在嵌入式方面学习最多的RTOS系统是什么
RTOS在国内主要有vxworks+pSOS,睍在还有nuclear、QNX、WinCE。
说起好坏吗,其实,vxWorks要好一些,可能;不知道以前国内研究所一直用的VRTX是不是都被vxworks所替代了呢。据说由于VRTX是最早商业化的RTOS,60年代就开始卖了,所以呢,全是汇编,改都改不过来,还有就是对TCP/IP的支持一直不好,vxWorks是从VRTX公司出来的人做的,号称make VrtX Works!,所以就有了vxWorks的名字。
nuclear是卖程序的,而且不卖licence,就是说,你设计了一台路由器,生产的时候不用为你的每一台路由器都付30美圆的licence费用给nuclear的那个公司。
QNX+WinCE都似乎更注重于GUI图形界面方面的东西,当然,QNX好象还号称在别的方面也很出色,它是一家加拿大的公司做的。QNX俺曾经有一张 DEMO盘,1.44M的小盘,用它启动,就能够研究图形界面+MODEM拨号上网。(偶睍在懒得去找那张DEMO盘了,实在想要就发个mail给俺,偶去找来给你,在学校FTP那个应该也是,俺没用过)但是请别以为QNX就是用在一般DESKTOP PC机上的啊。QNX是在X86体系上面开发出来的,这+别的RTOS不一样,别的好多RTOS都是从68K的CPU上面开发成熟,然后再移植到X86体系上面来的(对68K不熟悉?这在嵌入式开发里面用的很广泛啊,motorola公司的,VME上面用的太多了),但是QNX就是直接在X86上面开发的然后近年才在68K等CPU上面能用。WinCE么,刚出来的时候还是soft realtime,不是hard realtime,(不知道这个概念?在那本“初学书”上面有!),所以一开始的时候所有人就很鄙视WinCE,觉得。。。//hehe。。。但是,你看看睍在WinCE那浩大声势?哈哈
pSOS吗,+vxWorks一起,是最最成熟的RTOS啦,打个比方,用pSOS+vxWorks来开发路由器、交换机、大型电讯设备、卫星通讯设备、航天器、军事控制设备,那是最合适的啦,您知道吗,有些东西是不可以死锁的,稳定性是第一位的,比如747掉下来就死翘翘了当然啦,还有系统硬件设计上面的疑问,比如双机热备份冗余设计之类的,不然电话交换机一坏,电讯局就整天挨批啦!那么QNX+WinCE呢,用来设计机顶盒、手持设备(手掌电脑、手机)、GPS设备(?)之类的需要漂漂界面的地方。
以上详解的都是要卖钱的RTOS,估摸着您一般会买不起
穷人的RTOS在哪儿?ucOS就是了,免费的,在学校FTP站点有人放过,不过好象不全;支持好多单片机、甚至支持DSP!还有eCOS在学校FTP也有热心人下好了,但是可惜不支持X86。免费的还有好几种呢,一种是美国军方以前用的叫什麽了(RTEMS?错了)有几个站点,比如www.ucos-ii.com还有。。忘了!你假如IP能出国,去那个叫Al***x的搜索引擎找找看,比yahoo好多了!Yahoo上面也有那个Al***x的连接。
RTOS在全世界有好几百种,很多大公司都有俺的RTOS,lucent的还是免费的呢。
高性能但是又不用钱的RTOS,呜呜,象linux那样?看来俺们是该想点办法了啊。
其实一个实用的RTOS,除了本身OS核心的性能要好之外,还有开发工具的好坏、编译器、调试器之类的,调过单片机代码的哥们肯定很有感慨吧。更重要的还有睍在日新月异的各种新技术要往RTOS上面加。。。比如tcp/ip以+这么多的新的网络协议(比如internet 2),web/browser,java(呵呵,不可以叫“新”了)
那么多RTOS,你会问,俺们如何办呢?其实学了一种,别的也就大同小异了。还有一个概念就是,运用层的代码+RTOS之间用一个虚拟的接口接起来,以后无论你移植到哪个RTOS都方便得很,而且软件可以在虚拟的接口上面先调试,在硬件板子还没有出来先前软件就可以先调试了。开发RTOS+运用运用RTOS是两件事。运用运用RTOS开发的运用代码+RTOS是一起烧进FLSH芯片里面去运用运用,相当于你运用运用了RTOS厂商的BIN源程序。
为什么学习嵌入式要学linux
从现在开始我要有计划,有体系的学习嵌入式系统!我也是刚开始学!
在网上看到很多有关作ARM的操作系统(OS)移植的文章,多数是基于linux操作系统的,这就给我一个印象:是不是搞嵌入式一定要懂linux?带着这个问题,查阅了一点资料!对此有了一点认识:
事实上,ARM是通常都是用来做比较复杂的系统的,而且一般都是多任务系统的,当任务比较多,程序比较大的时候,只用汇编和C可怕难以胜任,所以我们应该给ARM配一个操作系统,用来管理这些任务,那么对于ARM,我们可以作使用哪些操作系统呢?Windows XP行吗?当然不行,太大了,不适合做嵌入式,微软倒是推出了专门针对嵌入式系统开发的WinCE,可是这可不是免费的,而且不提供源码的,给你就像一个黑夹子,对于一般的嵌入式学习,就不太合适了?那么什么样的操作系统才能用于做嵌入式呢?嵌入式操作系统通常有Vx works、WinCE、uC/OS、Linux/ ucLinux等。而uC/OS、Linux因为其免费,而且开源,深受学习者和小公司的欢迎。
uC/OS操作系统内核很小,特别适合初学,而且它是占先式内核,是一个实时的操作系统,特别适合实时性要求较高的场合,其内核很小当然其功能当然也就没有linux强大,而且uC/OS的图形用户界面(GUI)还是刚有雏形,没有linux的GUI好,而它的GUI是收费的。这样的话只是linux是最好了,但是linux本身不是实时的操作系统,不适合实时性高的场合,于是ucLinux产生了,ucLinux是一个实时操作系统(RTOS),因此学习ARM+ucLinux的人较多。
所以,如果只搞uc/OS+ARM,那就可以不学linux了,如果想学习ARM+ucLinux,要在ARM上移植linux,那么移植后,这个装有linux的ARM处理器,当然只能运行linux环境下编译出来的应用程序(这里还有一个交叉编译的概念需要正确理解),所以理所当然要学linux。通常小红帽Red Hat Linux使用比较广泛,那么不能在Windows下开发ARM+ucLinux吗?
好了,文章到这里就结束啦,如果本次分享的嵌入式学rtos还是linux和嵌入式学安卓还是linux问题对您有所帮助,还望关注下本站哦!