首页> 中国专利> 基于硬件的Linux软件开发系统及其构建方法

基于硬件的Linux软件开发系统及其构建方法

摘要

本发明公开一种基于硬件的Linux软件开发系统,该系统包括Windows平台和Linux模拟开发环境单元,Linux模拟开发环境单元至少包括FPGA模块和Linux模拟开发工具模块,其中,FPGA模块通过接口连接至Windows平台,用于Linux软件开发的硬件模拟;FPGA模块内安装有Windows驱动程序。Linux模拟开发工具模块安装在Windows平台上,用于在Windows平台形成Linux模拟开发环境,进行Linux软件开发。本发明公开一种基于硬件的Linux软件开发系统的构建方法。

著录项

  • 公开/公告号CN102622239A

    专利类型发明专利

  • 公开/公告日2012-08-01

    原文格式PDF

  • 申请/专利权人 青岛海信信芯科技有限公司;

    申请/专利号CN201210133480.X

  • 发明设计人 徐涛;鲁忠辉;

    申请日2012-05-02

  • 分类号G06F9/44(20060101);

  • 代理机构11325 北京中伟智信专利商标代理事务所;

  • 代理人张岱

  • 地址 266100 山东省青岛市崂山区株洲路151号

  • 入库时间 2023-12-18 06:20:22

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2016-03-30

    专利权的转移 IPC(主分类):G06F9/44 登记生效日:20160308 变更前: 变更后: 申请日:20120502

    专利申请权、专利权的转移

  • 2015-07-01

    授权

    授权

  • 2012-09-26

    实质审查的生效 IPC(主分类):G06F9/44 申请日:20120502

    实质审查的生效

  • 2012-08-01

    公开

    公开

说明书

技术领域

本发明涉及一种基于硬件的Linux软件开发系统及其构建方法。

背景技术

在Linux嵌入式软件开发过程中,特别是基于底层硬件的软件的开发,往往需要在X86平台上的Linux系统中完成基于底层硬件的软件开发,然后移植到嵌入式平台中。考虑到许多资源需要在windows下获取和使用,安装多个操作系统几乎是嵌入式开发所必须的。如果安装多系统,则需要经常进行系统间的切换和资源的共享,有碍于开发效率;如果使用多台电脑,则会增加成本。

为了节省资源,提高效率,一般的做法是在主机上安装windows系统,然后在其中的虚拟机中安装Linux系统,把硬件芯片连接到虚拟机中的Linux系统,在Linux环境中进行软件开发、移植。这种方式能有效避免频繁的系统切换,也不需要多台电脑,还能通过共享或文件服务交换不同系统间的资源。

但发明人发现这种方法也有一些不可避免的缺点。一:如果硬件芯片不能被虚拟机支持,或者没有Linux下的驱动,那么就无法在虚拟机的Linux环境下进行基于硬件的开发、测试工作。二:虚拟机会占用大量的系统资源,对主机系统要求较高,而且对很多硬件都是独占的,同一时间主机与虚拟机只能有一个对硬件访问。

发明内容

为了克服上述的缺陷,本发明提供一种开发效率更高的基于硬件的Linux软件开发系统。

为达到上述目的,一方面,本发明提供一种基于硬件的Linux软件开发系统,所述系统包括Windows平台和Linux模拟开发环境单元,所述Linux模拟开发环境单元至少包括现场可编程门阵列模块和Linux模拟开发工具模块,其中,

现场可编程门阵列模块,通过接口连接至所述Windows平台,用于Linux软件开发的硬件模拟;所述现场可编程门阵列模块内安装有Windows驱动程序;

Linux模拟开发工具模块,安装在所述Windows平台上,用于在Windows平台形成Linux模拟开发环境,进行Linux软件开发。

另一方面,本发明提供一种基于硬件的Linux软件开发系统的构建方法,所述构建方法至少包括下述步骤:

在主机上安装Windows系统,形成Windows平台;

将FPGA的软件接口连接至windows系统,将FPGA的硬件接口连接至主机,为软件接口和硬件接口安装windows驱动程序;

在windows系统中安装Linux模拟开发工具;

在FPGA中安装烧写工具;

在windows系统中安装代码类工具;

在Linux模拟开发工具中安装与Linux软件开发内容对应的支持模块。

本发明基于硬件的Linux软件开发系统在Windows平台基础上搭建Linux模拟开发环境单元,避免了系统间的频繁切换或着使用多台电脑。降低了开发成本,提高了开发效率。

本发明基于硬件的Linux软件开发系统的构建方法实现了上述基于硬件的Linux软件开发系统,可以低成本、高效率地在windows平台上进行基于硬件芯片的嵌入式Linux开发。

附图说明

图1为本发明基于硬件的Linux软件开发系统结构示意图。

图2为本发明优选实施例结构示意图。

图3为远程登录优选实施例结构示意图。

具体实施方式

下面结合说明书附图和实施例对本发明做详细描述。

本发明基于硬件的Linux软件开发系统包括Windows平台和Linux模拟开发环境单元。Linux模拟开发环境单元至少包括现场可编程门阵列(FPGA:Field-Programmable Gate Array)模块和Linux模拟开发工具模块。

其中,FPGA模块通过接口连接至Windows平台,用于Linux软件开发的硬件模拟。FPGA模块内安装有Windows驱动程序,使之能在windows平台中被识别并被使用。

Linux模拟开发工具模块安装在Windows平台上,用于在Windows平台形成Linux模拟开发环境,进行Linux软件开发。

通过上述结构,实现了在Windows平台基础上搭建Linux模拟开发环境单元,可以在Windows平台上进行基于硬件芯片的嵌入式Linux开发,避免了系统间的频繁切换或着使用多台电脑。降低了开发成本,提高了开发效率。

FPGA模块连接至Windows平台包括两层含义,即软件接口的连接和硬件接口的连接。其中,软件接口连接至Windows平台上的Windows系统,硬件接口连接至Windows平台的主机。

软件接口和硬件接口的具体连接方式和具体连接接口不限,可以实现FPGA与Windows平台的连接即可。优选的软件接口有JTAG接口、UART接口和EJTAG接口;硬件接口优选使用HPI接线,其连接方式可以通过PCI-HPI转接线连接到主机的PCI插槽或通过USB-HPI转接线连接到主机的USB接口。

Windows平台上设置有代码编辑工具模块和/或媒体格式、码流查看工具模块。安装了上述模块后,有利于方便地察看结果。

在Linux模拟开发工具模块内设有与Linux软件开发内容对应的支持模块。安装了支持模块后,可以很好地调用硬件,实现软硬件的协同开发工作。当该系统应用于音视频的开发时,Linux模拟开发工具模块优选使用性能良好的Cygwin或MiniGW软件。

Linux模拟开发工具模块中设有远程登录子模块,用于支持多个客户端进行远程登录。由于该远程登录服务允许多个工作人员的远程协同开发,所以使得本系统具有了更高的便利性。方便用户在远程计算机上编辑开发软件,而且还可以多个人共享使用Linux模拟开发环境,共同进行远程协作,降低了开发的成本,提高了开发的效率。

本系统中对远程客户端没有具体的数量限定,也没有操作系统的限定,Windows系统或Linux系统均可。

为了实现上述基于硬件的Linux软件开发系统,本发明基于硬件的Linux软件开发系统的构建方法至少包括下述步骤:

在主机上安装Windows系统,形成Windows平台;在windows系统平台上进行基于硬件芯片的Linux嵌入式软件开发的方案。

将FPGA的软件接口连接至windows系统,将FPGA的硬件接口连接至主机,为软件接口和硬件接口安装windows驱动程序;使两者都能在windows平台中被识别并被使用。

在windows系统中安装Linux模拟开发工具;使相关的软件开发与Linux系统下的开发相同。

在FPGA中安装烧写工具;该工具通过软件接口烧写、擦除FPGA中解码芯片程序,使用FPGA模拟硬件的形式有利于硬件的调试和软硬件的同步开发。

在windows系统中安装代码类工具;该代码类工具主要包括代码编辑工具sourceInsight和/或媒体格式、码流查看工具。代码编辑工具sourceInsight能够以友好的界面显示整个代码工程,并能建立相关索引。媒体格式、码流查看工具用于调试、检验解码软件的正确性。

在Linux模拟开发工具中安装与Linux软件开发内容对应的支持模块。当Linux模拟开发工具为支持图形化显示的Cygwin时,还需要安装音频硬件的驱动。优选采用ALSA架构的音频驱动,以便于实现音视频测试;安装开源的Gstreamer,Gstreamer可以为上层的媒体播放提供统一的接口,同时它也便于对解码软件进行调试。

在Linux模拟开发工具中启用远程登录服务。该远程登录服务是多个客户端通过ssh协议登录到Linux模拟开发工具中,登录的用户名和密码用的是主机上windows系统的登录名和密码。

有了上述的远程登录服务后,可以方便用户在远程计算机上编辑开发软件。而且还可以多个人共享使用Linux模拟开发环境,进行远程协作。降低开发成本,提高开发效率。

优选实施例一:基于硬件的Linux软件开发系统包括Windows平台和Linux模拟开发环境单元。Linux模拟开发环境单元包括FPGA模块和Linux模拟开发工具模块,该Linux模拟开发工具模块为Xserver版本的Cygwin。

Windows平台是由主机和安装在其上的Windows XP操作系统共同组成。将FPGA的JTAG接口通过USB连接到主机的windows系统中;在FPGA中下载视频解码器芯片的模拟代码,解码器的输入输出经过PCI-HPI转接线连接到主机的PCI插槽中。给JTAG接口安装windows驱动程序,使之能在windows平台中识别使用。

在windows XP操作系统中安装Cygwin。Cygwin能够支持基本的Linux shelll命令,支持Linux下的开源编译工具gcc、调试工具gdb。最主要的是它能够利用windows的显卡,支持图形化的显示,使得视频解码软件的开发和在Linux下开发完全一样。

在FPGA中安装XILINX烧写工具,该工具通过JTAG接口烧写、擦除FPGA中解码芯片程序,使用FPGA模拟硬件的形式有利于硬件的调试和软硬件的同步开发。

在windows系统中安装代码编辑工具sourceInsight和媒体格式、码流查看工具。代码编辑工具sourceInsight以友好的界面显示整个代码工程,并能建立相关索引;媒体格式、码流查看工具用于调试、检验解码软件的正确性。

为了实现对音频的开发工作,本优选实施例中使用的是支持图形化显示的Cygwin。此外还需要安装音频硬件的驱动,这里采用ALSA架构的音频驱动,以便于实现音视频测试;安装开源的Gstreamer,Gstreamer可以为上层的媒体播放提供统一的接口,同时它也便于对解码软件进行调试。

本优选实施例在windows平台上进行基于硬件芯片的Linux嵌入式软件开发的方案。该方案能够在硬件芯片缺少Li nux驱动的情况下,即无法直接连接到Linux系统中的时候,在windows平台的windows系统中安装类Linux模拟开发环境,开发适用于Linux平台的软件。

优选实施例二:基于硬件的Linux软件开发系统包括Windows平台和Linux模拟开发环境单元。Linux模拟开发环境单元包括FPGA模块和Linux模拟开发工具模块,该Linux模拟开发工具模块为Xserver版本的Cygwin。

Windows平台是由主机和安装在其上的Windows XP操作系统共同组成。将FPGA的JTAG接口通过USB连接到主机的windows系统中,将HPI(Hard ware PlatformInterface硬件平台接口)接线通过PCI-HPI转接线连接到主机的PCI插槽,同时安装两者的windows驱动程序,使之能在windows平台中识别使用。

在windows XP操作系统中安装Cygwin。Cygwin能够支持基本的Linux shelll命令,支持Linux下的开源编译工具gcc、调试工具gdb。最主要的是它能够利用windows的显卡,支持图形化的显示,使得视频解码软件的开发和在Linux下开发完全一样。

在FPGA中安装XILINX烧写工具,该工具通过JTAG接口烧写、擦除FPGA中解码芯片程序,使用FPGA模拟硬件的形式有利于硬件的调试和软硬件的同步开发。

在windows系统中安装代码编辑工具sourceInsight和媒体格式、码流查看工具。代码编辑工具sourceInsight以友好的界面显示整个代码工程,并能建立相关索引;媒体格式、码流查看工具用于调试、检验解码软件的正确性。

为了实现对音频的开发工作,本优选实施例中使用的是支持图形化显示的Cygwin。此外还需要安装音频硬件的驱动,这里采用ALSA架构的音频驱动,以便于实现音视频测试;安装开源的Gstreamer,Gstreamer可以为上层的媒体播放提供统一的接口,同时它也便于对解码软件进行调试。

在Cygwin中启用sshd远程登录服务,利用windows的网络,允许远程的10个客户端通过ssh协议登录到Cygwin中。10个客户端当中有5个客户端为windows,5个客户端为Linux。远程客户端登录的用户名和密码用的也是主机windows系统的登录名、密码。

本优选实施例也是在windows平台上进行基于硬件芯片的Linux嵌入式软件开发的方案。与优选实施例一的不同在于增加了远程登录的功能,方便用户在远程计算机上编辑开发软件,而且还可以多个人共享使用Cygwin的开发环境,进行远程协作,大大降低了开发的成本。

优选实施例三:基于硬件的Linux软件开发系统包括Windows平台和Linux模拟开发环境单元。Linux模拟开发环境单元包括FPGA模块和Linux模拟开发工具模块,该Linux模拟开发工具模块为MiniGW。

Windows平台是由主机和安装在其上的Windows XP操作系统共同组成。将FPGA的UART接口通过USB连接到主机的windows系统中,将HPI(Hard ware PlatformInterface硬件平台接口)接线通过USB-HPI转接线连接到主机的USB上。同时安装UART接口和HPI的windows驱动程序,使两个接口都能在windows平台中被识别和使用。

在windows XP操作系统中安装MiniGW。MiniGW能够支持基本的Linux shelll命令,支持Linux下的开源编译工具g cc、调试工具gdb。最主要的是它能够利用windows的显卡,支持图形化的显示,使得视频解码软件的开发和在Linux下开发完全一样。

在FPGA中安装烧写工具,该工具通过JTAG接口烧写、擦除FPGA中解码芯片程序,使用FPGA模拟硬件的形式有利于硬件的调试和软硬件的同步开发。

在windows系统中安装代码编辑工具sourceInsight和媒体格式、码流查看工具。代码编辑工具sourceInsight以友好的界面显示整个代码工程,并能建立相关索引;媒体格式、码流查看工具用于调试、检验解码软件的正确性。

为了实现对视频的开发工作,本优选实施例中使用的是支持图形化显示的MiniGW。此外还需要安装视频硬件的驱动;安装开源的Gstreamer,Gstreamer可以为上层的媒体播放提供统一的接口,同时它也便于对解码软件进行调试。

本优选实施例也是在windows平台上进行基于硬件芯片的Linux嵌入式软件开发的方案。与优选实施例一的不同在于使用MiniGW作为Linux模拟开发工具,而FPGA与windows平台的连接方式也不同。但依然可以在硬件芯片缺少Linux驱动的情况下通过在windows系统中安装类Linux模拟开发环境,达到开发适用于Linux平台软件的目的。

优选实施例四:基于硬件的Linux软件开发系统包括Windows平台和Linux模拟开发环境单元。Linux模拟开发环境单元包括FPGA模块和Linux模拟开发工具模块,该Linux模拟开发工具模块为MiniGW。

Windows平台是由主机和安装在其上的Windows XP操作系统共同组成。将FPGA的UART接口通过USB连接到主机的windows系统中,将HPI(Hard ware PlatformInterface硬件平台接口)接线通过USB-HPI转接线连接到主机的USB上。同时安装UART接口和HPI的windows驱动程序,使两个接口都能在windows平台中被识别和使用。

在windows XP操作系统中安装MiniGW。MiniGW能够支持基本的Linux shelll命令,支持Linux下的开源编译工具gcc、调试工具gdb。最主要的是它能够利用windows的显卡,支持图形化的显示,使得视频解码软件的开发和在Linux下开发完全一样。

在FPGA中安装烧写工具,该工具通过JTAG接口烧写、擦除FPGA中解码芯片程序,使用FPGA模拟硬件的形式有利于硬件的调试和软硬件的同步开发。

在windows系统中安装代码编辑工具sourceInsight和媒体格式、码流查看工具。代码编辑工具sourceInsight以友好的界面显示整个代码工程,并能建立相关索引;媒体格式、码流查看工具用于调试、检验解码软件的正确性。

为了实现对视频的开发工作,本优选实施例中使用的是支持图形化显示的MiniGW。此外还需要安装音频硬件的驱动,这里采用ALSA架构的音频驱动,以便于实现音视频测试;安装开源的Gstreamer,Gstreamer可以为上层的媒体播放提供统一的接口,同时它也便于对解码软件进行调试。

在Cygwin中启用sshd远程登录服务,利用windows的网络,允许远程的20个客户端通过ssh协议登录到Cygwin中。20个客户端当中有12个客户端为windows系统,8个客户端为Linu系统x。远程客户端登录的用户名和密码用的也是主机windows系统的登录名、密码。

本优选实施例也是在windows平台上进行基于硬件芯片的Linux嵌入式软件开发的方案。与优选实施例三的不同在于增加了远程登录的功能,方便用户在远程计算机上编辑开发软件,而且还可以多个人共享使用Cygwin的开发环境,进行远程协作,大大降低了开发的成本。

以上,仅为本发明的较佳实施例,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求所界定的保护范围为准。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号