上QQ阅读APP看书,第一时间看更新
2.1.1 mini2440
现代计算机系统大都可以从逻辑上分为三大层:硬件层、系统软件层、应用软件层,当然还可以继续细分,如图2-1所示。每层都隐藏自己相关的实现细节,向上层提供相关接口,根据情况决定是否需要调用下层提供的接口。就像第1章分析的printf函数一样,你不必思考它是怎么实现的,只要调用它就行了,具体怎么做是它的事。这就是为什么写一个应用程序,首先要去了解各种应用程序库和这个应用程序运行所在的操作系统平台的API。因为我们要知道这个系统平台提供给应用程序的编程接口。
图2-1 现代计算机系统的逻辑分层
没有硬件的软件是空中楼阁,没有软件的硬件是一堆废物品,二者缺一不可。就像人一样,不仅要有强健的身躯,还要有智慧的大脑。
我们的目的是写操作系统内核。那么好了,由图2-1可知,首先应该了解某一具体硬件平台提供给我们的“接口”。
现在市面上的计算机平台种类繁多,有各种型号的超级计算机、服务器、PC、嵌入式开发板,当然你可能不会选择超级计算机和服务器来开发操作系统内核,我们要从中选择一个适合我们的。
既然这样,就要选择一个简单、常用、便宜的计算平台作为开发平台。而满足前三个条件的就是mini2440开发板。嵌入式开发板,比通常用的PC简单、便宜,而大多数嵌入式开发者或者学习嵌入式的同学都是从mini2440开发板开始的。下面就开始仔细研究这个开发板。