Programming Considerations

The LayGO Hardware Interface implements the LayGO API. There are no added functions or changes to the semantics of existing API functions. This means that applications which access only the X.21 bis physical layer can use the Hardware Interface without any change to the code. Applications which use the LayGO Device Library should also be able to use the Hardware Interface without modification, provided that the devices used are X.21 bis only devices. The only change required should be in the LayGO libraries the application is linked with. The section on Building Applications gives complete details.

Using the Hardware Interface, the application is trading background processing in the protocol stack for reduced latency in accessing the communications hardware. One benefit of background processing is that a large amount of data can be buffered for the application inside the protocol stack. Using the hardware interface, buffering can be limited by the amount of buffer space available inside the driver. The application is therefore responsible for insuring that it can read data at virtually the rate it is being received. This should not pose a problem for applications which are already trying to operate within real-time constraints. However, some application architectures may not be suitable for use with the Hardware Interface.