On-Line Computing With a Hierarchy of Processors
Time shared computer systems have been based upon the two techniques of multiprogramming and swapping. Multiprogramming is based on restricting each program to a portion of the total computer memory. Swapping requires considerable overhead time for loading and unloading programs. To alleviate the size restriction due to multiprogramming, segmentation is employed, resulting in fact in vastly increased swapping. A new system architecture is proposed for time shared computing that alleviates the high overhead or program size restriction. It utilizes a hierarchy of processors, where each processor is assigned tasks on the basis of four factors: interactive requirements, frequency of use, execution time, and program length. In order to study the hierarchical approach to system architecture, the Moore School Problem Solving Facility (MSPSF) was built and used. The study of the manner of operation and the reactions of the users clarified and defined the Hierarchy of Processors system architecture. The Moore School Problem Solving Facility was implemented on second generation equipment, the IBM 7040, and therefore it is not possible to adequately compare the efficiency with third generation computers operating in a swapping mode. The conclusions of this dissertation center around the methodology of designing such a system, including the specification of facilities for each level of the hierarchy. Six major conclusions are given: (1) Three processors in the hierarchy have been necessary, but it is conceivable that more may be employed in other future situations. (2) Each of the processors in the hierarchy should be general purpose. (3) Program compatibility between the processors is necessary. (4) The assigning of tasks to the processors within the system should be optionally user directed or automatic. Similarly, if a task exceeds the resources of the processor to which it has been assigned, redirection should be possible either automatically or by the user. (5) A macro language is necessary between every pair of processors for effective communication. Such a language processor, IXSYS, has been constructed and its use is described in detail in the dissertation, demonstrating the need and utility. (6) In addition to the three hierarchical processors, a separate processor may be advantageously used for storage, retrieval and management of information in files. Such a processor should be directly accessible from each of the other processors.