|
| This Article | ||
| ||
| Share | ||
| Bibliographic References | ||
| Add to: | ||
| | ||
| Search | ||
| ||
| ASCII Text | x | ||
| R.C.B Cooper, K.G. Hamilton, "Preserving Abstraction in Concurrent Programming," IEEE Transactions on Software Engineering, vol. 14, no. 2, pp. 258-263, February, 1988. | |||
| BibTex | x | ||
| @article{ 10.1109/32.4643, author = {R.C.B Cooper and K.G. Hamilton}, title = {Preserving Abstraction in Concurrent Programming}, journal ={IEEE Transactions on Software Engineering}, volume = {14}, number = {2}, issn = {0098-5589}, year = {1988}, pages = {258-263}, doi = {http://doi.ieeecomputersociety.org/10.1109/32.4643}, publisher = {IEEE Computer Society}, address = {Los Alamitos, CA, USA}, } | |||
| RefWorks Procite/RefMan/Endnote | x | ||
| TY - JOUR JO - IEEE Transactions on Software Engineering TI - Preserving Abstraction in Concurrent Programming IS - 2 SN - 0098-5589 SP258 EP263 EPD - 258-263 A1 - R.C.B Cooper, A1 - K.G. Hamilton, PY - 1988 KW - concurrent programming; programming languages; modular programming; abstractinterfaces; CLU; data abstraction; interface abstraction; monitor deadlock; fine-grain locking; data structures; high level languages; parallel programming; system recovery VL - 14 JA - IEEE Transactions on Software Engineering ER - | |||
Recent programming languages have attempted to provide support for concurrency and for modular programming based on abstract interfaces. Building on experience of adding monitors to CLU, a language oriented towards data abstraction, it is explained how these two goals conflict. In particular, the clash between conventional views on interface abstraction and the programming style required for avoiding monitor deadlock is discussed. It is argued that the best compromise between these goals is a combination of a fine-grain locking mechanism together with a method for explicitly defining concurrency properties for selected interfaces.
[1] P. Brinch Hansen,Operating System Principles, Englewood Cliffs, NJ: Prentice-Hall, 1973.
[2] D.H. Craft, "Resource Management in a Decentralized System,"Proc. Ninth ACM Symp. Operating System Principles, ACM Press, New York, Order No. 534830, 1983, pp. 11-19.
[3] C. A. R. Hoare, "Towards a theory of parallel programming," inOperating Systems Techniques, C. A. R. Hoare and R. H. Perrott, Eds. New York: Academic, 1972, pp. 61-71.
[4] C. A. R. Hoare, "Monitors: an operating system structuring concept,"Commun. ACM, vol. 17, no. 10, pp. 549-557, Oct. 1974.
[5] B. W. Lampson and D. D. Redell, "Experiences with processes and monitors in Mesa,"Commun. ACM, vol. 23, no. 2, pp. 105-117, Feb. 1980.
[6] B. Liskovet al., CLU Reference Manual(Lecture Notes in Computer Sci., vol. 114). Berlin: Springer-Verlag, 1981.
[7] A. Lister, "The problem of nested monitor calls,"Oper. Syst. Rev., vol. 11, no. 3, pp. 5-7, July 1977.
[8] J. G. Mitchell, W. Maybury, and R. Sweet,Mesa Language Manual, Xerox PARC, Palo Alto, CA, Apr. 1979.
[9] Ada Programming Language, U.S. Dep. Defense, Standard ANSI/ MIL-STD-1815A, Washington, DC, 1983.
[10] N. Wirth, "Modula-2," ETH Zurich, Tech. Rep. 36, Mar. 1980.

