位置:51电子网 » 技术资料 » 嵌入式系统

Linux系统移植类型

发布时间:2009/1/4 0:00:00 访问次数:380

  1.基于处理器的移植

  这种类型的移植要求从支持处理器的编译器开始,这是主要的也是困难的一步。通常当一个操作系统(即便是一个应用程序)要运行于处理器上时,都需要特定的编译器把操作系统(应用程序)编译成处理器可识别的字节码。

  针对linux系统而言,由于gnu(gnu是一种自由软件体系)套件支持大量的处理器,gnu编译器gcc在设计时就已经考虑跨平台的问题,所以在进行goo移植时可以不考虑前端高级语言解析的部分(即针对c语言等解析的过程),而只需要考虑后端的移植(主要针对处理器部分)。这些后端告诉goo在编译时如何形成汇编代码,如何满足处理器体系结构下的参数传递,如何针对处理器进行流水线优化等。

  基于arm处理器的移植还包括操作系统的移植(假如嵌入式设备不需要操作系统,则编译器完成后就可以进入编写应用的阶段)。任何操作系统都有一定的代码是同处理器相关的,而操作系统为了增加运行效率,大都使用了大量特定处理器提供的底层功能支持。这些与特定处理器相关的部分最终都必须修改,使其适用于新的处理器。

  另外,从编写应用程序的角度来看,还必须提供函数库。因此函数库的移植也是必需的。

  2.基于平台的移植

  这种移植相对于处理器的移植而言所处的开发层次更高,主要在板级上进行。对于一个嵌入式设备,除了处理器还要有很多周边的器件才能正常工作。因此操作系统在运行时必须初始化特定目标板的器件。

  这些器件中最主要的是flash、sdram存储器等。这些设备在系统启动后必须能够正确寻址,从而使操作系统能够正常运行。此外可能需要考虑的问题还包括:打印终端、串口、以太网设备等。

  欢迎转载,信息来源维库电子市场网(www.dzsc.com)



  1.基于处理器的移植

  这种类型的移植要求从支持处理器的编译器开始,这是主要的也是困难的一步。通常当一个操作系统(即便是一个应用程序)要运行于处理器上时,都需要特定的编译器把操作系统(应用程序)编译成处理器可识别的字节码。

  针对linux系统而言,由于gnu(gnu是一种自由软件体系)套件支持大量的处理器,gnu编译器gcc在设计时就已经考虑跨平台的问题,所以在进行goo移植时可以不考虑前端高级语言解析的部分(即针对c语言等解析的过程),而只需要考虑后端的移植(主要针对处理器部分)。这些后端告诉goo在编译时如何形成汇编代码,如何满足处理器体系结构下的参数传递,如何针对处理器进行流水线优化等。

  基于arm处理器的移植还包括操作系统的移植(假如嵌入式设备不需要操作系统,则编译器完成后就可以进入编写应用的阶段)。任何操作系统都有一定的代码是同处理器相关的,而操作系统为了增加运行效率,大都使用了大量特定处理器提供的底层功能支持。这些与特定处理器相关的部分最终都必须修改,使其适用于新的处理器。

  另外,从编写应用程序的角度来看,还必须提供函数库。因此函数库的移植也是必需的。

  2.基于平台的移植

  这种移植相对于处理器的移植而言所处的开发层次更高,主要在板级上进行。对于一个嵌入式设备,除了处理器还要有很多周边的器件才能正常工作。因此操作系统在运行时必须初始化特定目标板的器件。

  这些器件中最主要的是flash、sdram存储器等。这些设备在系统启动后必须能够正确寻址,从而使操作系统能够正常运行。此外可能需要考虑的问题还包括:打印终端、串口、以太网设备等。

  欢迎转载,信息来源维库电子市场网(www.dzsc.com)



相关IC型号

热门点击

 

推荐技术资料

DFRobot—玩的就是
    如果说新车间的特点是“灵动”,FQPF12N60C那么... [详细]
版权所有:51dzw.COM
深圳服务热线:13751165337  13692101218
粤ICP备09112631号-6(miitbeian.gov.cn)
公网安备44030402000607
深圳市碧威特网络技术有限公司
付款方式


 复制成功!