This paper gives an overview of the development of a distributed object-oriented kernel implemented in Modula-2. The underlying concepts of this kernel are first described. Its main feature consists in using task migr...
详细信息
This paper gives an overview of the development of a distributed object-oriented kernel implemented in Modula-2. The underlying concepts of this kernel are first described. Its main feature consists in using task migration in order to achieve communication between distant nodes of the local network. Then, the implementation in Modula-2 is outlined. We emphasise the use of modules for implementing kernel objects and types. We conclude by evaluating the Modula-2 language through this experience.
Despite the availability of parallel computing from the last two decades, there is little use of these systems in production-level environments. One of the factors most commonly blamed for the slow transition to paral...
详细信息
Despite the availability of parallel computing from the last two decades, there is little use of these systems in production-level environments. One of the factors most commonly blamed for the slow transition to parallelism is the lack of software support. While in serial programming the performance depends basically on the algorithm designed by the user, in parallel programming there are many machine-dependent aspects that have a significant impact on the final performance. Therefore, the user must learn a great deal about machine-dependent aspects like process grain determination, task allocation, message routing, etc. The aim of this project is intended in the design and implementation of a user friendly environment for parallel programming in a Transputer-based system. The environment will free the user of all machine-dependent aspects by means of two system services running on a host computer and a distributed kernel running on the target computer. On one hand, the two system services consist of one tool that is responsible for obtaining clusters of program tasks, and another tool that is responsible for mapping those clusters onto physical processors. On the other hand, the environment has a distributed kernel running on the target machine that hides the physical architecture. It executes user tasks with location transparency, offering a simple and efficient interface for interprocess communication, and monitoring the execution of the user programme. As a consequence, user productivity will be increased because he does not need to be aware of those aspects that are carried out automatically by the environment.
暂无评论