WEB开发网
开发学院手机开发Symbian 开发 Symbian OS sockets API 阅读

Symbian OS sockets API

 2010-07-22 01:42:00 来源:WEB开发网   
核心提示:要说明的几点:一个协议模块可以包含多种协议实现,比如,Symbian OS sockets API(3),在TCPIP.PRT模块中,就包含了UDP、TCP、ICMP、IP以及DNS协议的实现,一个标准的应用程序可能会在不同时间的时候,拥有若干个RSocket的实例在同时进行操作,单个协议的实现可以通过位于system

要说明的几点:一个协议模块可以包含多种协议实现。比如,在TCPIP.PRT模块中,就包含了UDP、TCP、ICMP、IP以及DNS协议的实现。单个协议的实现可以通过位于systemdata.的.esk文件进行映射。而每个协议模块都有一个.esk文件来指定该模块所包含的协议,以及每个协议在插件模块中所处的索引位置。

传输的独立性

上文已经提到,socket服务组件的插件架构特性可以使得新的协议模块在任何时间被安装到一部Symbian系统的手机当中。

这个架构可以使得socket服务组件来实现独立传输层的概念。借助于提供一个通用的核心socket API接口,这种架构就可以处理所有一般性数据传输系统的需求,并且通过添加特定协议的协议模块,socket服务组件就可以被广大应用程序开发者来给自己的产品增添通信功能,从而省下了大量的开发通信子系统的时间。

随着时间的发展,新的协议逐步登上历史舞台,协议模块都将会为了适应socket接口而被重写。而应用程序开发者,他们只需要增添协议新近引入的属性或者动作,来支持新的协议即可,Socket服务组件便会使用新的协议,借助操作系统底层的通信组件,来完成通信机制,而并不会影响到上层应用程序开发者的接口和开发。

总而言之,socket服务组件可以让应用程序开发者在仅仅维护一套核心API接口的情况下,可以借助操作系统的通信子系统来使用多个协议,从而介绍了自己的开发工作量以及开发时间。

“客户端-服务器”接口

Symbian系统的一个特点就是它具有一个体积很小的微内核(micro-kernel),因此我们只能把必须和硬件设备交互以及进行主机控制的核心服务放在内核端运行。而另外许许多多的系统服务只能以用户模式的服务器线程的形式运行,通常被称为‘系统服务器’。

socket服务组件就是这些‘系统服务器’中的一个,第三方应用程序就借助公开的客户端API,通过该组件完成通信功能。其中最重要的四个类为:

RSocketServer: 这个类是用来建立和socket服务组件之间的连接以及获取必要的资源的。在客户端-服务器架构的定义中,该类表示了应用程序与socket服务组件之间建立连接的会话。所有的其他客户端接口类,在使用中都需要一个被打开的本类的实例来进行操作。

RSocket: 这个类表示了一个socket连接。一个标准的应用程序可能会在不同时间的时候,拥有若干个RSocket的实例在同时进行操作。

RHostResolver: 这个类用来提供主机名称解析服务的接口。

上一页  1 2 3 4 5 6 7 8  下一页

Tags:Symbian OS sockets

编辑录入:coldstar [复制链接] [打 印]
赞助商链接