This document, the first part of a two-part article, discusses the fundamental concepts and hardware architecture of time-shared computer systems. Time-sharing is defined as the simultaneous use of a single computer system by multiple independent users, aiming to provide rapid and appropriate responses to individual requests. The article emphasizes that general-purpose time-sharing encompasses special-purpose, real-time, and on-line systems.
A key concept introduced is "graceful creation," or "bootstrapping," where new user-created procedures instantly become available to the entire user community, allowing the system to expand in an open-ended manner. The author advocates for a system philosophy that minimizes "built-in" restrictions, instead making functions optionally available through libraries, and highlights design criteria such as flexibility, modularity, simple intercommunication, and open-endedness.
The core components of a time-sharing system are identified as the operating system software (managing resources, common procedures, and logical abilities), the hardware (processors, memories, peripherals, controls, switches), and the user's apparent system (terminals, files, processes). Time-sharing criteria include enabling shared use, providing user independence (through resource allocation and file management), and offering "instantaneous" service, which means rapid response for human users and keeping pace with processes for mechanical applications. General-purpose systems further require open-endedness for continuous system evolution.
The document then delves into a detailed examination of computer hardware. It describes the general structure of computers and various types of components:
The article also covers multi-programming, memory allocation, program intercommunication, and the role of hardware in facilitating general-purpose time-sharing. This includes special operating modes (privileged/executive vs. user mode), time measurement hardware for scheduling, inter-processor interlocks for data integrity, and user status preservation hardware for efficient job switching. Various memory allocation methods are discussed, from simple relocation registers to complex page and segment mapping, designed to provide users with a large, protected virtual memory space and enable "pure procedures."
Finally, the document enumerates the proposed advantages of time-sharing, such as better service, reduced costs, new problem-solving capabilities, symbiotic human-computer interaction, increased user community collaboration, flexible terminal locations, and economic benefits from shared resources and centralized overhead functions. The second part of the article will provide a bibliography.
Site structure and layout ©2025 Majenko Technologies