syslog详细设计说明书Word文件下载.docx
- 文档编号:19102633
- 上传时间:2023-01-03
- 格式:DOCX
- 页数:10
- 大小:95.76KB
syslog详细设计说明书Word文件下载.docx
《syslog详细设计说明书Word文件下载.docx》由会员分享,可在线阅读,更多相关《syslog详细设计说明书Word文件下载.docx(10页珍藏版)》请在冰豆网上搜索。
yyyy-mm-dd
核准:
签发:
文档版本:
版权所有XX
文件修改记录
修改日期
版本
修改页码、章节、条款
修改描述
作者
2012-6-25
创建
侯潇
目录
1目的6
2代码框架描述6
2.1功能流程6
2.2源文件说明8
2.3设计说明8
3数据结构8
3.1数据结构定义8
3.2公共头文件定义8
4子模块(实体)1详细设计说明9
4.1数据结构9
4.2处理流程详细说明10
4.3编码设计10
4.3.1IntInitqueue(intkey)11
【功能】11
4.3.2IntInitfile(char*filename)11
4.3.3Intsyslog(intmode,char*fun,intline,char*text,...)11
4.3.4Intmsgrece(intqueue_id,intfile_id)12
【功能】12
5附录子系统定义表12
关键词:
摘要:
缩略语说明:
缩略语
英文全名
中文解释
参考资料:
华清远见-----《嵌入式linux应用程序开发》-----人民邮电出版社2009.4
1目的
本文档规定了syslog项目各模块的详细设计,函数设计,数据结构。
用于在linux下进行syslog的开发标准。
2代码框架描述
2.1功能流程
主框架示意图
Syslog主进程
文件操作流程图syslog()接口流程
2.2源文件说明
如下表格式对系统包含的源代码文件进行大致说明:
源文件名称
文件描述
功能模块
syslog.h
主功能模块头文件,包含数据结构声明,函数声明
syslog.c
主功能模块实现文件,包含数据结构初始化和函数定义
主模块
test.c
测试模块
注:
“目录结构”和“源文件说明”表格在详细设计后期和编码阶段都可能被修改。
2.3设计说明
该项目设计syslog模块。
本模块是在linux下为其他模块提供syslog()接口,该接口使用消息队列机制将其他模块日志信息传递到syslog进程中,在syslog进程中完成消息解析,以及利用文件I/O操作完成对消息的存储。
3数据结构
3.1数据结构定义
#defineQUE_PATHNAME"
."
//消息队列路径
#defineMSG_SIZE512//消息大小
#defineLOGFILE"
sys.log"
//日志文件名
#defineTEXT_SIZE5//
#defineMAXSIZE1024*1024//文件占用最大内存
#defineLOG_MODE_HTTP0
#defineLOG_MODE_GPS1
#defineLOG_MODE_SOCKET2
#defineLOG_MODE_SYS3
#defineFILE_NAME_SIZE30
3.2公共头文件定义
Syslog.h(路径:
home/syslog/syslog.h)
4子模块(实体)1详细设计说明
4.1数据结构
具体定义模块1相关的数据结构,并加以解释说明。
Structmsgqueue{//消息队列结构体
uint8_t*MODE_name;
//出错的
Char*func_name,;
uint32_tline;
Chartext[MSG_SIZE];
//消息的正文
}
4.2处理流程详细说明
(1)发送消息
//创建消息队列
读取标准输入
封装消息
发送消息
//循环(输入,封装,发送)
//关闭队列
关闭程序
这里描述实现这个子模块功能有几个步骤
(2)接收消息
创建消息队列
打开文件
读取消息队列
解析消息
写入文件
打印到终端
循环(读取,解析,写入,打印)
关闭文件
关闭消息队列
4.3编码设计
主要函数列表格式如下:
Initqueue()
初始化队列
Initfile()
初始化文件操作
Msgrece()
获取消息
Syslog()
外部调用接口函数,用于发送消息给syslog主进程
Main()
测试用主函数
4.3.1IntInitqueue(intkey)
【功能】
【参数】
Intkey;
//用于创建消息队列
【返回值】
Int型,返回消息队列描述符,返回-1则出错
【算法】
【使用说明】
包含在syslog.h
4.3.2IntInitfile(char*filename)
Char*filename;
//用于传递文件名
Int型,返回文件操作文件描述符,返回-1则出错
【使用说明】
4.3.3Intsyslog(intmode,char*fun,intline,char*text,...)
提供外部调用,外部程序可以调用此函数想syslog主进程发送消息。
intmode,调用模块标示
intfun,调用函数名
intline,函数出错行数
char*text,出错信息
...可选参数
Int型,发送成功完成返回0,否则返回-1则出错
4.3.4Intmsgrece(intqueue_id,intfile_id)
intqueue_id//传递消息队列描述符
intfile_id//传递文件描述符
4.3.5Intmsgsend(intqueue_id,intfile_id)
5附录子系统定义表
填表说明:
表格项
填写说明
Name
syslog
Class
进程间通信(消息队列)
Version
Initroutine
Initqueue;
initfile
Dependance
无
Sequence
先启动主函数(test.c中的main函数)
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- syslog 详细 设计 说明书