1.什么是嵌入式linux?
自1991年问世以来,Linux在短短十多年的时间里发展成为功能强大、设计精良的操作系统之一。它不仅可以与各种传统的商业操作系统竞争,还可以在新兴的嵌入式操作系统领域获得快速发展。嵌入式Linux(Embedded Linux)是指一种特殊的Linux操作系统,适用于特定的嵌入式应用,经过小型化和裁剪后,可以固化在只有几k或几m字节容量的内存芯片或单片机中。嵌入式Linux不仅继承了互联网上无限的开源代码资源,还具有嵌入式操作系统的特点。
二、嵌入式Linux的特点
版权费:免费;
购买成本:媒体成本;
技术支持:全球免费软件开发者提供支持;
网络特点:免费且性能卓越;
软件移植:简单,代码开放,有很多应用软件支持;
应用产品开发周期:短,新产品上市快,因为开放代码多,可以参考移植;
实时性:RT_Linux、hardhat Linux等嵌入式Linux支持实时性;
稳定性:好;
保安:好的。
三、嵌入式Linux的市场前景和商机
嵌入式Linux有很大的市场前景和商机,有大量的专业公司和产品,如Montavista、Lineo、Emi等。还有行业协会,比如嵌入式Linux财团。得到了世界著名计算机公司和oem板制造商的支持,如IBM、摩托罗拉、英特尔等。传统的嵌入式系统厂商也采用Linux策略,如Lynxworks、Windriver、QNX等。互联网上也有大量嵌入式Linux爱好者的支持。嵌入式Linux支持几乎所有嵌入式CPU,并被移植到几乎所有嵌入式oem板上。
四、嵌入式Linux的应用领域
嵌入式Linux应用广泛,包括信息家电:PDA、机顶盒、数字电话、应答机、屏幕电话、数据网络:以太网交换机、路由器、网桥、集线器、远程访问服务器、ATM、帧中继、电信、医疗电子、交通、计算机外设、工业控制、航空空领域等。
动词 (verb的缩写)嵌入式linux的优势
嵌入式Linux的开发和研究是操作系统领域的一个热点。成功开发的嵌入式系统中,大约有一半使用Linux。Linux之所以能在嵌入式系统市场上取得如此辉煌的成就,与它的优秀特性密不可分。
1.广泛的硬件支持
Linux可以支持x86、ARM、MIPS、ALPHA、PowerPC等架构。目前已经成功移植到几十个硬件平台,几乎可以在所有流行的CPU上运行。Linux拥有极其丰富的驱动资源,支持各种主流硬件设备和新的硬件技术,甚至在没有内存管理单元(MMU)的处理器上运行,进一步推动了Linux在嵌入式系统中的应用。
2.内核高效稳定
Linux内核的效率和稳定性已经被各个领域的大量事实所验证。Linux内核的设计非常精细,分为五个部分:进程调度、内存管理、进程间通信、虚拟文件系统和网络接口。其独特的模块机制可以根据用户的需求实时地在内核中插入或移除一些模块。这些特点使得Linux系统的内核非常小,非常适合嵌入式系统的需求。
3.开源和丰富的软件
Linux是开源的免费操作系统,给用户提供了很大的自由度。由于嵌入式系统千差万别,往往需要针对具体应用进行修改和优化,因此获取源代码非常重要。Linux软件资源丰富,几乎各种通用程序都能在Linux上找到,而且数量还在不断增加。一般不需要从零开始在Linux上开发嵌入式应用软件。相反,可以选择一个类似的自由软件作为原型,并对其进行二次开发。
4.优秀的开发工具
开发嵌入式系统的关键是要有一套完善的开发调试工具。传统的嵌入式开发调试工具是In-Circuit Emulator (ICE),它通过替换目标板上的微处理器,为目标程序提供一个完整的仿真环境,让开发人员可以清楚地了解目标板上程序的工作状态,方便对程序的监控和调试。在线模拟器很贵,只适合非常低级的调试。如果使用嵌入式Linux,一旦软硬件能够支持正常的串口功能,即使不需要在线模拟器,也可以很好的开发调试,节省了大量的开发成本。嵌入式Linux为开发者提供了完整的工具链。它使用GNU的gcc作为编译器,gdb、kgdb、xdb作为调试工具,可以轻松调试从操作系统到应用软件的各个层次。
5.完善的网络通信和文件管理机制
Linux从诞生之日起,就与互联网密不可分,支持所有标准的互联网网络协议,并且很容易移植到嵌入式系统中。此外,Linux还支持ext2、fat16、fat32、romfs等文件系统,为嵌入式系统应用的开发奠定了良好的基础。
不及物动词嵌入式Linux面临的挑战
目前,嵌入式Linux系统的研发热潮正在蓬勃发展,占据了很大的市场份额。除了一些传统的Linux公司(比如RedHat,MontaVista等。)都是从事嵌入式Linux的开发和应用,IBM、Intel、摩托罗拉等知名企业也开始研究嵌入式Linux。虽然前景光明,但目前嵌入式Linux的研究成果与市场的真实需求还有一定差距。要开发一个真正成熟的嵌入式Linux系统,需要从以下几个方面努力。
1.提高系统的实时性
虽然Linux已经成功应用于PDA、手机、车载电视、机顶盒、网络微波炉等嵌入式设备,但不能直接应用于医疗、航空空、交通、工业控制等对实时性要求严格的地方,因为现有的Linux是通用操作系统,虽然也采用了很多技术来加快系统的运行和响应速度,符合POSIX 1003。Linux内核调度策略基本遵循UNIX系统。当直接应用于嵌入式实时环境时,会存在很多缺陷,如运行内核线程时中断关闭、分时调度策略时间不确定、缺乏高精度定时器等。因此,使用Linux作为底层操作系统,并对其进行实时转换,以构建具有实时处理能力的嵌入式系统,是一种日益流行的解决方案。
2.改善内核结构
Linux内核采用单片结构,整个内核是一个单一的、非常大的程序,可以使系统的各个部分直接通信,有效缩短任务之间的切换时间,提高系统的响应速度,但不符合嵌入式系统存储容量小、资源有限的特点。嵌入式系统往往采用另一种体系结构称为Microkernel,即内核本身只提供一些基本的操作系统功能,如任务调度、内存管理、中断处理等。,而文件系统和网络协议等附加功能在用户之间运行空,可以根据实际需要进行选择。虽然Microkernel的执行效率不如Monolithic,但它大大减小了内核的尺寸,便于维护和移植,能够更好地满足嵌入式系统的要求。可以考虑将Linux内核转化为Microkernel,使Linux具有较高的性能,能够满足嵌入式系统小尺寸的要求。
3.完善集成开发平台
引入嵌入式Linux系统集成开发平台是嵌入式Linux进一步发展和应用的内在要求。传统上,嵌入式系统面向特定的应用,软件和硬件必须紧密合作。然而,随着嵌入式系统规模和应用领域的不断扩大,嵌入式操作系统的出现成为必然,因为只有这样,嵌入式系统才能朝着层次化和模块化的方向发展。
显然,嵌入式集成开发平台也符合上述发展趋势。一个优秀的嵌入式集成开发环境可以提供相对完整的仿真功能,实现嵌入式应用软件和嵌入式硬件的同步开发,从而摆脱“嵌入式应用软件的开发依赖于嵌入式硬件的开发,以嵌入式硬件的开发为前提”的不利局面。一个完整的嵌入式集成开发平台通常包括编译器、连接器、调试器、跟踪器、优化器和集成用户界面。目前,与Windows CE等商用嵌入式操作系统相比,Linux在基于图形界面的特定系统定制平台的研究上仍有较大差距,整体集成开发环境有待改进和提高。
声明:内容和图片来源于互联网,版权归原作者所有。如有侵犯您的原创版权,请告知我们,我们会尽快删除相关内容。
1.《嵌入式linux 什么是嵌入式Linux?嵌入式工程师为什么一定要学嵌入式Linux?》援引自互联网,旨在传递更多网络信息知识,仅代表作者本人观点,与本网站无关,侵删请联系页脚下方联系方式。
2.《嵌入式linux 什么是嵌入式Linux?嵌入式工程师为什么一定要学嵌入式Linux?》仅供读者参考,本网站未对该内容进行证实,对其原创性、真实性、完整性、及时性不作任何保证。
3.文章转载时请保留本站内容来源地址,https://www.lu-xu.com/guonei/1072651.html