SYSTEM SOFTWARE AND SOFTWARE SYSTEMS: Concepts and Methodology is intended to offer a systematic treatment of the theory and practice of designing and implementing system software.The two volumes systematically develop and apply the systems methodology for software development. For that the concept of a system is analysed and various types of systems used in computer science are systematized into a concept of an ad hoc system that is suitable as a mechanism for software development. The kernel of this methodology consists of a systematic approach for ad hoc systems development (specification, implementation, validation). The hardware and the software of a computer system are specified as ad hoc systems. Examples from various architectures, languages, and operating systems are provided as illustrations. Problems and their suggested solutions are provided at the end of each chapter. Further readings and a list of references conclude each chapter.These volumes are self-contained and may be used as textbooks for an introductory course on system software and for a course on operating system. However, a broad spectrum of professionals in computer science will benefit from it.
Part 1 System methodology for software development: systems methodology; algebraic methodology; informal systems; formal systems; formal system construction; algebraic systems; ad hoc systems; ad hoc system formalization (transition systems, action language); ad hoc system construction (system specification, system implementation, system validation); doctrines of an ad hoc system; example of ad hoc system construction; computing systems; software systems; overview. Part 2 Hardware system: major behaviour of the hardware system; hardware system components (memory, procesor, input-output, control); actions performed by hardware system components; efficiency of a hardware system; convenience of a hardware system; general view of the hardware system. Part 3 System software: problem solving with a hardware system; process and process management; system software; application software; hardware data representation (memory data representation, I/O device data representation, processor data prepresentation); process data representation; service tools provided by software; the hierarchy of system software tools. Part 4 Operating system - an overview: the first operating system; design of a control program, job data structure; batch operating system; reliability (problem of protection, timing program execution, efficiency); performance measurements, parallel actions performed by hardware, overlapping program execution with its I/O operations, interleaving program execution; off-line operation; spooling operations; multiprogramming; a model of multiprogramming system; multiprocessor systems.