一种客户/服务器结构 客户 客户应用程序 客户应用程序 客户应用程序 抽象终端抽象终端 抽象终端 服务器 资源管理器 设备驱动程序 设备 窗口2 鼠标 窗口1 键盘 窗口n 图7-1客户/服务器结构 人机交互技术编写组 6
人机交互技术编写组 6 一种客户/服务器结构 客户 客户应用程序 客户应用程序 ﹒﹒﹒ 客户应用程序 抽象终端 抽象终端 ﹒﹒﹒ 抽象终端 资源管理器 设备驱动程序 服务器 设备 鼠标 窗口1 窗口2 窗口n 键盘 图7-1 客户/服务器结构
服务器端运行的三部分程序 ◆资源管理器 是整个窗口系统的核心,负责多任务的管理,并通 过设备驱动程序来管理外部设备。 ◆设备驱动程序 负责外部设备的驱动,接受输入设备的输入,并将 输入数据转换成统一的格式,通过设备驱动程序实 现设备的独立性。 ◆抽象终端 ■负责和客户应用程序的接口,对每个应用程序由窗 口管理程序为其分配一个抽象终端。 人机交互技术编写组
人机交互技术编写组 7 服务器端运行的三部分程序 资源管理器 ◼ 是整个窗口系统的核心,负责多任务的管理,并通 过设备驱动程序来管理外部设备 。 设备驱动程序 ◼ 负责外部设备的驱动,接受输入设备的输入,并将 输入数据转换成统一的格式,通过设备驱动程序实 现设备的独立性 。 抽象终端 ◼ 负责和客户应用程序的接口,对每个应用程序由窗 口管理程序为其分配一个抽象终端
工作方式 ◆当外部设备产生一个输入请求,如鼠标单击某 个窗口内的一点,资源管理程序从设备驱动 程序获得鼠标数据,产生鼠标驱动事件,并将 该事件分发给与该窗口相对应的抽象终端,与 抽象终端相对应的应用程序接受事件并进行相 应的处理。 ◆实现时,客户程序和服务器程序可以在一台机 器上,也可以分布在不同的机器上。 人机交互技术编写组
人机交互技术编写组 8 工作方式 当外部设备产生一个输入请求,如鼠标单击某 一个窗口内的一点,资源管理程序从设备驱动 程序获得鼠标数据,产生鼠标驱动事件,并将 该事件分发给与该窗口相对应的抽象终端,与 抽象终端相对应的应用程序接受事件并进行相 应的处理。 实现时,客户程序和服务器程序可以在一台机 器上,也可以分布在不同的机器上
7.1.2设计交互应用程序 ◆在客户/服务器结构中,交互系统的应用程序 通过调用服务器端一个独立的管理程序来管理 多任务和提供设备的独立性,相当于客户-服务 器中结构中的客户 ◆交互应用一般来讲是由用户驱动的,即用户从 外部设备上输入数据,应用程序的动作由用户 输入来决定,应用程序可以采用下面的两种控 制流程实现用户的交互。 人机交互技术编写组
人机交互技术编写组 9 7.1.2设计交互应用程序 在客户/服务器结构中,交互系统的应用程序 通过调用服务器端一个独立的管理程序来管理 多任务和提供设备的独立性,相当于客户-服务 器中结构中的客户。 交互应用一般来讲是由用户驱动的,即用户从 外部设备上输入数据,应用程序的动作由用户 输入来决定,应用程序可以采用下面的两种控 制流程实现用户的交互
1.应用程序内部事件处理循环 客户应用程序 开始 读输入 服务器 设备 过程输入 结束 图7-2事件处理循环 人机交互技术编写组 10
人机交互技术编写组 10 1.应用程序内部事件处理循环 设备 客户应用程序 开始 读输入 过程输入 退出? 结束 服务器 图7-2事件处理循环