system engineering
The design and implementation of system programs for a computer system. The system programs include the operating system and additional programs, such as various utilities. These utilities implement frequently used functions that assist in program creation, and the management of files and of input-output devices. An application programmer will make use of these for the creation of specific applications. An operating system typically provides facilities for the following kinds of tasks: program creation, program execution, communication between programs/applications, access to input-output devices, controlled access to files (storage and retrieval of data), system access in the case of multi-user computing systems, etc.
A total complex of system programs tends to be very large and the creation of such a complex involves considerable difficulties. A variety of tools, involving transformations of programs, program verification, mathematical models, and general system theory, has been developed in this connection.
[1] | F. Brooks, "The mythical man-month, essays on software engineering" , Addison-Wesley (1975) |
[a1] | A.S. Tanenbaum, "Structured computer organization" , Prentice-Hall (1976) |
[a2] | W. Stallings, "Computer organization and architecture" , Macmillan (1990) |