1.2 嵌入式Linux技术
1.2.1 Linux简介
Linux是一种类Unix操作系统,是一个基于POSIX和Unix的多用户、多任务、支持多线程和多CPU的操作系统,支持32位和64位硬件,继承了Unix以网络为核心的设计思想,是一种性能稳定的多用户网络操作系统,特点如下:
(1)由众多微内核组成,源代码完全开源;
(2)继承了Unix的特性,具有非常强大的网络功能,支持所有的因特网协议,包括TCP/IPv4、TCP/IPv6和链路层拓扑程序等,可以利用Unix的网络特性开发出新的协议栈;
(3)系统工具链完整,通过简单操作就可以配置出合适的开发环境,可以简化开发过程,减少开发中仿真工具的障碍,使系统具有较强的移植性。
1.2.2 Linux发行版本
在Linux内核的发展过程中,各种Linux发行版本推动了Linux的应用的发展,从而让更多的人开始关注Linux。Linux的各种发行版本使用的是同一个Linux内核,因此在内核层不存在什么兼容性问题,每种版本有不一样的感觉,只在发行版本的最外层才有所体现。几种常用的Linux发行版本介绍如下。
(1)Red Hat Linux.
Red Hat(红帽)公司的产品主要包括RHEL(Red Hat Enterprise Linux)和CentOS(RHEL的社区克隆版本)、Fedora Core(由Red Hat桌面版发展而来)。
(2)Ubuntu Linux.
Ubuntu Linux基于Debian Linux发展而来,界面友好,容易上手,对硬件的支持非常全面,适合作为桌面系统。
(3)SuSE Linux.
SuSE Linux以Slackware Linux为基础,于1994年发行了第一版,2004年被Novell公司收购后,成立OpenSUSE社区,推出社区版本OpenSUSE。SuSE Linux可以与Windows系统交互,拥有界面友好的安装过程和图形管理工具。
(4)Gentoo Linux.
Gentoo Linux最初由Daniel Robbins创建,首个稳定版本发布于2002年。
1.2.3 嵌入式Linux技术的特点
Linux自身的许多特点使其适合被应用到嵌入式系统。这是Linux作为嵌入式的优势:①开放源代码,众多Linux爱好者是Linux开发者的强大技术支持;②内核小、效率高,内核的更新速度很快,可以定制,系统内核最小只有约134KB;③免费开源,价格极具竞争力。
此外,Linux还有着嵌入式操作系统所需要的很多其他特色:适用于多种CPU和多种硬件平台,是一个跨平台系统,性能稳定,具备可裁剪性,对于开发者和使用者来说都很容易操作,对最常用的TCP/IP协议有最完备的支持。
1.2.4 嵌入式技术的应用
自20世纪70年代微处理器诞生后,将计算机技术、半导体技术和微电子技术等融合在一起的专用计算机系统,即嵌入式系统,即被广泛应用于家用电器、航空航天、工业、医疗、汽车、通信、信息技术等领域。各种各样的嵌入式系统在应用数量上已远远超过通用计算机。从日常生活、生产到社会的各个角落,可以说,嵌入式系统无处不在。与人们生活紧密相关的几个应用领域如下。
(1)消费类电子产品。嵌入式系统在消费类电子产品应用领域的发展最为迅速,而且在这个领域中的嵌入式微处理器的需求量也是最大的。由嵌入式系统构成的消费类电子产品已经成为生活中必不可少的一部分,如智能冰箱、流媒体电视等信息家电产品,以及智能手机、PDA、数码相机、MP3、MP4等。
(2)智能仪器仪表类产品。这类产品可能离日常生活有点距离,但是对于开发人员来说,却是实验室里的必备工具,如网络分析仪、数字示波器、热成像仪等。通常这些嵌入式设备中都有一个应用微处理器和一个运算微处理器,可以完成数据采集、分析、存储、打印、显示等功能。
(3)信息通信类产品。这些产品多数应用于通信机柜设备,如路由器、交换机、家庭媒体网关等,在民用市场使用较多的莫过于路由器和交换机。基于网络应用的嵌入式系统也非常多,目前市场发展较快的是远程监控系统等在监控领域中的应用系统。
(4)过程控制类应用。过程控制类应用主要是指在工业控制领域中的应用,包括对生产过程中各种动作流程的控制,如流水线检测、金属加工控制、汽车电子等。汽车工业在中国已取得了飞速发展,汽车电子在这个大发展的背景下迅速成长。现在,一辆汽车中往往包含上百个嵌入式系统,它们通过总线相连,实现对汽车各部分的智能控制。车载多媒体系统、车载GPS系统等,也都是典型的嵌入式系统应用。
(5)航空航天类应用。不仅在低端的民用产品中,在航空航天这样的高端应用中同样也需要大量的嵌入式系统,如火星探测器、火箭发射主控系统、卫星信号测控系统、飞机的控制系统、探月机器人等。在我国的探月工程中,“嫦娥三号”的探月工程车就是最好的证明。
(6)生物微电子类应用。在指纹识别、生物传感器数据采集等应用中也广泛采用了嵌入式系统。环境监测已经成为人类必须面对的问题,随着技术的发展,将来在空气、河流中可以用大量的微生物传感器实时监测环境状况,而且还可以把这些数据实时地传送到环境监测中心,以监测整个生活环境,避免发生更深层次的环境污染。这也许就是将来围绕在人们生存环境周围的一个无线环境监测传感器网络。
(7)嵌入式人工智能系统应用。深度学习功能已经广泛应用于许多嵌入式视觉系统。所有这些应用程序的共同点是会生成大量数据,并且经常涉及非工业场景,如自动驾驶。相关车辆已经配备了许多传感器和摄像头,可以从当前的交通状况中收集数据。集成视觉软件借助深度学习算法实时分析数据流。基于深度学习的嵌入式视觉技术也被用于智能城市环境中,在城市某些基础设施中,如街道交通、照明和电力供应,以实现数字网络化,以便为居民提供特殊服务。此外,嵌入式人工智能技术也被广泛应用于智能家居系统,例如,数字语音助手和机器人真空吸尘器。
图1.2为广泛的人工智能应用。
图1.2 广泛的人工智能应用