下面小编给大家整理的机务数据整合平台系统的开发,本文共10篇,欢迎阅读与借鉴!

篇1:机务数据整合平台系统的开发
机务数据整合平台系统的开发
针对现有机务段由于信息化系统较多、重要的基础数据非常分散等问题,开发了机务数据整合平台系统.
作 者:苑修滨 Yuan Xiubin 作者单位:哈尔滨铁路局齐齐哈尔机务段,黑龙江,齐齐哈尔,161031 刊 名:铁道机车车辆工人 英文刊名:RAILWAY LOCOMOTIVE & ROLLING STOCK WORKERS 年,卷(期): “”(5) 分类号:U268.2 关键词:机务段 数据整合 多系统 GIS篇2:Linux嵌入式系统开发平台选型探讨
??1 嵌入式系统与Linux
按照电气工程师协会的一个定义:嵌入式系统是用来控制或监视机器、装置或工厂等的大规模系统的设备。具体说来,它是电脑软件和硬件的综合体;是以应用为中心,以计算机技术为基础,软硬件可裁减,从而能够适应实际应用中对功能、可靠性、成本、体积、功耗等严格要求的专用计算机系统。一般来说,嵌入式系统不能使用通用型计算机,而且运行的是固化的软件,终端用户很难或者不可能改变固件。而Linux也早已成为IT界家喻户晓的一个名字。概括说来,将Linux应用于嵌入式系统的开发有如下一些优点:
① Linux自身具备一整套工具链,容易自行建立嵌入式系统的开发环境和交叉运行环境,并且可以跨越在嵌入式系统开发中仿真工具(ICE)的障碍。
② 内核的完全开放,使得可以自己设计和开发出真正的硬实时系统;对于软实时系统,在Linux中也容易得到实现。
③ 强大的网络支持,使得可以利用Linux的网络协议栈将其开发成为嵌入式的TCP/IP网络协议栈。
2 嵌入式系统设计的过程
按照嵌入式系统的工程设计方法,嵌入式系统的设计可以分成三个阶段:分析、设计和实现。分析阶段是确定要解决的问题及需要完成的目标,也常常被称为“需求阶段”;设计阶段主要是解决如何在给定的约束条件下完成用户的要求;实现阶段主要是解决如何在所选择的硬件和软件的基础上进行整个软、硬件系统的协调实现。在分析阶段结束后,通常开发者面临的一个棘手的问题就是硬件平台和软件平台的选择,因为它的好坏直接影响着实现阶段的任务完成。
通常硬件和软件的选择包括:处理器、硬件部件、操作系统、编程语言、软件开发工具、硬件调试工具、软件组件等。
在上述选择中,通常,处理器是最重要的,同时操作系统和编程语言也是非常关键的。处理器的选择往往同时会限制操作系统的选择,操作系统的选择又会限制开发工具的选择。
3 硬件平台的选择
3.1 处理器的选择
嵌入式系统的核心部件是各种类型的嵌入式处理器。据不完全统计,目前全世界嵌入式处理器的品种总量已经超过1000多种,流行体系结构有30几个系列。但与全球PC市场不同的是,没有一种微处理器和微处理器公司可以主导嵌入式系统,仅以32位的CPU而言,就有100种以上嵌入式微处理器。由于嵌入式系统设计的差异性极大,因此选择是多样化的。
调查上市的CPU供应商,有些公司如Motorola、Intel、AMD很有名气,而有一些小的公司,如QED(Santa Clara.CA)虽然名气很小,但也生产很优秀的微处理器。另外,有一些公司,如ARM、MIPS等,只设计但并不生产CPU,他们把生产权授予世界各地的半导体制造商。ARM是近年来在嵌入式系统有影响力的微处理器制造商,ARM的设计非常适用于小的电源供电系统。Apple在Newton手持计算机中使用ARM,另外有几款数字无线电话也在使用ARM。
设计者在选择处理器时要考虑的主要因素有:
① 处理性能。一个处理器的性能取决于多个方面的因素,如时钟频率,内部寄存器的大小,指令是否对等处理所有的寄存器等。对于许多需用处理器的嵌入式系统设计来说,目标不是在于挑选速度最快的处理器,而是在于选取能够完成作业的处理器和I/O子系统。如果是面向高性能的应用设计,那么建议考虑某些新的处理器,其价格相对低廉,如IBM和Motorola Power PC。
② 技术指标。当前,许多嵌入式处理器都集成了外围设备的功能,减少了芯片的数量,降低了整个系统的开发费用。开发人员首先考虑的是,系统所要求的一些硬件能否无需过多的胶合逻辑(GL,Glue Logic)就可以连接到处理器上。其次是考虑该处理器的一些支持芯片,如DMA控制器,内存管理器,中断控制器,串行设备、时钟等的配套。
③ 功耗。嵌入式微处理器最大并且增长最快的市场是手持设备、电子记事本、PDA、手机、GPS导航器、智能家电等消费类电子产品。这些产品中选购的微处理器,典型的特点是要求高性能、低功耗。许多CPU生产厂家已经进入了这个领域。今天,用户可以买到一颗嵌入式的微处理器,其速度像笔记本中的Pentium一样快;而它仅使用普通电池供电即可,并且价格很便宜。如果用于工业控制,则对这方面的考虑较弱。
④ 软件支持工具。仅有一个处理器,没有较好的软件开发工具的支持也是不行的,因此选择合适的软件开发工具对系统的实现会起到很好的作用。
⑤ 是否内置调试工具。处理器如果内置调试工具可以大大缩小调试周期,降低调试的难度。
⑥ 供应商是否提供评估板。许多处理器供应商可以提供评估板来验证理论是否正确,决策是否得当。
3.2 硬件部件选择的其它因素
① 生产规模。打算做1套?多套?还是规模生产?如果生产规模比较大,可以自己设计和制备硬件,这样可以降低成本。反之,最好从第三方购买主板和I/O板卡。
② 开发的市场目标。如果想使产品尽快发售,以获得竞争力,此时要尽可能买成熟的硬件;反之,可以自己设计硬件,降低成本
。
③ 软件对硬件的依赖性。软件是否可以在硬件没有到位的时候并行设计或先行开发。
④ 只要可能,尽量选择使用普通的硬件。在 CPU 及架构的选择上,一个原则是:只要有可替代的方案,尽量不要选择 Linux 尚不支持的硬件平台。
4 软件平台的选择
图1所示的嵌入式软件的开发流程,主要涉及到代码编程、交叉编译、交叉连接、下载到目标板和调试等几个步骤,因此软件平台的选择也涉及到以下几个方面。
4.1 操作系统的选择
(1)操作系统选择应考虑的因素
硬件方案确定之后,操作系统的选择就相对轻松了。硬件的不同,会影响操作系统的选择。低端无MMU(Memory Management Unit,存储器管理单元)的CPU,要使用uClinux 操作系统;而相对高端的硬件,则可以用普通的嵌入式 Linux 操作系统。uClinux 和普通的 Linux 有各自的优势和缺点。可用于嵌入式系统软件开发的操作系统很多,但关键是如何选择一个适合开发项目的操作系统。经过多年的开发实践,笔者认为应该从以下几点进行考虑:
① 操作系统提供的开发工具。有些实时操作系统(RTOS)只支持该系统供应商的开发工具,因此,还必须向操作系统供应商获取编译器、调试器等;而有些操作系统使用广泛,且有第三方工具可用,因此,选择的余地比较大。
② 操作系统向硬件接口移植的难度。操作系统到硬件的移植是一个重要的问题,是关系到整个系统能否按期完工的一个关键因素。因此,要选择那些可移植性程度高的操作系统,避免操作系统难以向硬件移植而带来的种种困难,加速系统的开发进度。
③ 操作系统的内存要求。均衡考虑是否需要额外花钱去购买RAM或EEPROM来迎合操作系统对内存的较大要求。
④ 开发人员是否熟悉此操作系统及其提供的API。
⑤ 操作系统是否提供硬件的驱动程序,如网卡等。
⑥ 操作系统的可剪裁性。有些操作系统具有较强的可剪裁性,如嵌入式Linux、Tornado/VxWorks等等。
⑦ 操作系统的实时性能。
(2)几类嵌入式Linux系统的比较
(本网网收集整理)
嵌入式Linux系统方面的产品主要分为三类:
第一类是专门为Linux的嵌入式应用而做的。如何让Linux更小、更容易嵌入到体积要求和功能、性能要求更高的硬件中去,是他们的产品开发方向,如MontaVista的MontaVista Linux等。第二类是专门为Linux的实时特性设计的产品。将Linux开发成实时系统尤其是硬实时系统,应用于一些关键的控制场合(不仅仅是信息电器)。如,Fsmlabs公司开发出来的RT-Linux产品已经用在工业控制的很多方面;葡萄牙的Coimbra大学已经利用RT-Linux实现了化工生产控制厂里用来控制反应和程序控制的系统。第三类的产品是将实时性和嵌入式方案结合起来的方案。很多公司都这么做,并且提供集成化的开发方案,如Lineo、TimeSys等等。
因此选择操作系统时,要根据自己的嵌入式要求和实时性要求,选择适合自己的嵌入式Linux;同时,和选择硬件的原则一样,如果可能,尽量选择使用普通的嵌入式 Linux 系统。
4.2 编程语言的选择
编程语言的`选择主要考虑以下因素:
① 通用性。不同种类的微处理器都有自己专用的汇编语言。这就为系统开发者设置了一个巨大的障碍,使得系统编程更加困难,软件重用无法实现。而高级语言一般和具体机器的硬件结构联系较少,多数微处理器都有良好的支持,通用性较好。
② 可移植性程度。汇编语言和具体的微处理器密切相关,为某个微处理器设计的程序不能直接移植到另一个不同种类的微处理器上使用,移植性差;而高级语言对所有微处理器都是通用的,程序可以在不同的微处理器上运行,可移植性较好。
③ 执行效率。一般来说,越是高级的语言,其编译器和开销就越大,应用程序也就越大、越慢;但单纯依靠低级语言,如汇编语言来进行应用程序的开发,带来的问题是编程复杂、开发周期长。因此,存在一个开发时间和运行性能间的权衡问题。
④ 可维护性。低级语言如汇编语言,可维护性不高。高级语言程序往往是模块化设计,各个模块之间的接口是固定的。当系统出现问题时,可以很快地将问题定位到某个模块内,并尽快得到解决。另外,模块化设计也便于系统功能的扩充和升级。
几种开发语言的比较:
在嵌入式系统开发过程中使用的语言种类很多,比较广泛应用的高级语言有:Ada、C/C++、Modula-2和Java等。Ada语言定义严格,易读易懂,有较丰富的库程序支持,目前在国防、航空、航天等相关领域应用比较广泛,未来仍将在这些领域占有重要地位。C语言具有广泛的库程序支持,目前在嵌入式系统中是应用最广泛的编程语言,在将来很长一段时间内仍将在嵌入式系统应用领域占重要地位。C++是一种面向对象的编程语言,目前在嵌入式系统设计中也得到了广泛的应用,如GNU C++。Visual C++,是一种集成开发环境,支持可视化编程,广泛应用于GUI程序开发。但C与C++相比,C++的目标代码往往比较庞大和复杂,在嵌入式系统应用中应充分考虑这一因素。Modula-2定义清晰,支持丰富,具有较好的模块化结构,在教学科研方面有较广泛的应用。虽然该语言的开发应用一直比较平缓,但近两年在欧洲有所复苏。J
ava语言相对年轻,但有很强的跨平台特性,目前发展势头较为强劲。Java语言的“一次编程,到处可用”的特性,使得它在很多领域备受欢迎。随着网络技术和嵌入式技术的不断发展,Java及嵌入式Java的应用也将越来越广泛,但是Java消耗硬件资源较大。
4.3 集成开发环境考虑的因素
集成开发环境IDE(Integrated Development Environment)应考虑以下因素:
① 系统调试器的功能。系统调试特别是远程调试是一个重要的功能。
② 支持库函数。许多开发系统提供大量使用的库函数和模板代码,如大家比较熟悉的C++编译器就带有标准的模板库。它提供了一套用于定义各种有用的集装、存储、搜寻、排序对象。与选择硬件和操作系统的原则一样:除非必要,尽量采用标准的 glibc。
③ 编译器开发商是否持续升级编译器。
④ 连接程序是否支持所有的文件格式和符号格式。
4.4 硬件调试工具的选择
好的软件调试程序可以有效地发现大多数的错误,但是如果再选择一个好的硬件调试就会达到事半功倍的效果。常用的硬件调试工具有以下几种:
① 实时在线仿真器(ICE,In-Circuit Emulator)。用户从仿真插头向ICE看,ICE应是一个可被控制的MCU。ICE是通过一根短电缆连接到目标系统上的。该电缆的一端有一个插件,插到处理器的插座上,而处理器则插到这个插件上。ICE支持常规的调试操作,如单步运行、断点、反汇编、内存检查、源程序级的调试等等。
② 逻辑分析仪。逻辑分析仪最常用于硬件调试,但也可用于软件调试。它是一种无源器件,主要用于监视系统总线的事件.
③ ROM仿真器。ROM仿真器用于插入目标上的ROM插座中的器件,用于仿真ROM芯片。可以将程序下载到ROM仿真器中,然后调试目标上的程序,就好像程序烧结在PROM中一样,从而避免了每次修改程序后直接烧结的麻烦。
④ 在线调试OCD或在线仿真(on-chip emulator)
特别的硅基材料以及定制和CPU引脚的串行连接,在这种特殊的CPU芯片上使用OCD (On-Chip Debugging),才能发挥出OCD的特点。用低端适配器就可以把OCD端口和主工作站以及前端调试软件连接起来。从OCD的基本形式看来,它的特点和单一的ROM监测器是一致的,但是不像后者那样,需要专门的程序以及额外的通信端口。
4.5 软件组件的选择
有些软件组件是免费的,有些软件组件是授权的。授权软件组件的费用一般都很高,但大都经过严格的测试,可靠性高,调试时间短。现在也有一些免费的自由软件组件,它们的性能、可靠性也很好。因此开发人员在选择的时候要加以权衡,确定哪种方案更好。
5 展 望
国外的开发已经如火如荼,国内的开发也不甘示弱。Linux在嵌入式系统中具有强大的生命力和利用价值,很多公司和大学都不同程度地表现出对这个方面的兴趣。有理由相信,嵌入式Linux的发展将带领我们进入嵌入式系统的新时代!
篇3:Linux嵌入式系统开发平台选型探讨
??1 嵌入式系统与Linux
按照电气工程师协会的一个定义:嵌入式系统是用来控制或监视机器、装置或工厂等的大规模系统的设备。具体说来,它是电脑软件和硬件的综合体;是以应用为中心,以计算机技术为基础,软硬件可裁减,从而能够适应实际应用中对功能、可靠性、成本、体积、功耗等严格要求的专用计算机系统。一般来说,嵌入式系统不能使用通用型计算机,而且运行的是固化的软件,终端用户很难或者不可能改变固件。而Linux也早已成为IT界家喻户晓的一个名字。概括说来,将Linux应用于嵌入式系统的开发有如下一些优点:
① Linux自身具备一整套工具链,容易自行建立嵌入式系统的`开发环境和交叉运行环境,并且可以跨越在嵌入式系统开发中仿真工具(ICE)的障碍。
② 内核的完全开放,使得可以自己设计和开发出真正的硬实时系统;对于软实时系统,在Linux中也容易得到实现。
③ 强大的网络支持,使得可以利用Linux的网络协议栈将其开发成为嵌入式的TCP/IP网络协议栈。
2 嵌入式系统设计的过程
按照嵌入式系统的工程设计方法,嵌入式系统的设计可以分成三个阶段:分析、设计和实现。分析阶段是确定要解决的问题及需要完成的目标,也常常被称为“需求阶段”;设计阶段主要是解决如何在给定的约束条件下完成用户的要求;实现阶段主要是解决如何在所选择的硬件和软件的基础上进行整个软、硬件系统的协调实现。在分析阶段结束后,通常开发者面临的一个棘手的问题就是硬件平台和软件平台的选择,因为它的好坏直接影响着实现阶段的任务完成。
通常硬件和软件的选择包括:处理器、硬件部件、操作系统、编程语言、软件开发工具、硬件调试工具、软件组件等。
在上述选择中,通常,处理器是最重要的,同时操作系统和编程语言也是非常关键的。处理器的选择往往同时会限制操作系统的选择,操作系统的选择又会限制开发工具的选择。
3 硬件平台的选择
3.1 处理器的选择
嵌入式系统的核心部件是各种类型的嵌入式处理器。据不完全统计,目前全世界嵌入式处理器的品种总量已经超过1000多种,流行体系结构有30几个系列。但与全球PC市场不同的是,没有一种微处理器和微处理器公司可以主导嵌入式系统,仅以32位的CPU而言,就有100种以上嵌入式微处理器。由于嵌入式系统设计的差异性极大,因此选择是多样化的。
调查上市的CPU供应商,有些公司如Motorola、Intel、AMD很有名气,而有一些小的公司,如QED(Santa Clara.CA)虽然名气很小,但也生产很优秀的微处理器。另外,有一
[1] [2] [3] [4] [5]
篇4:大数据平台架构师岗位职责精选范本
1、负责公司大数据处理框架研发工作,设计与开发分布式存储、数据处理与分析架构。
2、负责大数据平台与产品和相关技术的追踪及研究。
3、负责大数据的处理工作,以及业务数据提取、加载、转换处理流程的开发和优化。
4、利用大数据平台工具对数据维护。
5、负责相关项目的技术支持和服务。
6、持续对系统的技术架构进行改进和优化。
篇5:大数据平台架构师岗位职责精选范本
1. 负责大数据项目整体架构规划,包括应用架构、技术架构、物理架构和数据架构等;
2. 负责指导工程师进行技术验证与实现,核心技术问题的攻关,解决项目开发过程中的技术难题;
3. 负责项目对外技术沟通,具有较强的沟通,表达和文档撰写能力;
4. 根据公司项目和业务发展特点,负责研究相关大数据前沿技术;
5. 推动技术能力的沉淀。
篇6:大数据平台架构师岗位职责精选范本
1. 负责数澜大数据平台的架构设计和研发,建立数据生态服务,解决海量数据面临的挑战;
2. 管理和优化Hadoop、Spark等集群,计算作业的调优,保证集群和平台的高效和稳定;
3. 负责Hadoop、Spark、Flink的功能、性能和扩展,解决并实现业务需求;
4. 负责大数据产品的自动化、离线与实时计算、即席计算、数据质量、数据安全、机器学习等平台的设计和开发;
5. 调研和把握当前的最新技术,将其中的先进技术引入到自己的平台中,改善产品,提升竞争力;
篇7:大数据平台架构师岗位职责精选范本
1、负责大数据平台资源规划、权限控制、运维架构设计,为各产品业务提供稳定、高效、安全的运行环境;
2、负责实时,离线数据分析处理及实时平台的建设和搭建
3、熟悉 Flink 流式计算引擎的使用以及源码原理,并且有相关的流式处理平台的经验。
4、Java基础扎实,熟练掌握垃圾回收,网络,多线程编程,了解 python 或 scala
5、负责大数据平台技术架构、数据架构的分析与设计;
篇8:大数据平台架构师岗位职责精选范本
1、建设大数据平台,主要技术为k8s, docker;
2、跟进开源社区的更新,阅读文档,验证feature;
3、阅读容器生态圈各组件的开源项目代码,开发新功能;
4、持续提升平台的性能和稳定性。
篇9:大数据平台项目建议书
《大数据平台项目建议书》主要从宏观上论述项目设立的必要性和可能性,从项目的市场和销售、规模、选址、物料供应、工艺、组织和定员、投资、效益、风险等进行深入阐述,消除决策主体项目选择的盲目性,着力阐述项目的规划设想,极力突显项目的社会和经济效益,达到立项报批的目的。
【目录】
第一部分 总论
一、项目概况
(一)项目名称
(二)项目的承办单位
(三)项目报告撰写单位
(四)项目主管部门
(五)项目建设内容、规模、目标
(六)项目建设地点
二、立项研究结论
(一)项目产品市场前景
(二)项目原料供应问题
(三)项目政策保障问题
(四)项目资金保障问题
(五)项目组织保障问题
(六)项目技术保障问题
(七)项目人力保障问题
(八)项目风险控制问题
(九)项目财务效益结论
(十)项目社会效益结论
(十一)项目立项可行性综合评价
三、主要技术经济指标汇总
在总论部分中,可将项目立项报告中各部分的主要技术经济指标汇总,列出主要技术经济指标
表,使审批者对项目作全貌了解。
第二部分 大数据平台项目发起背景和建设必要性
一、大数据平台项目建设背景
(一)国家或行业发展规划
(二)项目发起人以及发起缘由
(三)……
二、大数据平台项目建设必要性
(一)……
(二)……
(三)……
(四)……
三、大数据平台项目建设可行性
(一)经济可行性
(二)政策可行性
(三)技术可行性
(四)模式可行性
(五)组织和人力资源可行性
第三部分 大数据平台项目市场分析及前景预测
一、大数据平台项目市场规模调查
二、大数据平台项目市场竞争调查
三、大数据平台项目市场前景预测
四、产品方案和建设规模
五、产品销售收入预测
第四部分 建设条件与厂址选择
一、资源和原材料
二、建设地区的选择
三、厂址选择
第五部分 工厂技术方案
一、项目组成
二、生产技术方案
三、总平面布置和运输
四、土建工程
五、其他工程
第六部分 环境保护与劳动安全
一、建设地区环境现状
二、项目主要污染源和污染物
三、项目拟采用的环境保护标准
四、治理环境的方案
五、环境监测制度的建议
六、环境保护投资估算
七、环境影响评价结论
八、劳动保护与安全卫生
第七部分 企业组织和劳动定员
一、企业组织
二、劳动定员和人员培训
第八部分 项目实施进度安排
一、项目实施的各阶段
二、项目实施进度表
三、项目实施费用
第九部分 项目财务测算
一、项目总投资估算
二、资金筹措
三、投资使用计划
四、项目财务测算相关报表
(注:财务测算参考《建设项目经济评价方法与参数》,依照如下步骤进行:
1、基础数据与参数的确定、估算与分析
2、编制财务分析的辅助报表
3、编制财务分析的基本报表估算所有的数据进行汇总并编制财务分析的基本报表。
4、计算财务分析的各项指标,并进行财务分析从项目角度提出项目可行与否的结论。)
第十部分 财务效益、经济和社会效益评价
一、生产成本和销售收入估算
二、财务评价
三、国民经济评价
四、不确定性分析
五、社会效益和社会影响分析
第十一部分 可行性研究结论与建议
一、结论与建议
二、附件
三、附图
篇10:企业大数据平台:RedHadoop
RedHadoop 是一个持续优化的企业级Hadoop基础软件平台,让Hadoop大数据更简单!
RedHadoop大数据工场企业版是RedHadoop公司第一款产品,简称BWE(RedHadoop BigData Works Enterprise),是一款面向行业大数据应用需求,以Hadoop平台为核心,并对其进行了大量增强的基础平台产品,定位于解决高并发、低响应、 TB级以上数据的存储和计算的需求,具备高可靠、低成本、按需扩容基础特性,并提供自动化部署、监控和告警、安全。RedHadoop持续增强操作系统功 能并打造更多丰富的上层结构化数据库和非结构化数据的应用,加强数据分析和挖掘能力。提供数据仓库(DW),结构化数据库(DB),实时分析(RT),视 频分析(VD),搜索引擎(DS)垂直应用层软件,
RedHadoop正在构建一个更完善的Hadoop分布式操作系统。会针对各个垂直应用领域做出持续优化比如 Data Storage,Data HouseWare,DataBase,RealTime,Data Mining,Data Search 等等方向做深度定制。基于行业可以由 GIS 地图,生物信息,交通信息处理,智能交通和智能城市,海量交易的定量分析,医疗数据的分析,基因组测序等等方向做探索。显然Hadoop已经从一个平台已 经向一个分布式操作系统和分布式生态系统的方向发展了,RedHadoop提供一个平台可以更好的落地各类应用,让Hadoop成为一个茁壮并快捷的生态 系统平台。
项目主页:www.open-open.com/lib/view/home/1382318842573
文档为doc格式