Linux 系统开发
基于 linux 操作系统来开发我们的产品叫 linux系统开发。此开发的编程方式和裸机开发的编程方式是截然不同的。裸机开发的编程方式是直接运行在硬件之上,不与任何操作系统关联。
操作系统的存在势必要求设备驱动附加更多的代码和功能,把单一的“驱使硬件设备行动”变成了操作系统内与硬件交互的模块, 它对外呈现为操作系统的API,不再给应用软件工程师直接提供接口。由此可见,当系统中存在操作系统的时候,驱动变成了连接硬件和内核的桥梁。
linux 系统开发框架如下图所示,最上层的是应用软件,下面是操作系统,再下面是驱动程序,最后是我们的硬件。
举个例子:linux 系统可以跑到不同的硬件上面如 pc 机或者 arm 开发板上面。如果 linux 操作系统跑到 PC 机上,那么驱动就要适配PC 机;如果 linux 操作系统跑到 arm 开发板上面, 那么驱动就要适配 arm 开发板;所以说不同的硬件架构都可以跑linux,但是它的驱动程序是不同的,那么 linux操作系统源码都是一样的,唯一不一样的就是驱动程序了。也就是说同一个操作系统可以跑到不同的硬件上面,但是驱动程序是有差异的,因为驱动程序是操作系统和硬件连接的一个桥梁。
全部0条评论
快来发表一下你的评论吧 !