嵌入式软件都有哪些关键的组件

像是嵌入式操作系统,bsp,文件系统,网络协议栈,GUI,嵌入式数据库,等等这类的软件,不知怎么称呼好,暂叫组件。1. 这类常用,且有一定规模的软件具体都有哪些?2. 有哪些书籍,资料是介绍这些内容的?(特指广泛介绍,不要求太深入),比如介绍各种组件的特点,应用场合等谢邀。这个提问问的有问题,就有点类似于:计算机能做什么之类的,太宽泛的。先来说你第一个问题,达到一定规模的组件有哪些?这些没有定论,或者说,每个组件都有可能成规模。具体的说,就是看应用场景:NAS一类的嵌入式设备肯定是重存储和网络,文件系统必然是占据主要地位的,规模肯定也很大。像交换机、路由器这种,TCP协议栈则是最重要的。工控领域可能是某个特别的驱动,以及内核的实时性更重要,有些工控设备甚至没有文件系统、网络协议栈。像我很熟悉的USB,规模也是可大可小,有的系统只需要一个鼠标和键盘,有些系统还需要U盘驱动,不同的需求下,代码规模也是不同的。所以,可以说所有的组件都有成规模的。要说哪个常用?看你要怎么用了。因为第一个问题是这样,所以第二个问题就没办法回答了,只能说你选几个你喜欢的方向去看一看,真要先了解各个方向的大致情况再做深入学习的话,这个难度太大了。另外,具体到现实的开发中,不同的嵌入式系统里,各个模块的实现也完全不同,需要结合一个特定的OS才能深入学习。并且,在有些方面,嵌入式的边界非常模糊。
■网友
推荐两本书:《Designing Embedded Hardware》《Pro Linux Embedded Systems》
■网友
除了内核是必须,其实就是CPU的驱动。其他的就看需求了……嵌入式系统范围太广了!


    推荐阅读