当前位置:文档之家› SWAN服务器系统白皮书教学教材

SWAN服务器系统白皮书教学教材

SWAN服务器系统白皮书(2012.07版)一、平台基本介绍 (3)基本工作原理 (3)系统构成 (3)二、系统配置 (4)1、Initsetting.ini (4)2、mcre.ini (4)3、Initsetting.ini (4)4、mcre.ini (5)5、menu.ini (5)6、modulesettings.ini (5)7、Timertrigger.ini、filetrigger.ini、scheduletrigger.ini (6)8、线程配置文件: (6)三、系统功能 (6)1、基本功能: (6)2、配置和辅助功能: (7)3、系统附带的调试功能,所有配置文件请遵守默认规则: (7)四、数据格式 (7)1、Diamond 35 通用地理标志描述格式 (7)2、131类格点格式,用于记录多层的格点数据 (8)3、自动站时序数据 (10)五、子系统介绍 (12)1、雷达拼图和外推子系统 (12)2、实时报警主子系统 (13)3、云图识别子系统 (13)3、雷电资料处理子系统 (13)5、清理子系统 (14)6、FTP分发子系统 (14)六、模块二次开发标准 (14)1.模块和相关文件的要求 (14)2.系统交换约定和临时文件规则 (16)3.模块的附属支持 (17)4.模块的运行流程 (17)5.线程组的分配原则和线程模块间通讯 (18)6.信息交换标准 (19)7.模块开发解说 (19)一、平台基本介绍SWAN服务器框架是一个程序调度平台,用来按照条件调度服务器模块运行,发送结果通知给对应的客户端,并维护服务器产品,记录模块运行情况。

服务器框架由基本系统,基本配置系统,外接扩展程序和外接配置系统组成。

基本系统负责整个系统的基本运行,基本配置系统用来配置基本系统的参数,外接扩展程序用来扩展基本系统的功能,外接配置系统用来配置其他扩展的部分程序。

基本工作原理基本系统是触发器和线程之间的控制,信息的发送和运行情况的记录的平台,基本系统启动后将运行所有的线程,然后将线程挂起,将触发器和线程相连接,当触发器满足条件时,向对应的线程发出唤醒信号,使线程运行一次,线程运行完后再次进入休眠,等待下一次信号。

线程运行过程中的信息被基本系统记录入运行日志。

系统构成系统由基本系统、基本系统配置、扩展功能库、扩展配置系统组成。

基本系统是由线程和触发器组成的调度系统。

基本配置系统由路径配置,运行参数配置和模块配置三部分组成,路径配置用来配置系统中的路径参数,根据配置文件的路径设置更改。

运行参数用来配置系统的运行设置,包括运行模式,系统备份模式,网络参数。

模块配置用来读取配置系统中的模块的相应的INI文件中的计算参数和附加设置。

系统的附加功能由外接扩展功能库来实现,目前的系统调试功能,工具菜单都是通过外接扩展功能库来实现。

对于模块引入的配置,通过外接配置系统来实现,外接扩展系统是外接扩展功能库的一部分,雷达配置就是一个外接配置模块,专门用来更改拼图模块和雷达特征量报警模块的参数。

系统目录由programpe、procpe、conf、log、doc、tmp六个目录。

Programpe 存放系统的主程序和公用动态库。

Procpe存放模块程序和外接功能库,其中系统功能的外界库存放在sys子目录下,相关图片资源存放在res子目录下。

Conf存放配置文件,其中系统的配置文件存放在sys子目录下,其他的存放在Conf 目录下,对于一些子参数配置,可以存放在子目录下,但是必须要有一个和模块名同名的配置文件存放在Conf下。

Log目录存放运行的日志文件。

Doc目录存放一些文档。

Tmp目录存放运行时的临时文件,如果清空tmp目录相当于把运行状态重置。

二、系统配置系统配置位于conf下的sys目录,主配置由5个文件组成:1、Initsetting.ini路径的配置定义,系统的输入和输出路径都在这里登记。

2、mcre.ini系统运行配置文件,基本系统的配置定义。

menu.ini 菜单配置文件,扩展菜单的定义文件。

modulesettings.ini 模块配置文件定义,需要手工配置的模块文件的对应配置会在这个文件的列表里。

timertrigger.ini 时钟触发器配置,用来定义由定时控制的线程的对应时钟触发器条目。

Scheduletrigger.ini计划任务触发器配置文件,里面定义了计划任务的规则字串。

Filetrigger.ini定义了文件监视触发器的规则条目。

一些线程命名的配置文件,记录每个线程的配置信息。

其他未说明文件请予以保留,属于未完全规划完的功能所留下的文件。

3、Initsetting.ini输入输出配置,此文件包含两个段,输入路径和产品路径,输入路径为绝对路径,产品路径为相对路径,系统的路径配置会随着输入路径数目变化自动适应。

输入路径配置格式:路径名=绝对路径。

产品路径配置格式:路径名=相对路径。

以上路径名为全局唯一。

4、mcre.ini框架的主控配置,包括路径设置,系统设置,网络设置和线程设置。

路径设置目前只包含产品根路径。

系统设置包括产品压缩,运行模式和产品备份三个主要参数。

网络设置主要包含网络发送的参数,包括发送端口,网络发布模式,对应的客户IP地址。

线程设置包括了系统运行的线程设置,记录的是线程配置文件。

格式:线程名=线程配置文件。

5、menu.ini扩展菜单配置,服务器框架的大多数功能都是通过扩展菜单配置来实现的,扩展菜单配置格式为:菜单显示名=父菜单ID|图标|处理的动态库|处理的函数兼ID|菜单风格。

一共五个段,用”|“分割。

当该菜单不存在其中一个段的变量时,用NULL表示。

父菜单ID为此菜单建立在哪个菜单上,如果为NULL,则为顶层菜单。

其中图标为位于procpe目录下的res中的png文件名。

处理的动态库位于procpe下sys目录中的动态库。

处理的函数为动态库中的导出函数,建立菜单的时候同时会用这个函数名作为菜单的ID,这样其他菜单可以建立在这个菜单上。

菜单风格为菜单和工具栏的风格,一共五个关键词:NULL、TOOLBARICON、TOOLBARSEP、MENU、MENUSEP,分别为空,即普通菜单、在工具栏放置图标、,普通工具栏分割条,父菜单,即其他菜单可以建立在这个菜单下、菜单栏分割条。

6、modulesettings.ini配置模块配置对话框中可用的条目,默认基本系统中模块配置是没有可选的配置项,只有在modulesettings.ini中加入条目的时候,才会在模块配置中出现条目。

配置的格式为:显示名=配置文件名。

7、Timertrigger.ini、filetrigger.ini、scheduletrigger.ini时钟触发器的配置文件,格式为:每一行一个触发器的配置。

时钟运行以秒为单位,到符合触发器的条件时,便像配置中的线程发送一次运行消息。

定时器配置格式:触发器名=时钟间隔|激活的线程名|激活的方式文件监视配置格式:触发器名=监视目录|激活的线程名|激活的方式|延时时间计划任务触发器配置格式:触发器名=时间规则|激活的线程名|激活的方式激活线程名可以是多个,使用逗号“,“来分割,激活方式为S或者A,S为设置运行一次,A为在原来的基础上增加一次。

原则上以使用S为主,增加方式在某些运行时间较长的时候会造成连续运行,原则上运行的时间间隔按照系统运行性能来配置,有多个激活线程时,激活方式也要有多个,一个线程名对应一个激活方式,均使用”,“来分割。

8、线程配置文件:线程配置文件用来配置线程中的程序,格式为每一行一个程序配置,不需要总体的数目项。

配置格式为:程序名=激活线程|激活方式|最大时限,其中激活线程和激活方式与触发器相同,不存在对应激活线程是用NA填充。

最大时限为程序运行的最大时间限制,超过该时间程序被强行中止,并记录超时,时间单位为秒。

三、系统功能1、基本功能:基本功能主要为调度功能,包含运行、停止和退出,点击运行后,系统就按照触发器条件唤醒线程进行计算处理。

2、配置和辅助功能:配置功能由外挂功能库市县,具体情形所带的模块不同。

一般带有路径配置、运行配置和模块配置。

,附加功能包含清理、配置保存、配置加载。

3、系统附带的调试功能,所有配置文件请遵守默认规则:开发版本具有调试菜单,位于工具->调试菜单下运行选中程序:运行左边列表栏中选中的程序。

当前程序配置:打开左边列表中选中程序的配置文件当前线程配置:打开当前选中线程的配置文件定时器配置:打开时钟触发器配置文件。

文件监视配置:打开文件监视触发器配置文件任务表配置:打开计划任务触发器配置文件INI条目配置:编辑模块配置的INI文件系统主配置:编辑mcre.ini主配置文件,可以在其中打开或者关闭某个线程资料路径配置:编辑系统的输入输出路径初始化配置外挂菜单配置:编辑系统的外挂功能菜单系统注册配置:组件系统的安装信息添加空白线程:添加一个空白线程的配置文件并且载入四、数据格式SWAN中的数据格式主要是3类:35类格式、131类格式和自动站时序文件。

请注意版本更新时的格式更新变化1、Diamond 35 通用地理标志描述格式35类格式普遍应用在SWAN中,用来表述报警,用户自定义地图等地理性质的数据,35类数据格式存储数据的位置和属性,具体的显示方式由配置和显示引擎来决定,35类数据读取必须采用解释行的行读取,首先判断行的标记,然后才可以读取后续数据。

35类数据是文本文件,文件后缀TXT:Diamond 35 文字描述TAB(类型描述符)文件生成时间记录条数无效记录表达值记录字段数字段1名字段2名字段3名 .......记录类型记录坐标点数经度纬度高度经度纬度高度经度纬度高度.....字段1 字段2 字段3 .......其中记录类型分为:POINT(点),MULTIPOINT(多个点),PLINE(线条),POLYGON(多边形)TAB下一行必须是表格定义,中间不能加空行TAB和TABALM合并处理,不再区分报警,报警使用文件名判断2、131类格点格式,用于记录多层的格点数据131格式经过数次修订,目前大多数数据仍未1.0格式,但是显示引擎已经能够解析2.0格式的数据,具体应用可以根据情况使用相应版本的格式,主要是从后面的Reserved中修改为对应版本的大小。

保证文件头格式总长度1024个字节。

说明:(老版本文件头长256字节,蓝色字段在老版本中不存在,只在新版本中存在。

新旧版本的判断在Flag[8]字段,如果内容是“SWAN”则是新版本,否则为老版本),站点设置一般供雷达用,也可用于其他,只有20个空位char ZonName[12]; // diamond 131 12个字节char DataName[38];//数据说明(例如 2008年5月19日雷达三维拼图)38个字节char Flag[8]; // 文件标志,"swan"char Version[8]; // 数据版本号,"1.0" 目前为2.0unsigned short int year;//2008 两个字节unsigned short int month;//05 两个字节unsigned short int day;//19 两个字节unsigned short int hour;//14 两个字节unsigned short int minute;//31 两个字节unsigned short int interval ; //两个字节unsigned short int XNumGrids;//1300 两个字节unsigned short int YNumGrids;//800 两个字节unsigned short int ZNumGrids;//20 两个字节int RadarCount; //拼图雷达数四个字节float StartLon; //网格开始经度(左上角)四个字节float StartLat; //网格开始纬度(左上角)四个字节float CenterLon;//网格中心经度四个字节float CenterLat;//网格中心纬度四个字节float XReso; //经度方向分辨率四个字节float YReso; //纬度方向分辨率四个字节float ZhighGrids[40];//垂直方向的高度(单位km)数目根据ZnumGrids 而得(最大40层) 160个字节。

相关主题