Chinaunix首页 | 论坛 | 博客
  • 博客访问: 261895
  • 博文数量: 76
  • 博客积分: 773
  • 博客等级: 军士长
  • 技术积分: 759
  • 用 户 组: 普通用户
  • 注册时间: 2011-09-24 23:52
个人简介

victory for prepared

文章分类

全部博文(76)

文章存档

2022年(1)

2021年(1)

2018年(8)

2017年(3)

2016年(20)

2015年(12)

2013年(5)

2012年(25)

2011年(1)

我的朋友

分类: LINUX

2015-07-15 15:03:37

    为什么要进行嵌入式开发?每个产品都有不同的需求,例如监视器需要的是图像处理与网络通讯为主,MP3需要的是音乐播放。比较合乎常理的做法是,需要什么我就提供什么。例如MP3需要存储音乐的存储器,耳机接口,运算使用的cpu,解码芯片,显示屏,显示屏驱动芯片,中央处理器,输入接口。当然电脑也可以实现音乐播放功能,而且要强大的多!我说了强大,其实意思是指电脑除了可以播放音乐外还可以干别的东西,比如放视频,打游戏。MP3只是实现了电脑众多的功能之一。也可以说电脑是许多像MP3这样的功能组合而成的庞大容器。可以发现许多的电子产品都有共性,他们都需要CPU,显示器,电源,网络通信等。我对嵌入式开发的认知程度是量体裁衣,实现资源的高效配置。如果资源丰富的话,完全可以使用一台电脑加软件的方法满足我们的需求。嵌入式就是把我们不需要却要占用资源的部分去除,只留下我们需要的部分。资源不仅指硬件空间,也指占用的内存以及cpu的时间以及功耗。
    为什么嵌入式的开发环境和软件开发有所区别?计算机软件开发的编译和运行使用的是同一种机器指令系统。嵌入式开发通常是在自己的电脑上写别人设备上的程序,例如手机开发。手机开发不叫嵌入式开发的原因是没有进行系统层面的修剪,所进行的工作是系统层面之上的工作。嵌入式开发的感觉就像是做衣服,衣服的制作是在服装厂,有很多庞大的织布机,印染机器,缝纫机,但是拿到衣服的人看到只是自己喜欢的漂亮的衣服。这个工厂就是我们开发嵌入式系统的电脑,衣服就是我们的产品。用户拿到产品时是看不到编译,链接一系列复杂的工序,他们看到的是精简的可以使用的执行文件。修剪不仅是硬件上的,也是软件上的。
    自然加工我们的产品需要工作环境。使用通用计算机来搭建我们的开发环境是极好的了,原因可能就是省钱。在任何操作系统下都可以进行交叉编译,只要有相应的编译器就可以。网上最多的是在windows下建立linux虚拟机,其实是在linux环境下进行交叉编译工作。
    要完成交叉编译我们需要的工具有1,引导程序编译器;2,系统内核编译器。引导程序可以使u-boot,类似于bios的作用吧。系统内核编译器用于将经过我们修饰过的内核进行编译。内核的源码去哪儿找呢?这个我也在想这个问题,肯定是跟硬件系统有关的部分吧。

阅读(1031) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~