The Serial Communications Server uses the Symbian OS client/server framework. Clients use
The Serial Communications Server provides a publishedAll API to access the serial ports of the device. The Serial Communications Server provides functionality such as timeouts and port sharing for all Serial Protocol Modules. The Serial Protocol Modules provide the specific protocol and communicate with the serial device driver. To communicate with the serial device driver, the Serial Protocol Modules use publishedPartner APIs such as
Each serial port has a limited availability when multiple clients attempt to use the port. The Serial Communications Server provides some functionality to mediate between competing clients. This mediation is provided by the
The framework supplied by the Serial Communications Server for Serial Protocol Modules has a narrower set of capabilities compared to the Socket Server for protocol developers. This design decision was taken because prior to Symbian OS 8.0 the Serial Communications Server was originally expected to run for the lifetime of the device while the Socket Server was not. To save resources, for example memory, the Serial Communications Server was designed to load and unload modules as required.
Since the introduction of RootServer in Symbian OS 8.0, the Socket Server was changed to run for the lifetime of the device.
In Symbian OS 9.5, the Serial Communications Server was converted into a multi-threaded server. The Serial Protocol Modules can be run in separate threads. This change did not change the behaviour of the Serial Communications Server except for three changes:
A serial protocol module which blocks does not stop other Serial Protocol Modules from running
A serial protocol module can run faster than other modules by changing the configured thread priority
A serial protocol module can use the Serial Communications Server API and request services of another serial protocol module
The Serial Communications Server uses the Symbian platform client/server
+framework. Clients use
The Serial Communications Server provides a publishedAll API to access
+the serial ports of the device. The Serial Communications Server provides
+functionality such as timeouts and port sharing for all Serial Protocol Modules.
+The Serial Protocol Modules provide the specific protocol and communicate
+with the serial device driver. To communicate with the serial device driver,
+the Serial Protocol Modules use publishedPartner APIs such as
Each serial port has a limited availability when multiple clients attempt
+to use the port. The Serial Communications Server provides some functionality
+to mediate between competing clients. This mediation is provided by the
The framework supplied +by the Serial Communications Server for Serial Protocol Modules has a narrower +set of capabilities compared to the Socket Server for protocol developers.
In Symbian platform, +the Serial Communications Server was converted into a multi-threaded server. +The Serial Protocol Modules can be run in separate threads. This change did +not change the behaviour of the Serial Communications Server except for three +changes:
A serial protocol module +which blocks does not stop other Serial Protocol Modules from running
A serial protocol module +can run faster than other modules by changing the configured thread priority
A serial protocol module +can use the Serial Communications Server API and request services of another +serial protocol module