以 PDF 格式下载本书 (97 KB)
ChorusOS 4.0.1 Simulator ArchitectureThe ChorusOS 4.0.1 Simulator for the Solaris Operating Environment (SPARC Platform Edition) was designed to imitate the behavior of the ChorusOS operating system embedded on a physical target. In particular it:
The simulator is restricted to the flat memory model and supervisor actors. Each simulator is a UNIX process running independently of other simulators, and up to 254 simulators can run and interact simultaneously on the same host or distributed over several hosts. The simulator uses Solaris libraries in order to:
Boot MechanismThe simulator system image is booted with a utility called loader which:
Figure 1-1 illustrates the virtual address space of the UNIX process after loading the system image. Figure 1-1 Loading Mechanism
Remote Inter-Process CommunicationRemote IPC is based on Solaris UDP sockets which are used for sending, reading, and listening to IPC messages. Each simulator uses a single UDP socket to communicate with other simulators. The port number of this socket is specified in the site_number.conf file. Broadcasting is achieved by sending IPC messages to each simulator in this file. Figure 1-2 illustrates the remote IPC mechanism. Figure 1-2 Remote IPC Mechanism
Network ArchitectureEach simulator on a Solaris host accesses remote machines in the same way that a physical target accesses the outside world: through a network interface. As the network is not directly accessible through a dedicated Ethernet device, a Solaris Ethernet pseudo-driver simulates a specific sub-network, grouping all the simulators running on the same host. In particular, the Ethernet pseudo-driver allows each simulator to:
The pseudo-driver also supports any additional Ethernet-based functionality. Each simulator interfaces with the Solaris Ethernet pseudo-driver sub-network. All simulator-specific network requests on this sub-network are routed by this driver. Each time a request concerns a host outside this sub-network, the request is forwarded to the host Solaris IP stack to be processed. Figure 1-3 illustrates the software architecture simulating the network. The Ethernet pseudo-driver manages communication between simulators located on the same host and between simulators and the host. Figure 1-3 Software Architecture
This mechanism allows simulators to be accessed both from their host and also from any host on the network, after configuring the IP routing information. Figure 1-4 illustrates the network data flow between simulators and the Ethernet network, with the Solaris IP stack relaying messages between networks. Figure 1-4 Network Data Flow
|
|