Encyclopedia Publications

Peter J. Denning

Structure and Organization of Computing. 2013. (CRC Handbook on Computer Science and Engineering) Overview of the CS field's structure including historical evolution, body of knowledge, great principles, and relationships with other fields.

Virtual Memory. 2013. (CRC Handbook on Computer Science and Engineering) Overview of virtual memory in its original role as solution of overlay problems and its modern role as means to access and protect shared digital objects. Virtual memory is one of the engineering triumphs of computing.

Resolving Wicked Problems Through Collaboration. 2009. Wicked problems yield to collaboration more than authoritarianism or competition. Significant new tools are available in the Internet to help. Included here with permission from IGI Global Publishers, from Handbook of Research on Socio-Technial Design and Social Networking Systems (2009).

The articles listed below were prepared for the new Encyclopedia of Computer Science, published by Wiley in 2008.

The Computing Field: Structure. 2008. Since its inception in the 1930s, the computing field has passed through childhood, adolescence, young adulthood, and maturity. In its maturity it is a complex of fields gathered under a large umbrella sometimes called Computing and sometimes Information Technology (IT). The field is described in two dimensions, its core content (body of knowledge) and its relationships with other fields. In the 1990s, it began to address the challenge of its acceptance as a natural science. Compare all the changes that have taken place with the previous encyclopedia article from 1999.

Great Principles of Computing. 2008. The Great Principles of Computing is a framework for understanding computing as a field of science. (The website ... )

The Choice Uncertainty Principle. 2008. The choice uncertainty principle says that it is impossible to make an unambiguous choice between near simultaneous events under a deadline. This principle affects the design of logic circuits in computer hardware, real time systems, and decision systems.

Locality Principle. 2008. Locality is a universal behavior of all computational processes: they tend to refer repeatedly to subsets of their resources over extended time intervals. System designers have exploited this behavior to optimize performance in numerous ways, including caching, clustering of related objects, search engines, organization of databases, spam filters, and forensics.

Working Set . 2008. The working set is a dynamic subset of a process's address space that must be loaded in main memory to ensure acceptable processing efficiency.

Virtual Memory . 2008. Virtual memory is the simulation of a storage space so large that users do not need to recompile their works when the capacity of a local memory or the configruation of a network changes.

Thrashing. 2008. Thrashing is an unsatable collapse of throughput of a system as the load is increased.

Swapping. 2008. Swapping is a general term for exchanging blocks of program code or data beweeen main and secondary memory.

Throughput. 2008. The throughput of a system is the number of jobs, tasks, or transactions the system completes per unit time.

Queueing Networks. 2008. Queueing networks model workflow in distributed computing systems and networks. They predict throughput, queue length, response time, and bottlenecks with simple, fast algorithms.

Kernel. 2008. The kernel is the subset of an operating system's functions that must be executed in privileged or supervisor mode.

Monitor. 2008. A monitor is a control program that oversees the allocation of resources among a set of user programs.

Overhead. 2008. Overhead in computer systems is like overhead in organizations -- shared functions that benefit everyone but which cannot be conveniently associate with any one activity.

Operating Systems Conceptual Structure. 1999. (With Walter F. Tichy) The conceptual structure of an operating system kernel is explained as a set of embedding virtual machines.