• 联系我们
  • 地址:湖北武汉三环科技园
  • 电话:159116031100
  • 传真:027-68834628
  • 邮箱:mmheng@foxmail.com
  • 当前所在位置:首页 - c++培训
  • c语言8月编程语言排行榜:C语言助力火星登陆
  •   【51CTO独家特稿】2012年8月,Tiobe发布了2012年8月最新一期编程语言排行榜。今天我们要谈到的是C语言,正是他帮助“好奇号”2012年8月6日登陆火星。

      国东部时间2012年8月6日凌晨1时30分(时间6日13时30分),新型火星探测器“好奇”号计划着陆火星表面。作为迄今为止设计最为复杂精密的火星探测器,好奇号探测采用的是风河公司业界领先的VxWorks®实时操作系统(RTOS)。好奇号采用VxWorks系统完成被称为EDL(进入火星大气层、下降以及着陆)的复杂着陆过程。由于飞船安全着陆需要绝对的精确度,这一过程被称为“恐怖七分钟”。从2011年11月26日火箭离开地球那一刻起一直到任务完成,VxWorks作为火星探测的核心操作系统,将在本次具有历史意义的活动上发挥至关重要的作用。整个火星里有50万行程序代码,运行在VxWorks操作系统上,精准无误,以毫微妙计算。

      498)this.width=498; onmousewheel = javascript:return big(this) src=/Upfile/2012810/201281091026959.jpg width=300 border=0 alt= />

      好奇号传回的火星图像(来源:NASA)

      VxWorks与C语言

      VxWorks 是国Wind River System 公司( 以下简称风河 公司 ,即 WRS公司)推出的一个实时操作系统。Tornado 是WRS 公司推出的一套实时操作系统开发,类似Microsoft Visual C,但是提供了更丰富的调试、仿真和工具。

      Wind River和VxWorks相信很多嵌入式程序员都不会陌生。VxWorks支持C语言或者C++进行开发,并配备了叫Tornado的集成开发。Tornado缺省使用GNU编译器,支持Ansiiso C, C++,以及AT&nmousewheel = javascript:return big(this) src=/Upfile/2012810/201281091026431.jpg width=500 border=0 alt= />

      Tornado II系统结构图

      Tornado 结构的专设计为开发人员和第三方工具厂商提供了一个。已有部分应用程序接口可以利用并附带参考书目,内容从开发接口到连接实现。

      Tornado包括强大的开发和调试工具, 尤其适用于面对大量问题的嵌入式开发人员。这些工具包括C和C++远程源级调试器, 目标和工具管理, 系统目标, 内存使用分析和自动配置. 另外,所有工具能很方便地同时运行,很容易增加和交互式开发。

      关于VxWorks组成部分,请参考《VxWorks组成部分》一文。

      登陆火星用了多少代码?

      根据51CTO记者了解到的情况,本次Curiosity好奇号登陆火星,其包含50万行C语言代码。这些代码运行在BAE制造的RAD750处理器上,他们包括150个模型,每个承担不同的功能。高度耦合的模块被抽象成组件,被置顶一个特定的功能或者行为。这些组件被进一步组合为层,整个火星登陆包括不超过10个层组织。

      好奇号项目中的软件开发经验

      浩大的好奇号项目其实国创意产业和商业力量的结合,并且NASA的项目管理者自有一套创新和商业逻辑。在长达9年,高达25亿元的投资中,火星科学实验室项目(好奇号火星登陆项目)其实是国创意产业和商业力量的结合。好奇号的登陆模拟团队同迪斯尼动画公司保持密切联系,从而使得3D登陆模拟更加精确。其它的一些系统解决方案有来自石油公司的,深海钻探公司的,甚至是农业公司的技术。

      这一浩大的工程是如何完成的? NASA的管理者自有其一套创新和商业逻辑。

      允许在研发过程中的奇思妙想

      一个典型的项目想法,可能是起源于一张餐巾纸上的草图,然后变成3D模拟模型,然后再变成生产模型。

      这一项目进行过程中,研发人员充满了敏锐的直觉和想象力。有时候,他们会去想象在太空中移动登录器的各个部件,构建想法。

      没有过于疯狂的想法,真的!

      在项目的最开始阶段,没有想法的习惯。研发人员,凭空想出任何点子,而其他人员不是去评价这个点子有多么的疯狂甚至是,而是去思考如何去改进这个点子。

      乐于从草案开始

      就像好的想法经常来源于之前的错误和过去的经验一样,项目的研发人员更倾向于从过去的草案中起步,而不是从头开始。

      不要陷于复杂的事物,将其分解为可控的最小单元

      因为有太多的复杂的、不同的系统在好奇号的平台上。项目的工程师们都是在相互区别的区分的系统中完成他们的工作。他们将会把项目分成无数的子系统,子部件,一遍解决单独的子问题。

      保持开策略

      无论是管理层,还是基层员工,每个人之间都能保持一种坦诚的沟通,并且能就具体问题进行具体的分析。

      不要重复发明轮子

      火星登陆项目从现实商业项目中学到很多经验,当研发人员发现某一部分的问题,已经有现成的解决方案的时候,他们要做的不是重复发明轮子,而是直接拿来用。

      允许没有的小理由

      在好奇号项目的软件中,以为工程师曾经在软件代码中添加了一段几年其过世的父亲的代码。这些没有的一些事情,被允许从而使得研发者对该项目充满了感情。

      【2012年榜单回顾】

      【51CTO独家特稿】2012年8月,Tiobe发布了2012年8月最新一期编程语言排行榜。今天我们要谈到的是C语言,正是他帮助“好奇号”2012年8月6日登陆火星。

      国东部时间2012年8月6日凌晨1时30分(时间6日13时30分),新型火星探测器“好奇”号计划着陆火星表面。作为迄今为止设计最为复杂精密的火星探测器,好奇号探测采用的是风河公司业界领先的VxWorks®实时操作系统(RTOS)。好奇号采用VxWorks系统完成被称为EDL(进入火星大气层、下降以及着陆)的复杂着陆过程。由于飞船安全着陆需要绝对的精确度,这一过程被称为“恐怖七分钟”。从2011年11月26日火箭离开地球那一刻起一直到任务完成,VxWorks作为火星探测的核心操作系统,将在本次具有历史意义的活动上发挥至关重要的作用。整个火星里有50万行程序代码,运行在VxWorks操作系统上,精准无误,以毫微妙计算。

      498)this.width=498; onmousewheel = javascript:return big(this) src=/Upfile/2012810/201281091026625.jpg width=300 border=0 alt= />

      好奇号传回的火星图像(来源:NASA)

      VxWorks与C语言

      VxWorks 是国Wind River System 公司( 以下简称风河 公司 ,即 WRS公司)推出的一个实时操作系统。Tornado 是WRS 公司推出的一套实时操作系统开发,类似Microsoft Visual C,但是提供了更丰富的调试、仿真和工具。

      Wind River和VxWorks相信很多嵌入式程序员都不会陌生。VxWorks支持C语言或者C++进行开发,并配备了叫Tornado的集成开发。Tornado缺省使用GNU编译器,支持Ansiiso C, C++,以及AT&nmousewheel = javascript:return big(this) src=/Upfile/2012810/201281091026625.jpg width=500 border=0 alt= />

      Tornado II系统结构图

      Tornado 结构的专设计为开发人员和第三方工具厂商提供了一个。已有部分应用程序接口可以利用并附带参考书目,内容从开发接口到连接实现。

      Tornado包括强大的开发和调试工具, 尤其适用于面对大量问题的嵌入式开发人员。这些工具包括C和C++远程源级调试器, 目标和工具管理, 系统目标, 内存使用分析和自动配置. 另外,所有工具能很方便地同时运行,很容易增加和交互式开发。

      关于VxWorks组成部分,请参考《VxWorks组成部分》一文。

      登陆火星用了多少代码?

      根据51CTO记者了解到的情况,本次Curiosity好奇号登陆火星,其包含50万行C语言代码。这些代码运行在BAE制造的RAD750处理器上,他们包括150个模型,每个承担不同的功能。高度耦合的模块被抽象成组件,被置顶一个特定的功能或者行为。这些组件被进一步组合为层,整个火星登陆包括不超过10个层组织。

      好奇号项目中的软件开发经验

      浩大的好奇号项目其实国创意产业和商业力量的结合,并且NASA的项目管理者自有一套创新和商业逻辑。在长达9年,高达25亿元的投资中,火星科学实验室项目(好奇号火星登陆项目)其实是国创意产业和商业力量的结合。好奇号的登陆模拟团队同迪斯尼动画公司保持密切联系,从而使得3D登陆模拟更加精确。其它的一些系统解决方案有来自石油公司的,深海钻探公司的,甚至是农业公司的技术。

      这一浩大的工程是如何完成的? NASA的管理者自有其一套创新和商业逻辑。

      允许在研发过程中的奇思妙想

      一个典型的项目想法,可能是起源于一张餐巾纸上的草图,然后变成3D模拟模型,然后再变成生产模型。

      这一项目进行过程中,研发人员充满了敏锐的直觉和想象力。有时候,他们会去想象在太空中移动登录器的各个部件,构建想法。

      没有过于疯狂的想法,真的!

      在项目的最开始阶段,没有想法的习惯。研发人员,凭空想出任何点子,而其他人员不是去评价这个点子有多么的疯狂甚至是,而是去思考如何去改进这个点子。

      乐于从草案开始

      就像好的想法经常来源于之前的错误和过去的经验一样,项目的研发人员更倾向于从过去的草案中起步,而不是从头开始。

      不要陷于复杂的事物,将其分解为可控的最小单元

      因为有太多的复杂的、不同的系统在好奇号的平台上。项目的工程师们都是在相互区别的区分的系统中完成他们的工作。他们将会把项目分成无数的子系统,子部件,一遍解决单独的子问题。

      保持开策略

      无论是管理层,还是基层员工,每个人之间都能保持一种坦诚的沟通,并且能就具体问题进行具体的分析。

      不要重复发明轮子

      火星登陆项目从现实商业项目中学到很多经验,当研发人员发现某一部分的问题,已经有现成的解决方案的时候,他们要做的不是重复发明轮子,而是直接拿来用。

      允许没有的小理由

      在好奇号项目的软件中,以为工程师曾经在软件代码中添加了一段几年其过世的父亲的代码。这些没有的一些事情,被允许从而使得研发者对该项目充满了感情。

      【2012年榜单回顾】