There are two distinct types of MIMD (Multiple Instruction, Multiple Data) computers: the shared memory machine, e.g. Butterfly, and the distributed memory machine, e.g. Hypercubes, Transputer arrays. Typically these utilize different programming models: the shared memory machine has monitors, semaphores and fetch-and-add; whereas the distributed memory machine uses message passing. Moreover there are two popular types of operating systems: a multi-tasking, asynchronous operating system and a crystalline, loosely synchronous operating system.
In this paper I firstly describe the Butterfly, Hypercube and Transputer array MIMD computers, and review monitors, semaphores, fetch-and-add and message passing; then I explain the two types of operating systems and give examples of how they are implemented on these MIMD computers. Next I discuss the advantages and disadvantages of shared memory machines with monitors, semaphores and fetch-and-add, compared to distributed memory machines using message passing, answering questions such as “is one model ‘easier’ to program than the other?” and “which is ‘more efficient‘?”. One may think that a shared memory machine with monitors, semaphores and fetch-and-add is simpler to program and runs faster than a distributed memory machine using message passing but we shall see that this is not necessarily the case. Finally I briefly discuss which type of operating system to use and on which type of computer. This of course depends on the algorithm one wishes to compute. 相似文献
This paper describes a generalized interface handler implemented on a PC-based SCADA system which can handle up to a total of 512 digital points and 512 analog points. It is aimed to provide a standard structure for SCADA application program to be independent from the interfacing hardware. Using the same data structure, a multi-tasking operation has also been implemented under the single-tasking operating system MS/DOS. The prototype SCADA system employing four different types of hardware interface is demonstrated. 相似文献
When multitasking in a demanding environment, operators strategically switch between tasks. Two influences on this multi-task management behaviour are the perceived rewards gained from performing a task, and the perceived effort a task requires in order to be completed. Proportionally, reward over effort is ‘rate of return’, expressing that either reward or effort changing over time spent performing a task, may influence multitasking behaviour. In the current experiment, two of four tasks within a multitasking paradigm provided constant or diminishing reward and required either constant or increasing effort in their performance. For on-going tasks, decreasing reward and increasing effort required both increased the probability of a task switch. The theory contributed here supports the study of multi-task management, and task switching model development. We discuss each in the context of safety-critical applications. 相似文献
Robots that interact with humans in household environments are required to handle multiple real-time tasks simultaneously, such as carrying objects, collision avoidance and conversation with human. This article presents a design framework for the control and recognition processes to meet these requirements taking into account stochastic human behaviour. The proposed design method first introduces a Petri net for synchronisation of multiple tasks. The Petri net formulation is converted to Markov decision processes and processed in an optimal control framework. Three tasks (safety confirmation, object conveyance and conversation) interact and are expressed by the Petri net. Using the proposed framework, tasks that normally tend to be designed by integrating many if–then rules can be designed in a systematic manner in a state estimation and optimisation framework from the viewpoint of the shortest time optimal control. The proposed arbitration method was verified by simulations and experiments using RI-MAN, which was developed for interactive tasks with humans. 相似文献