网络软件设计10——有状态设计讲述.ppt

  1. 1、本文档共38页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
网络软件设计10——有状态设计讲述

需求 功能控制 * 基于状态机的主控设计 主程序架构 * 事件驱动基本架构 * 状态设计 * 序号 名称 说明 界面 宏定义 1 空闲状态 系统进入的初始状态,输入动作被取消时的状态; 欢迎页面 ST_IDLE 2 设置状态 用户按设置键,进入设置状态,具有多个子状态; 设置页面 ST_SET 3 编辑状态 用户按编辑键,进入编辑状态; 编辑页面 ST_EDIT 4 等待回显状态 向上位机发送数据后,等待上位机回显信息的状态。 等待页面 ST_WAIT 5 回显状态 得到上位机数据,进行显示。有多个子状态; 回显页面 ST_SYSINFO 状态转移图 * 状态转移表 * 事件 动作 状态 功能键或RFID扫描 上位机数据 数字编辑键 确认(OK键) 取消(返回键) 设置键 上下键 左右键 WLAN驱动 文字 菜单 图片 有编辑 无编辑 有编辑 无编辑 上 下 左 右 AP列表 空闲 组包上传;显示等待回显页面 计算自动换行,滚动条,显示一屏静态回显页面 计算滚动条,显示一屏交互回显页面 (目前在picServer中接收图片,收完后会给命令解析发送命令,显示这个图片)。显示图片 记录键值,显示编辑页面 (不可能出现) 组包上传;显示等待页面 (不可能出现) 组包上传;显示等待页面 显示设置首页页面 组包上传;显示等待页面 组包上传;显示等待页面 解释为空格,显示编辑页面 记录列表 等待 回显/静态回显 回显/交互回显 回显/静态回显 编辑   等待   等待 设置/首页 等待 等待 编辑   设置 首页 组包上传;显示等待回显页面 计算自动换行,滚动条,显示一屏静态回显页面 计算滚动条,显示一屏交互回显页面 (目前在picServer中)。显示图片 修改焦点号,事件改为确认,再次进入状态机 显示相应设置子页面或确认相应设置并显示编辑页面。如果是确认,在滚动区提示设置成功的信息。 显示相应设置子页面或确认相应设置并显示空闲页面。如果是确认,在滚动区提示设置成功的信息。 (取消图标上的确认键应解释为取消)显示编辑页面 显示空闲页面   “移动”焦点图标 记录列表 主程序 server.c——事件引擎 fsm.c——状态机核心 * 半期考试 普通班写小论文,教改班完成课程总结和心得 小论文(半期考试成绩评定),主题从下列中选一个或自拟 讨论事件驱动机制与通信程序设计 讨论有限状态机与协议设计和实现 讨论通信程序设计的基本结构 讨论异步选择机制与同步选择机制 字数要求1000~3000 按照科技论文的一般格式:有题目、摘要、关键词,正文,参考文献 表格和图要有标号和名称。 * * * * * * * * * * * 引导大家看图中除了标准转换以外,特殊的一些现象 * * * * * * * * * * * * * * 段景山 网络软件设计 服务器的有状态与无状态 有状态协议设计 制作 主讲 段景山 * 状态 由服务器维护的,关于服务器与客户机正在进行的交互 的信息称为状态 “信息”不是指服务器和客户机交互的数据,而是关于交互过程本身 有状态服务器 保存状态信息的服务器程序 例:认证服务器需要记录与客户交互的状态--正在认证(等待用户名、等待口令)、已认证等 无状态服务器 不保存状态信息的服务器程序 例:聊天应用 有状态与无状态服务器 * 有状态服务 为什么要求设计有状态服务器 任务需求 可以减少报文开销(利用报文间的相关性) 有状态服务器面临的问题 增加实现的复杂程度 需要复杂的协议控制 系统在多个状态下转换时,可能因错误事件而导致:进入非期望状态、死锁、崩溃 可以设计有限状态机来指导软件实现 * 无状态是一个协议问题 为什么要设计无状态服务 任务需求 服务实现简单,可靠性强 一个报文的意义不依赖先前的报文--状态的依赖性 究竟网络应用软件是有状态的还是无状态的 从系统的角度,系统是“无状态”的 系统能不断为各次通信服务 从功能实现角度,复杂的通信应采用有状态方法设计 * 有限状态机 一种直观、全局、准确的协议描述方法 状态 转换 事件 动作 缺点时序性不强 * 有限状态机的基本结构 状态: 实体有有限个状态 每一时刻,实体只处于其中一个状态 事件: 事件引起实体产生动作,如收到PDU、定时器到时等 事件按发生的顺序排在事件队列中,等待处理 事件可能有附加条件 动作: 处理队列中的一个事件,转移到下一状态 不同状态下,对同一事件可能有不同的处理方法 最简动作:忽略事件,保持状态(图中可省略不画) FSM 事件 状态1 状态2 事件e1 / 动作a1 事件e2 / 动作a2 事件e3 / 动作a3 * 例 以停等协议为例,讲解利用有限状态机实现有状态设计 发送方发送完一个数据包后,需得到接收方的确认

文档评论(0)

shuwkb + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档