Download Server/Loader User Manual

Transcript
The Server: Handling Standard I/O
The second role of the Server/Loader is to provide an I/O server for the root node in the
network. Host resources such as keyboard, disc and screen are made accessible to the root
node through calls to the host. The I/O requests from the root node are translated to a call
through the host link to the host machine. Once the loader module of the Server/Loader
has loaded the network, the server module is invoked to receive and process the I/O
requests sent from the root node.
General Description
Once the loader has booted the network, the server is invoked to handle the requests of the
client, that is, the requests of the root node in the network. (If the -s option is not used with
the server command, then the Server/Loader will terminate after the network is loaded, and
consequently will not be able to respond to the requests of the client). A client-server
dialogue is set up between the server utility and the root processor, with a communication
protocol handled by low level routines on both sides. The root processor initiates transfers
as the client, with the server receiving a translated call to perform an I/O operation.
On the HEPC9 I/O requests from processors other than the ROOT node can be handled,
provided that a duplex HEART connection exists between the host interface and the DSP.
A separate Windows thread will be started up for each processor that has a bi-directional
link with the host. The Server/Loader will automatically find such connections in the list of
HEART definitions and automatically start a server thread for each. )Use the optional
NOSERVE keyword at the end of a HEART definition if you don’t want that host – node
connection the be served by the Server.)
Server/Loader Run Time Libraries
The I/O resources available on the host machine are available to the root node in the DSP
network. Consequently there are 2 run-time libraries. The first library includes standard I/O
routines and as such is only available to the root node. The second library is a reduced
library and contains only routines necessary for handling network loading. Non-root nodes
should use this second library.
On the HEPC9, as long as a duplex HEART connection exists between the PC interface
and the DSP, you can link the application for that DSP with the ‘full’ library.
The Standard I/O Library
The standard I/O library is available in several versions. These libraries are located in the
lib directory. With the TI compiler tools there are a number of memory models that can
be used. Other than the small memory model, there is a -ml0, -ml1, -ml2 and -ml3
memory model used by the 'C6x TI compiler. In the small memory model both code and
data are expected to be within a 32-kbyte area. If this is not the case, you must use one of
the -ml options. The 'C4x TI compiler uses 4 different models, with 2 parameters: big and
small memory model, and register/stack parameter passing.
It is important to note that linking an application with compilation units that have been
19
HUNT ENGINEERING Server/Loader USER MANUAL