search for books and compare prices
Tables of Contents for Design and Implementation of Concurrent Smalltalk
Chapter/Section Title
Page #
Page Count
Introduction
1
4
Objectives
2
1
Overview of ConcurrentSmalltalk
2
1
Organization
3
2
I Language
5
60
Concurrent Programming Languages
7
12
Communication
7
3
Issues in Concurrent Programming Languages
10
1
Conventional Concurrent Programming Languages
11
6
Concurrent Pascal
11
2
Communicating Sequential Processes (CSP)
13
1
Distributed Processes (DP)
13
1
*MOD
14
1
PLITS
14
1
Ada
15
1
Synchronizing Resources (SR)
15
1
Cell
16
1
Argus
16
1
Discussion
17
2
Object-Oriented Programming Languages
19
12
Features of Object-Oriented Computing
19
2
Previous Work
21
7
Simula
21
2
Smalltalk-80
23
5
Discussion
28
3
Object-Oriented Concurrent Programming Languages
31
6
Features of Object-Oriented Concurrent Programming
31
1
Previous Work
32
3
Actors
32
1
Beta
33
1
Abcl/1
34
1
Orient84/K
34
1
Discussion
35
2
The Basics of ConcurrentSmaltalk
37
12
Alternatives
37
1
Design Policy
38
2
Compatibility with Smalltalk-80
38
1
Everything is an Object
38
1
Concurrent Programming
39
1
COM: ConcurrentSmalltalk Object Model
40
9
Model of an Object
41
1
Model of Communication
42
7
The Language Specification of ConcurrentSmalltalk
49
16
Communication
49
3
Synchronous Method Call Expression
49
2
Asynchronous Method Call Expression
51
1
Return Expression
51
1
Acknowledge Expression
52
1
Atomic Object
52
2
Definition of an Atomic Class
52
1
Notes on Atomic Objects
53
1
BlockContext Object
54
1
Atributes of a BlockContext
54
1
Block Arguments
55
1
Synchronization and Mutual Exclusion
55
4
CBox Object
55
3
Secretary Object
58
1
Example Programs
59
3
Semaphore
59
1
Prime Number Generator (1)
60
1
Prime Number Generator (2)
60
1
Producer-Consumer Problem (1)
60
1
Producer-Consumer Problem (2)
61
1
Readers-Writers Problem
61
1
Discussion
62
3
II Implementation
65
42
Implementation of ConcurrentSmalltalk
67
12
What is a Unit of Execution?
67
2
Alternatives
67
1
Processes, Threads, and Activites
68
1
Execution of ConcurrentSmalltalk Programs
69
5
Extended Bytecodes
69
3
Execution of Extended Bytecodes
72
2
Primitive Objects and Primitive Methods
74
4
CBox Object
74
3
Secretary Object
77
1
Compiler
78
1
The Specification of the Virtual Machine
79
18
Definition of the Virtual Machine
79
2
Synchronous Method Call Bytecodes
81
2
Asychronous Method Call Bytecodes
83
2
Return Bytecodes
85
4
Acknowledge Bytecode
89
1
Other Bytecodes
90
1
Primitive Methods of a CBox Object
90
4
Primitive Methods of a Secretary Object
94
3
An Efficient Implementation of the Virtual Machine
97
10
Implementation Issues
97
4
Object-Oriented Pointer
97
1
Object Table
98
1
Context
99
1
Method Search
100
1
Garbage Collection
100
1
Summary
101
1
Scheduling Strategy
101
1
Implementation of Extended Bytecodes
102
1
Format of Extended Bytecodes
102
1
Interface to a Primitive Method
103
1
Representation of an Object
103
4
III Evaluation
107
17
Experience with ConcurrentSmalltalk
109
4
Shared Object
109
1
BlockContext
110
1
Global Variables
110
1
Error Handling
110
3
Evaluations of the ConcurrentSmalltalk Virtual Machine
113
4
Overhead of the Object Table
113
1
Overhead of the Context Allocation
114
1
Thread Switching
114
1
Benchmarks
114
1
Portability of the Virtual Machine
114
3
Future Work
117
6
Current Status
118
1
More Efficient Implementation
118
1
User Defined Secretary Object
119
1
Concurrent Programming Debugger
119
1
Toward Distributed Implementation
120
1
Sarek: Window System Interface Primitives
121
2
Conclusion
123
1
Contributions
123
1
Bibliography
124
7
Appendix A Example Programs in ConcurrentSmalltalk
131
10
A.1 Semaphore
131
1
A.2 Prime Number Generator (1)
131
2
A.3 Prime Number Generator (2)
133
1
A.4 Producer-Consumer Problem (1)
134
2
A.5 Producer-Consumer Problem (2)
136
2
A.6 Reders-Writers Problem
138
3
Appendix B A Supplement of the Specification of the Virtual Machine
141
6
B.1 The Virtual/Machine Class
141
2
B.2 The ObjectMemory Class
143
4
Index
147