Table of Contents
1 Introduction
2 Operating Systems and Utility
2.1 Utility
2.2 Information
2.3 Computers
2.4 Limits of Computers
2.5 Computing as a Project
2.6 Computing versus Artificial Intelligence
2.7 Computing Systems
2.8 Subsystems
2.9 Operating Systems
2.10 Controversy about the Definition for an OS
2.11 Operating System Utility
2.12 Operating System Expressiveness
2.13 Computing System Structure
2.14 Users
are
Programmers
2.15 The Long Reach of the Programmer
2.16 Authority
3 Languages and Expressiveness
3.1 Computer Languages
3.2 Goal of a computer language
3.3 Reuse versus Rewrite
3.4 Copying Code
3.5 Having an Extended Vocabulary...
3.6 ... or a Better Grammar
3.7 Abstraction
3.8 Metaprogramming
3.9 Reflection
3.10 Security
3.11 Trusting programs
3.12 Program proof
4 No Computer is an Iland
5 Conclusion
A Draft
A.1 About the whole article
A.2 Part I
A.3 Users
are
Programmers
A.4 Operating System Kernel
A.5 Current state of System software
A.6 An Ancien Régime
A.7 Computists
A.8 Contents of an Operating System
A.9 Toward a Unified System
A.10 Newest Operating Systems: the so-called "Multimedia revolution"
A.11 Part II
A.12 Structures
A.13 Mutable objects
A.14 Sharing Data
A.15 Problem: recovery
A.16 Centralized code
A.17 Genericity
A.18 Part III
A.19 Down to actual OSes
A.20 Humanly characteristics of computers
A.21 Multiplexing: the main
runtime
activity of an OS
A.22 Miscellaneous notes