From: Song Xue (songxue_at_microsoft.com)
Date: Mon Jan 12 2004 - 15:58:48 PST
The paper titled "Programming Semantics for Multiprogrammed
Computations" defines the semantics of a set of meta-instructions that
perform operations essential to the writing of programs in
multiprogramming computer systems. In particular, the paper focuses on
three areas: parallel processing, naming objects of computation, and
protection of computing entities from unauthorized access.
Before diving into the meta-instructions, the properties of
Multiprogramming Computer Systems as well as the concepts and
terminology are laid out. Segments designates named resources.
Implementation of protection is segment based. Process is a locus of
control within an instruction sequence. Computation in term is a set of
processes with the same sphere of protection. Principals correspond to
users. The supervisor is the authors' term of kernel.
A number of meta-instructions are defined for parallel programming,
including fork, quit, join, private, lock & unlock, execute i/o
function. They help to define a consistent semantics of
parallel-running computations.
A term "sphere of protection" to denote the capability of the
computations. It is specified by a list of capabilities (C-list), each
references a resource together with the actions that the computation may
perform with regards to that resource. A computation's sphere of
protection can be thought of as having been established by another
computation, with the ability to grant additional capabilities through
meta-instruction grant. In addition, semantics are defined for
"Protected entry point" which protects resources that are manipulated on
behalf of several concurrent computations.
To my surprise, something like naming is an essential part of the
programming semantics. Names must be un-ambiguous, reasonable easy to
be generated, allow intersegment references with less than the full
name, and finally permit sets of objects to be shared easily. The
authors proposed that names be organized into a hierarchical structure
(directories). A set of instructions are then defined on the name
directories.
This archive was generated by hypermail 2.1.6 : Mon Jan 12 2004 - 15:58:50 PST