Newsgroups: comp.object,comp.answers,news.answers Path: senator-bedfellow.mit.edu!bloom-beacon.mit.edu!gatech!swrinde!howland.reston.ans.net!vixen.cso.uiuc.edu!uchinews!news From: Bob Hathaway Subject: Comp.Object FAQ Version 1.0.9 (04-02) Part 12/13 X-Nntp-Posting-Host: ford.uchicago.edu Message-ID: Followup-To: comp.object Summary: Frequently Asked Questions (FAQ) List and Available Systems For Object-Oriented Technology Sender: news@midway.uchicago.edu (News Administrator) Organization: Geodesic Systems References: Date: Wed, 3 Apr 1996 04:20:46 GMT Approved: news-answers-request@MIT.Edu Lines: 1250 Xref: senator-bedfellow.mit.edu comp.object:46842 comp.answers:17916 news.answers:68448 Archive-name: object-faq/part12 Last-Modified: 04/02/96 Version: 1.0.9 The OOD slides do NOT cover OMT. Some material is used from Booch's OOD book, but not the notation. From looking at the slides, it appears very easy to insert your own notation. The important part for students is communicating the concepts, which (for the price) these slides do a DAMN good job of. <- (Safire's Violation #45: "A perposition is a bad thing to end a sentence with." :-) Ah, but WHERE on WUArchive are they? If you look under languages/ada/crsware, I believe you'll find them. Good luck! dgw -- type My_Disclaimer is new Standard.Disclaimer with record AJPO, SEI : Cognizance := Disavow_All_Knowledge; end record;--) >52 GTE Distrib Reports From: em02@gte.com (Emon) Subject: Reports Available From The Distributed Object Computing Department Date: 5 Nov 93 18:10:15 GMT Organization: GTE Laboratories, Inc. REPORTS AVAILABLE FROM THE DISTRIBUTED OBJECT COMPUTING DEPARTMENT GTE LABORATORIES INCORPORATED 40 Sylvan Road, M/S 62 Waltham, Massachusetts 02254 For over six years, the primary focus of the Distributed Object Computing Department within GTE Laboratories has been the Distributed Object Management (DOM) project. The DOM project conducts research into object-oriented technology for integrating heterogeneous, autonomous, distributed (HAD) computer systems/resources. Major research areas include: interoperable object models; interoperable, distributed object architectures; heterogeneous, extended transaction models; and information requests in HAD environments. We are experimenting in these areas using our prototype DOM system which we have developed over the past five years. This technology is based on ideas from a number of technical areas including distributed, object-oriented, databases, multi-database systems, operating systems, and programming languages. Permission is granted at this time for the operations and uses listed below. However, this permission is non-transferable and is subject to revocation on a report-by-report basis, due to possible copyright transfers that are normal in the publication process. Any additional copyright restrictions are noted in the reports themselves. Default permissions are for anonymous ftp, electronic viewing, and single-copy printing. Permissible uses are research and browsing. Specifically prohibited are SALES of any copy, whether electronic or hardcopy, of any of these reports for any purpose. Also prohibited is copying, excerpting or extensive quoting of any report in another work without the written permission of one of the report's authors. Reports marked with a "*" can be retrieved in postscript(ascii) form via anonymous ftp from ftp.gte.com (132.197.8.2) in the "pub/dom" subdirectory. >>>>>>>>> 1994 [GEOR94a]* Georgakopoulos, D., M. Rusinkiewicz, and W. Litwin, "Chronological Scheduling of Transactions with Temporal Dependencies," to appear in the VLDB journal, January 1994 (submitted in December 1990). [GEOR94b]* Georgakopoulos, D., M. Hornick, P. Krychniak, and F. Manola, "Specification and Management of Extended Transactions in a Programmable Transaction Environment," to appear in the Proceedings of the 10th International Conference on Data Engineering, Houston, Texas, February 1994. Also published as TC-0207-02-93-165, GTE Laboratories Incorporated, February 1993. >>>>>>>>> 1993 [BROD93a]* Brodie, M.L., "The Promise of Distributed Computing and the Challenge of Legacy Information Systems," in Hsiao, D., E.J. Neuhold, and R. Sacks-Davis (eds), Proc. IFIP TC2/WG2.6 Conference on Semantics of Interoperable Database Systems, Lorne, Australia, November 1992, Elsevier North Holland, Amsterdam 1993. [BROD93b]* Brodie, M.L. and M. Stonebraker, "DARWIN: On the Incremental Migration of Legacy Information Systems," DOM Technical Report, TR-0222-10-92-165, GTE Laboratories Inc., March 1993. [GEOR93a]* Georgakopoulos, D., M. Hornick, and P. Krychniak, "An Environment for Specification and Management of Extended Transactions in DOMS," to appear in Proceedings of the 3rd International Workshop on Interoperability in Multidatabase Systems, Vienna, Austria, April 1993. [GEOR93c]* Georgakopoulos, D., M. Rusinkiewicz and A. Sheth, "Using Ticket-based Methods to Enforce the Serializability of Multidatabase Transactions," to appear in the IEEE Transactions on Data and Knowledge Engineering December 1993 (submitted in February 1992). [GEOR93e]* Georgakopoulos, D., M. Hornick, F. Manola, M. Brodie, S. Heiler, F. Nayeri, and B. Hurwitz, "An Extended Transaction Environment for Workflows in Distributed Object Computing," in IEEE Data Engineering, pp. 24-27, vol. 16, no. 2, June 1993. [MANO93a] Manola, F., "The Need for Object Model Interoperability," Workshop Report, Workshop on Application Integration Architectures, Dallas, Texas, February 1993 [MANO93c]* Manola, F. and S. Heiler, "A 'RISC' Object Model for Object System Interoperation: Concepts and Applications," TR-0231-08-93-165, GTE Laboratories, Inc., August 1993. [MITC93a] Mitchell, G., "Extensible Query Processing in an Object-Oriented Database," PhD Thesis, Brown University Technical Report No. CS-93-16, May 1993. Available in hard copy from Brown University, Computer Science Department, and postscript format via anonymous ftp from wilma.cs.brown.edu as file techreports/93/cs93-16.ps.Z [NAYE93c]* Nayeri, F., and B. Hurwitz, "Experiments with Dispatching in a Distributed Object System," GTE Laboratories, Inc., TR-0236-09-93-165, July 1993. [NAYE93d]* Nayeri, F., "Addressing Component Interoperability in the OMG Object Model," position paper submitted to ORB Implementors' Workshop, San Francisco, June 1993. [NICO93a] Nicol, J., T. Wilkes, and F. Manola, "Object Orientation in Heterogeneous Distributed Computing Systems," IEEE Computer, pp. 57-67, Vol. 26, No.6, June 1993. [VENT93]* Ventrone, V. and S. Heiler, "Some Practical Advice for Dealing with Semantic Heterogeneity in Federated Database Systems," Submitted to USENIX. >>>>>>>>> 1992 [BGR92]* Batra, R., D. Georgakopoulos, and M. Rusinkiewicz, "A Decentralized Deadlock-free Concurrency Control Method for Multidatabase Transactions," in Proceedings of 12th International Conference on Distributed Computing Systems, Yokohama, Japan, June, 1992. [BRO92b]* Brodie, M.L. and J. Mylopoulos , "Artificial Intelligence and Databases: Dawn, Midday, or Sunset?," Canadian Information Processing /Informatique Canadienne, July/August 1992. [BROD92c]* Brodie, M.L. and S. Ceri, "On Intelligent and Cooperative Information Systems," in International Journal of Intelligent and Cooperative Information Systems 1, 2 September 1992. [BUCH92] Buchmann, A.P., M.T. Ozsu, M. Hornick, D. Georgakopoulos, F.A. Manola, "A Transaction Model for Active Distributed Object Systems," in Database Transaction Models for Advanced Applications, A.K. Elmagarmid, (ed.), Morgan Kaufmann, San Mateo, CA, Spring 1992. [GEOR92]* Georgakopoulos, D., "A Framework for Dynamic Specification of Extended Multidatabase Transactions and Interdatabase Dependencies," Proceedings of Third Workshop on Heterogeneous Databases and Semantic Interoperability, Boulder, February, 1992. [HEIL92] Heiler, S., S. Haradhvala, B. Blaustein, A. Rosenthal, and S. Zdonik, "A Flexible Framework for Transaction Management in Engineering Environments," in Database Transaction Models for Advanced Applications, A.K. Elmagarmid (ed.), Morgan Kaufmann, San Mateo, CA, Spring 1992. [MANO92]* Manola, F., S. Heiler, D. Georgakopoulos, M. Hornick, M. Brodie, "Distributed Object Management," International Journal of Intelligent and Cooperative Information Systems 1, 1 March 1992. [MANO92a]* Manola, F. and S. Heiler, "An Approach To Interoperable Object Models," Proceedings of the International Workshop on Distributed Object Management, Edmonton, Canada, August 1992 (also in Distributed Object Management, M.T. Ozsu, U. Dayal, and P. Valduriez (eds.), Morgan Kaufmann, San Mateo, CA, 1993). >>>>>>>>> 1991 [BROD91] Brodie, M., "Distributed Object Management Research," Proceedings of the Second Telecommunications Information Networking Architecture (TINA) Workshop, pp. 297-303, Chantilly, France, March 1991. [BROD91a]* Brodie, M. and M. Hornick, "An Interoperability Development Environment For Intelligent Information Systems," Proceedings of the International Workshop on the Development of Intelligent Information Systems, Niagara-on-the-Lake, April 1991. [BUCH91]* Buchmann, A.P., M. Tamer Ozsu, and D. Georgakopoulos, "Towards a Transaction Management System for DOM," TR-0146-06-91-165, GTE Laboratories Incorporated, June 1991. [GEOR91a]* Georgakopoulos, D., M. Rusinkiewicz, and A. Sheth, "On Serializability of Multidatabase Transactions Through Forced Local Conflicts," Proceedings of the 7th International Conference on Data Engineering, Kobe, Japan, April 1991. [GEOR91b]* Georgakopoulos, D., "Multidatabase Recoverability and Recovery," Proceedings of the First International Workshop on Interoperability in Multidatabase Systems, Kyoto, Japan, April 1991. [GRL91] Georgakopoulos, D., M. Rusinkiewicz, and W. Litwin, "Chronological Scheduling of Transactions with Temporal Dependencies," in the VLDB journal, available draft also as a Technical Report from the Department of Computer Science at the University of Houston, UH-CS-91-03, February, 1991. [HEIL91]* Heiler, S., "Extended Data Type Support in Distributed DBMS Products: A Technology Assessment and Forecast," TR-170-12-91-165. GTE Laboratories Incorporated, December 1991. [HORN91]* Hornick, M.F., J.D. Morrison, and F. Nayeri, "Integrating Heterogeneous, Autonomous, Distributed Applications Using the DOM Prototype," TR-0174-12-91-165. GTE Laboratories Incorporated, December 1991. [MANO91] Manola, F. and U. Dayal, "An Overview of PDM: An Object-Oriented Data Model," in K.R. Dittrich, U. Dayal, and A.P. Buchmann (eds.), On Object-Oriented Database Systems, Springer-Verlag, 1991. [MANO91a]* Manola, F., "Object Data Language Facilities for Multimedia Data Types," TR-0169-12-91-165. GTE Laboratories Incorporated, December 1991. [MANO91b] Manola, F., "The Third-Generation/OODBMS Manifesto, Commercial Version," SIGMOD Record, Vol. 20, No. 4, December 1991. [RUSI91] Rusinkiewicz, M. and D. Georgakopoulos, "Multidatabase Transactions: Impediments and Opportunities," Compcon Spring '91 Digest of Papers, San Francisco, February 1991. [VENT91] Ventrone, V. and S. Heiler, "Semantic Heterogeneity as a Result of Domain Evaluation," SIGMOD Record Special Issue: Semantic Issues in Multidatabase Systems, Vol. 20, No. 4, December 1991. >>>>>>>>> 1990 [BREI90] Breitbart, Y., D. Georgakopoulos, and M. Rusinkiewicz, A. Silberschatz, "Rigorous Scheduling in Multidatabase Systems," Proceedings of Workshop in Multidatabases and Semantic Interoperability, Tulsa, pp. 658-667, November 1990. [BROD90]* Brodie, M.L., F. Bancilhon, C. Harris, M. Kifer, Y. Masunaga, E.D. Sacerdoti, K. Tanaka, "Next Generation Database Management Systems Technology," in Deductive and Object-Oriented Databases, W. Kim, J-M Nicolas, S. Nishio, (eds.), Elsevier Science Publishers, 1990. [HEIL90] Heiler, S., F. Manola and S. Zdonik, "An Object-Oriented Database Approach to Federated Systems," (unpublished paper), 1990. [MANO90] Manola, F., "Object-Oriented Knowledge Bases," AI Expert, 5(3), 5(4), March and April 1990. [MANO90a]* Manola, F. and A. Buchmann "A Functional/Relational Object-Oriented Model for Distributed Object Management: Preliminary Description" TM-0331-11-90-165. GTE Laboratories Incorporated, December 1990. [MANO90b]* Manola, F., M. Hornick, and A. Buchmann "Object Data Model Facilities for Multimedia Data Types" TM-0332-11-90-165, GTE Laboratories Incorporated, December 1990. [MYLO90]* Mylopoulos, J. and M. Brodie, "Knowledge Bases and Databases: Current Trends and Future Directions," Lecture Notes in Computer Science, Vol. 474: Information Systems and Artificial Intelligence: Integration Aspects, D. Karagiannia, (ed.), Springer-Verlag, New York, 1990. [RUSI90] Rusinkiewicz, M., D. Georgakopoulos, and R. Thomas, "RDS: A Primitive for the Maintenance of Replicated Data Objects," Proceedings of Second IEEE Symposium on Parallel and Distributed Processing, Dallas, pp. 658-667, December 1990. [SILB90] Silberschatz, A., M. Stonebraker, and J.D. Ullman (eds.), M.L. Brodie, P. Buneman, M. Carey, A. Chandra, H. Garcia-Molina, J. Gray, R. Fagin, D. Lomet, D. Maier, M.A. Niemat, A. Silberschatz, M. Stonebraker, I. Traiger, J. Ullman, G. Wiederhold, C. Zaniolo, and M. Zemankova, P.A. Bernstein, W. Kim, H.F. Korth, and A. van Tilborg, (co-authors), "Database Systems: Achievements and Opportunities," ACM SIGMOD Record, 19, 4, December 1990; also appeared in Communications of the ACM, Vol. 34, No.10, pp. 110-120, October 1991. [STON90] Stonebraker, M. , L.A. Rowe, B. Lindsay, J. Gray, M. Carey, M.L. Brodie, P. Bernstein, and D. Beech, "Third-Generation Data Base System Manifesto," ACM SIGMOD Recored 19, 3, September 1990. [ZERT90] Zertuche, D.R. and A.P. Buchmann, "Execution Models for Active Database Systems: A Comparison," TM-0238-01-90-165, GTE Laboratories Incorporated, January 1990. >>>>>>>>> 1989 [BROD89] Brodie, M., D. Bobrow, V. Lesser, S. Madnick, D. Tsichritzis, and C. Hewitt, "Future Artificial Intelligence Requirements for Intelligent Database Systems" Expert Database Systems: Proceedings From the Second International Conference, L. Kerschberg (ed.), Benjamin/Cummings, Menlo Park, CA, 1989. [BROD89a] Brodie, M. , J. Mylopoulos, "Future Intelligent Information Systems: AI and Database Technologies Working Together," in M. Brodie, J. Mylopoulos, (eds. and contributors), Readings in Artificial Intelligence and Databases, Morgan Kaufmann, San Mateo, CA, 1989. [MANO89]* Manola, F., "Applications of Object-Oriented Database Technology in Knowledge-Based Integrated Information Systems," GTE Laboratories Incorporated, April 1989. [MANO89a]* Manola, F., "Object Model Capabilities For Distributed Object Management," TM-0149-06-89-165, GTE Laboratories Incorporated, June 1989. [MANO89b]* Manola, F., "An Evaluation of Object-Oriented DBMS Developments," TR-0066-10-89-165, GTE Laboratories Incorporated, October 1989. [WELC89] Welch, J.L. and A.P. Sistla, "Object-Based Concurrency Control and Recovery Mechanisms," TM-0150-06-89-165, GTE Laboratories Incorporated, June 1989. >>>>>>>>> 1988 [MANO88]* Manola, F., "Distributed Object Management Technology," TM-0014-06-88-165, GTE Laboratories Incorporated, June 1988. >>>>>>>>> 1987 [MANO87] Manola, F., "A Personal View of DBMS Security," Database Security: Status and Prospects, C.E. Landwehr (ed.), Elsevier Science Publishers B.V., North Holland, 1988, 23-34; TN CS1.1, GTE Laboratories Incorporated, December 1987. _[GEOR94a]* _[GEOR94b]* _[BROD93a]* _[BROD93b]* _[GEOR93a]* _[GEOR93c]* _[GEOR93e]* _[MANO93a] _[MANO93c]* _[NAYE93c]* _[NAYE93d]* _[NICO93a] _[VENT93]* _[BGR92] _[BRO92b]* _[BROD92c]* _[BUCH92] _[GEOR92]* _[HEIL92] _[MANO92]* _[MANO92a]* _[BROD91] _[BROD91a]* _[BUCH91]* _[GEOR91a]* _[GEOR91b]* _[GRL91] _[HEIL91]* _[HORN91]* _[MANO91] _[MANO91a]* _[MANO91b] _[RUSI91] _[VENT91] _[BREI90] _[BROD90]* _[HEIL90] _[MANO90] _[MANO90a]* _[MANO90b]* _[MYLO90]* _[RUSI90] _[SILB90] _[STON90] _[ZERT90] _[BROD89] _[BROD89a] _[MANO89]* _[MANO89a]* _[MANO89b]* _[WELC89] _[MANO88]* _[MANO87] >53 KEOBJ, OO DSP micro-kernel From: clb@softia.com (Chris Bidaut) Subject: Object kernel for DSP & RISC processors Date: Mon, 15 Nov 1993 22:48:46 Organization: Softia, Inc. This is an announcement for KEOBJ, an object-oriented micro-kernel for Digital Signal Processors (DSP) and RISC processors. This is also a request for comments from the Internet community. Feedback on the architecture and programming interface will be appreciated and incorporated into the next release. 1 DESCRIPTION ------------- KEOBJ is an object-oriented micro-kernel optimized for advanced embedded applications, and it particularly targets Digital Signal Processors (DSP) and RISC processors in multimedia environments. Its main features are object-orientation, real-time behavior, signal processing support, micro-kernel architecture and scalability. 1.1 Object-orientation The kernel is a collection of system classes exported to the applications (e.g Process, Thread, Memory, ...). An object name space provides a way to locate any public object (e.g. IPC, memory) using a symbolic path. The kernel is written in C++ and is easily portable. 1.2 Real-time behavior The design stresses fast response time and predictability to qualify for the real-time label. The kernel is reentrant and preeemptable. 1.3 Signal processing support Besides providing an architecture appropriate for most general purpose applications, the kernel incorporates dedicated features for signal processing applications. This includes two phases interrupt processing, time-deadline scheduling, Inter Process Communications, multiple memory pools, awareness of the constraints due to a single data type (word). 1.4 Micro-kernel architecture Probably the most important feature of the kernel is the ability to be extended at run-time with new services such as devices drivers, public classes (IPC, file systems, windowing systems). Applications and system services are dynamically loaded by a COFF compatible loader. The core kernel is customizable at run-time through a personality mechanism to emulate other environments (Operating systems) or to tailor the processes environments. 1.5 Scalability The API supports physical and virtual memory organizations with the same semantics. Applications source code will be portable across DSP and RISC processors. The architecture supports symmetric multiprocessing and distribution (Available by mid-1994). 2 WHERE TO FIND THE PACKAGE --------------------------- A set of documentation about KEOBJ is available via anonymous ftp on the following Internet server: netcom.com (192.100.81.100) in file /pub/softia/keobj.zip If you do not have access to Internet, contact me for other delivery media at: Chris Bidaut clb@softia.com Telephone (408) 262-6520 Fax (408) 262-7210 >54 MindFrame for Windows From: gcl@netcom.com (Geoff Lee) Subject: "MindFrame for Windows" (freeware) application is available for ftp Date: Tue, 16 Nov 1993 21:07:28 GMT MindFrame for Windows 1.0 Release Note ====================================== mndframe.zip (MindFrame for Windows) is available for anonymous ftp on ftp.cica.indiana.edu. It is currently in /pub/pc/win3/uploads. "MindFrame for Windows" is a freeware application developed to teach an object modeling approach presented in the book: "Object-Oriented GUI Application Development" Geoff Lee, Prentice-Hall, 1993, ISBN 0-13-363086-2. This application is useful in many other areas as well, for example, in Bible studying (metaphors, parables, prophecies, types), neural modeling, ecological modeling, and task modeling. There are 20 sample applications covering these areas. There are also description of each of the sample application in the on-line Help. Read "About MindFrame..." help topic for more information. This is a copyrighted software, but you can freely redistribute if you keep the release intact. The following is the content of mdnframe.txt file in the .zip file: 1. Installation Procedure: DOS> mkdir MndFrame DOS> cd MndFrame DOS> copy b:MndFrame.zip (or where you kept the mndframe.zip file) DOS> unzip -d mndframe.zip (extract files into subdirectories) DOS> copy grid.vbx \windows\systems (your local Windows system directory) 2. Running the application: . In Windows, open your "File Manager" . Go to \MndFrame directory . Find the MndFrame.exe file . Drag the MndFrame.exe file icon into a "Program Manager" window . Open the MndFrame.exe program 3. Sample applications: Once you are in the MindFrame application, open files in the \MndFrame\Samples subdirectories. There are 20 sample files organized according to areas of application (e.g., object modeling, neural modeling, bible studying). You can also find description of each of these samples in the On-Line Help file. 4. On-line help: Use the "About MindFrame..." menu item in the "Help" menu to learn more about this application. There is an on-line help provided for this application. Read through the help topics to learn about using this application. 5. Files in this release: mndframe.txt: this file. mdnframe.exe: the executable file of "MindFrame for Windows" freeware. mndframe.hlp: the on-line help file for "MindFrame for Windows". biblnote.ps: the PostScript file of help text on using this application to study metaphors, parables, types, and prophecies in the Holy Bible. grid.vbx: the visual basic grid control that is necessary to run this application. It must be copied into your local "system" directory for Windows (\windows\system in most cases). samples\*: in this directory, there are 20 samples (*.frm files) in the subdirectories for each application area (e.g., objmodel, ecology, neural, parable). New MindFrame anonymous FTP Directory: It has been moved to a more permanent directory: /pub/pc/win3/programr. >55 ACE Lib, C++ Networking From: schmidt@liege.ics.uci.edu (Douglas C. Schmidt) Subject: Re: C++ and Semaphores Date: 22 Nov 1993 19:27:00 -0800 Organization: University of California at Irvine: ICS Dept. THE "ADAPTIVE COMMUNICATION ENVIRONMENT" (ACE) LIBRARY: A Collection of C++ Network Programming Components -------------------------------------------------- The ACE library is available for anonymous ftp from the ics.uci.edu (128.195.1.1) host in the gnu/C++_wrappers.tar.Z file (approximately .4 meg compressed). This release contains contains the source code, documentation, and example test drivers for a number of C++ wrapper libraries and higher-level network programming foundation classes developed as part of the ADAPTIVE transport system project at the University of California, Irvine. . The C++ wrappers encapsulate many of the user-level BSD and System V Release 4 IPC facilities such as sockets, TLI, select and poll, named pipes and STREAM pipes, the mmap family of memory-mapped file commands, System V IPC (i.e., shared memory, semaphores, message queues), and explicit dynamic linking (e.g., dlopen/dlsym/dlclose) using type-secure, object-oriented interfaces. . The higher-level network programming foundation classes integrate and enhance the lower-level C++ wrappers to support the configuration of concurrent network daemons composed of monolithic and/or stackable services Many of the C++ wrappers and higher-level components have been described in issues of the C++ Report, as well as in the proceedings of (1) the 2nd Annual C++ World conference held in Dallas, Texas in October, 1993, (2) the 11th Annual Sun Users Group Conference held in San Jose, CA in December, 1993, and (3) the 2nd International Workshop on Configurable Distributed Systems held at CMU in Pittsburgh, PA in March, 1994. A relatively complete set of documentation and extensive examples are included in the release. A mailing list is available for discussing bug fixes, enhancements, and porting issues regarding ACE. Please send mail to ace-users-request@ics.uci.edu if you'd like to become part of the mailing list. CONTENTS OF THE RELEASE The following subdirectories are included in this release: . apps -- complete applications written using the ACE wrappers . bin -- utility programs for building this release such as g++dep . build -- a separate subdirectory that keeps links into the main source tree in order to facilitate multi-platform build-schemes . include -- symbolic links to the include files for the release . lib -- object archive libraries for each C++ wrapper library . libsrc -- the source code for the following C++ wrappers: ASX -- higher-level C++ network programming foundation classes Get_Opt -- a C++ version of the UNIX getopt utility IPC_SAP -- wrapper for BSD sockets IPC_SAP_FIFO -- wrapper for FIFOS (named pipes) IPC_SAP_SPIPE -- wrapper for SVR4 STREAM pipes and connld Log_Msg -- library API for a local/remote logging facility Mem_Map -- wrapper for BSD mmap() memory mapped files Message_Queues -- wrapper for SysV message queues Reactor -- wrapper for select() and poll() Semaphores -- wrapper for SysV semaphores Server_Daemon -- a wrapper for dynamically linking Shared_Memory -- wrapper for SysV shared memory Shared_Malloc -- wrapper for SysV/BSD shared mallocs TLI_SAP -- wrapper for SVR4 TLI . tests -- programs that illustrate how to use the various wrappers Please refer to the INSTALL file for information on how to build and test the ACE wrappers. The BIBLIOGRAPHY file contains information on where to obtain articles that describe the ACE wrappers and the ADAPTIVE system in more detail. Also, please note that there is a companion tar file called C++_wrappers_doc.tar.Z, which is approximately 1.5 Meg compressed. This file is in the same ftp/gnu directory as the source code distribution. In this file is the following: . doc -- LaTeX documentation (in both latex and .ps format) . papers -- postscript versions of various papers describing ACE COPYRIGHT INFORMATION You are free to do anything you like with this code. However, you may not do anything to this code that will prevent it from being distributed freely in its original form (such as copyrighting it, etc.). Moreover, if you have any improvements, suggestions, and or comments, I'd like to hear about it! It would be great to see this distributed evolve into a comprehensive, robust, and well-documented C++ class library that would be freely available to everyone. Natually, I am not responsible for any problems caused by using these C++ wrappers. Thanks, Douglas C. Schmidt (schmidt@ics.uci.edu) Department of Information and Computer Science University of California, Irvine Irvine, CA 92717 Work #: (714) 856-4105 FAX #: (714) 856-4056 ACKNOWLEDGEMENTS Special thanks to Paul Stephenson for devising the recursive Makefile scheme that underlies this distribution. Also thanks to Olaf Kruger for explaining how to instantiate templates for shared libraries on SunOS 4. -- Douglas C. Schmidt Department of Information and Computer Science University of California, Irvine Irvine, CA 92717. Work #: (714) 856-4105; FAX #: (714) 856-4056 >56 Teaching Intro to OO Slides, T. Budd From: budd@daimi.aau.dk (Tim Budd) Subject: Re: Slides on OOP or OMT wanted Date: 8 Nov 1993 07:46:08 GMT Organization: DAIMI, Computer Science Dept. at Aarhus University >... I also have a series of slides that I have developed for use with my text ``an introduction to object-oriented programming'' (timothy budd, addison-wesley publishers). These can be found at cs.orst.edu directory pub/budd/oopintro/slides/*, or there is a mail server called almanac@cs.orst.edu and if you say send oopintro slides chapter1 and so on you can get them via e-mail. Warning, it yields a lot of e-mail, so do it one at a time. --tim >57 Value Dependence Graphs From: Michael D. Ernst Subject: Value dependence graphs paper available Date: Tue, 9 Nov 1993 00:59:36 GMT The paper "Value Dependence Graphs: Representation Without Taxation", which describes a new intermediate representation which is particularly amenable to optimization, is available. (This version corrects typos and clarifies a few minor points that may not have been completely clear in the version which will appear in the POPL 94 proceedings.) You can get a copy in three ways: 1. Via anonymous ftp, obtain file research.microsoft.com:/pub/papers/vdg.ps (or file vdg.ps635 if you have a HP LaserJet 4 printer). 2. Reply to mernst@research.microsoft.com requesting PostScript by email, and I will send you the PostScript file of your choice. (The files are 483K and 1018K bytes, respectively.) 3. Reply to mernst@research.microsoft.com sending me your physical mail address, and I will mail you a hardcopy. The abstract is: The value dependence graph (VDG) is a sparse dataflow-like representation that simplifies program analysis and transformation. It is a functional representation that represents control flow as data flow and makes explicit all machine quantities, such as stores and I/O channels. We are developing a compiler that builds a VDG representing a program, analyzes and transforms the VDG, then produces a control flow graph (CFG) [ASU86] from the optimized VDG. This framework simplifies transformations and improves upon several published results. For example, it enables more powerful code motion than [CLZ86, FOW87], eliminates as many redundancies as [AWZ88, RWZ88] (except for redundant loops), and provides important information to the code scheduler [BR91]. We exhibit a fast, one-pass method for elimination of partial redundancies that never performs redundant code motion [KRS92, DS93] and is simpler than the classical [MR79, Dha91] or SSA [RWZ88] methods. These results accrue from eliminating the CFG from the analysis/transformation phases and using demand dependences in preference to control dependences. The paper's full citation is: @InProceedings{WeiseCES94, author = "Daniel Weise and Roger F. Crew and Michael Ernst and Bjarne Steensgaard", title = "Value Dependence Graphs: Representation Without Taxation", booktitle = POPL94, pages = "297-310", year = 1994, month = jan, address = "Portland, OR" } >58 Various on OO I think our ftp-site should be mentioned under the PAPERS section of appendix E of the comp.object FAQ. There are a number of interesting papers about Object-Orientation, in particular about a new object-oriented model, called 'Composition Filters'. Here is the uuencoded compressed version of a postscript document that contains abstracts of the papers which are available via ftp (ftp.cs.utwente.nl - /pub/doc/TRESE) or WWW (http://wwwtrese.cs.utwente.nl - Recent Publications of the TRESE project). You may also view this document from our WWW-site. Greetings, Richard. --- TRESE project Email: stadt@cs.utwente.nl TRESE WWW Server: http://www_trese.cs.utwente.nl >59 ILU OMG CORBA Date: Fri, 19 May 1995 20:51:05 PDT From: Bill Janssen Subject: New ILU 1.8 Common Lisp support available To: ilu-interest.PARC@xerox.com Revised support for using ILU with Common Lisp is now available as ftp://ftp.parc.xerox.com/pub/ilu/1.8/ilu-1.8-new-lisp.tar.gz Changes include: 1) The Common Lisp support no longer has to load C code for each ILU module loaded, so CL implementations without that capability may use ILU. This also speeds up loading of ILU modules considerably. 2) CORBA-style union support is now there. 3) ILU dynamic object creation is now fully supported. That is, an ILU kernel server may now be created which calls back to Lisp functions to create objects on demand, rather than having to have them available before clients make calls on them. 4) A non-threaded Franz ACL implementation of the ILU support is now included, solely as an example of how to support ILU in Common Lisp implementations without threads. Of course, if your CL has threads, your ILU support should use them. 5) A new version of the ILU manual is included, with the appropriate changes to the CL chapter. 6) A modified version of examples/test1/ is provided, with Lisp examples of the test1 program. ``But what's ILU, anyway?'' The Inter-Language Unification system (ILU) is a multi-language object interface system. The object interfaces provided by ILU hide implementation distinctions between different languages, between different address spaces, and between operating system types. ILU can be used to build multi-lingual object-oriented libraries ("class libraries") with well-specified language-independent interfaces. It can also be used to implement distributed systems. It can also be used to define and document interfaces between the modules of non-distributed programs. ILU interfaces are specified in ILU's Interface Specification Language. The 1.8 release of ILU contains support for the programming languages Common Lisp, C++, ANSI C, Modula-3, and Python). It has been installed on many flavors of UNIX, including SPARC machines running SunOS 4.1.3 and Solaris 2, SGI MIPS machines running IRIX 5.2, Intel 486 machines running Linux 1.1.78, DEC Alpha machines with OSF/1, IBM RS/6000 machines running AIX, and HP machines running HP/UX. A port of ILU to the Microsoft Windows 3.1 and Windows NT environments has been finished, and will form part of the 1.9 release. ILU supports both threaded and non-threaded operation. One of the implementation goals of ILU is to maximize compatibility with existing open standards. As a result, ILU provides support for use of the OMG CORBA IDL interface description language, and can be thought of as a CORBA ORB system (though with omissions from and extensions to the CORBA spec). As another result, ILU includes a self-contained implementation of ONC RPC, and it is possible to describe and use existing RPC services as ILU objects. ILU is available free from `ftp://ftp.parc.xerox.com/pub/ilu/ilu.html'. -- Bill Janssen (415) 812-4763 FAX: (415) 812-4777 Xerox Palo Alto Research Center, 3333 Coyote Hill Rd, Palo Alto, CA 94304 URL: ftp://ftp.parc.xerox.com/pub/ilu/misc/janssen.html >60 Internet Info CDROM, including FAQs Walnut Creek CDROM announces the release of the Internet Info CDROM. This CDROM contains 12,000 documents about computers and networks: * Answers to Frequently Asked Questions (FAQs). * Internet RFCs and IENs. * Computer security Documents. * Internet Network maps. * Usenet technical discussion Archives. * Ftp sites lists and descriptions of the archives they hold. * Extensive bibliographies and technical book reviews. * documents and standards from IEEE, ISO, NIST, ANSI and others. The price is $39.95. S&H is $5 for US/Canada/Mexico, and $10 for overseas. If you live in California, please add sales tax. You can pay by cash, check, money order or Visa/MC/Dis/Amex. This CDROM is fully guaranteed, if you are dissatisfied with this disc for any reason whatsoever, you can return it for an exchange or refund. Walnut Creek CDROM 1547 Palos Verdes Mall, Suite 260 Walnut Creek, CA 94596 1 800 786-9907 1 510 674-0783 1 510 674-0821 FAX orders@cdrom.com The disc is available for FREE to anyone that has contributed any of their own work. This includes FAQ maintainers, RFC authors, etc. Just email me your name, address, and the name of the files(s) that you wrote. Overseas addresses are ok. If you would like a more detailed list of other CDROM titles published by Walnut Creek CDROM, you can ftp the latest list from ftp.cdrom.com:/pub/cdrom/catalog, or send email to info@cdrom.com. >61 Metrics From: dcp@icd.teradyne.com (Dan Proskauer) Subject: Re: Wanted: Data on McCabe and Halstead Comple Organization: Teradyne, Inc. Boston MA Date: Sat, 18 Dec 1993 20:58:33 GMT There is some publically available McCabe and Halstead analysis software for C in gatekeeper.dec.com /pub/usenet/com.sources.unix/volume20/metrics. I believe there is some explanation of the metrics along with it. Some other references are: The Art of Software Testing, Myers "An Internal Approach to Testing Horizontally Reusable Software", Proceedings of the 5th Annual STC Conference, 93 Goldfedder (Overall of where McCabe fits in to A testing process) >62 Amadeus, persistence From: aoife@mordred.st.nepean.uws.edu.au (Aoife Cox) Subject: Re: In Search of Persistence Date: 14 Dec 1993 20:04:38 +1100 Organization: University of Western Sydney >I have been searching the net trying to find any locations for papers about >implementation of persistence object systems or about persistence and OOPL. As >yet, I have not found anything remotely related. >Are there any ftp sites with such papers that someone can direct me to? There should be some papers on the Amadeus system, developed by the Distributed Systems Group at Trinity College, Dublin, ftp-able from ftp.cs.tcd.ie. Look in the /pub/tcd/tech-reports directory.... Hope this helps. Aoife >63 Chorus,Dist,RT,MicroK From Marc Maathuis (mm@chorus.fr): You may want to take a look at CHORUS, a distributed real-time microkernel that can be combined with the CHORUS/MiX subsystem, which is a modular, fully compatible UNIX System V (R3.2 or R4.0) implementation. There is also an OO subsystem named COOL (CHORUS Object Oriented Layer). CHORUS runs on i386/i486, 680x0, SPARC, transputer and on several other processors. CHORUS is available as a source technology. In Jan 94, SCO and Chorus will release a *binary* product for the PC market: "CHORUS/Fusion for SCO UNIX" is binary compatible with SCO UNIX and offers real-time functionality (POSIX 1003.1b and .1c, i.e. the former .4 and .4a interfaces) and clustering functionality. COOL provides a distributed OO programming environment for C++. COOL supports a set of system calls that allow the creation of dynamic objects. These objects can be sent messages in a location transparent way, they can be migrated between address spaces and sites and they can be stored in a persistent store; this is done in a transparent way, as an extension of the C++ language. There are several technical reports (in PostScript format) on CHORUS and on COOL available via anonymous FTP from Chorus systemes, France: ftp.chorus.fr [192.33.15.3], directory pub/chorus-reports. See the file "index" for an overview. There is also a set of ~90 slides on Chorus and CHORUS available in the directory pub/chorus-slides/CS-TR-92-64 (PostScript, versions 1-up and 2-up). If VTT is a public research lab, then you might be interested by the fact that Chorus systemes has special programs for universities. For more information on offering, conditions, etc, ftp to ftp.chorus.fr and get the following ASCII files - pub/README - pub/academic/README - pub/academic/offerings If you have questions, you may contact Didier Irlande for license issues or Xavier Galleri for technical issues. >64 Self Opt. From: urs@cs.stanford.edu (Urs Hoelzle) To: self-interest@otis.Stanford.EDU Subject: thesis available for ftp Date: Fri, 2 Sep 94 11:15:29 PDT Reply-To: urs@cs.stanford.edu Dear self-interesters, My thesis is now available via ftp and Mosaic (see below). Yes, I have graduated! Though many things will change, I'm planning to keep on working on Self at UCSB; my new e-mail address is urs@cs.ucsb.edu. However, I am no longer maintaining the self-interest list, for questions/requests please contact self-request@self rather than writing directly to me. -Urs --------------- Urs Hoelzle. "Adaptive Optimization for Self: Reconciling High Performance with Exploratory Programming." Ph.D. thesis, Computer Science Department, Stanford University, August 1994. The report is available in PostScript form via ftp from self.stanford.edu:/pub/papers/hoelzle-thesis.ps.Z or via Mosaic from http://self.stanford.edu. In a few weeks, it should be available in printed form as a Stanford CSD technical report and as a Sun Microsystems Laboratories technical report. Abstract: Crossing abstraction boundaries often incurs a substantial run-time overhead in the form of frequent procedure calls. Thus, pervasive use of abstraction, while desirable from a design standpoint, may lead to very inefficient programs. Aggressively optimizing compilers can reduce this overhead but conflict with interactive programming environments because they introduce long compilation pauses and often preclude source-level debugging. Thus, programmers are caught on the horns of two dilemmas: they have to choose between abstraction and efficiency, and between responsive programming environments and efficiency. This dissertation shows how to reconcile these seemingly contradictory goals by performing optimizations lazily. >65 ORBELINE: CORBA PostModern Computing is making its CORBA-compliant ORBeline product available free of charge to the academic community for teaching and research purposes. ORBeline is available via anonymous ftp from labrea.stanford.edu under pub/pomoco. We are making the SunOS 4.x, Solaris 2.3, and OSF/1 versions of ORBeline available. We will consider making other platforms available as well if there is enough interest. Suresh Challa PostModern Computing suresh@pomoco.com What follows is the README file of this release: ------------------------------------------------------------------------------- ORBELINE -------- The SMART Object Request Broker ORBeline is a complete implementation of OMG's Common Object Request Broker Architecture (CORBA). ORBeline goes beyond the standard specification to provide a SMART communication framework allowing you to easily develop large distributed applications that are robust, scalable, flexible and maintainable. ORBeline incorporates PostModern's proven communication framework that links thousands of nodes. Highlights ---------- ORBeline's SMART Agent dynamically tracks the communication taking place between all objects and their clients: o Smart Binding and Protocol Selection ORBeline automatically picks the best communication mechanism as soon as you try to access an object. If the object is in your process, it bypasses the ORB and the network altogether. When the object is on a remote node, ORBeline's SMART and efficient on-the-wire protocol is selected. When the object is implemented using another vendor's ORB, that vendor's on-the-wire protocol is used. o Built-in Fault Tolerance ORBeline's SMART Agent monitors communication between objects and their clients. In case of a failure, the SMART agent and ORBeline cooperate to reestablish connections between processes or their replicas. o Dynamic Directory Service ORBeline's Dynamic Directory Service tracks all registered and active objects, providing a high degree of efficiency, total location transparency and easy administration. There is no need for cumbersome configuration files, and no need for heavyweight object migration and replication mechanisms. o Platforms ORBeline runs on all classes of computers ranging from Cray supercomputers, to workstations, to personal computers and embedded systems. Complete CORBA implementation ----------------------------- ORBeline is the most complete ORB implementation currently on the market. It features the following: o IDL Compiler implementing the entire Interface Definition Language. o Static and Dynamic Invocation Interfaces o Complete Interface and Implementation Repositories. o Support for Object Activation. o Complete set of object administration tools. Features -------- o High Performance and Low Overhead ORBeline provides high performance while adding little overhead to your application. ORBeline is the only ORB product available on the market today suitable for running on real-time, embedded systems. o Flexible and Easy to Use With ORBeline it is easy to develop, deploy and maintain large distributed applications. ORBeline provides a high degree of flexibility and takes care of cumbersome details allowing developers to focus on their applications. o WAN Connectivity ORBeline uses PostModern's proven communication technology to connect wide area networks. o Scalability ORBeline's smart use of network resources and communication protocols allows applications to scale to networks of thousands of nodes. o Object Migration and Replication ORBeline's SMART agent and Dynamic Directory Service allow easy object migration and replication. Platforms --------- We are making the SunOS 4.x, Solaris 2.3, and OSF/1 versions of ORBeline available free of charge to the academic community. We will consider making other platforms available as well if there is enough interest. The following compilers are supported in this release: Solaris 2.3: Sun C++ 4.0 (native), SparcWorks 3.0 SunOS 4.x: Sun C++ 3.0 (cfront), SparcWorks 2.0.1 OSF/1 1.3: DEC C++ If there is enough interest, we can make versions compatible with other compilers available as well. LICENSING --------- ORBeline is provided free of charge to the academic community for teaching and research purposes. After installing ORBeline, call us at (415) 967-6169 or send e-mail to info@pomoco.com and we will send you a perpetual license for your site. If you are interested in ORBeline for commercial purposes, contact us and we can provide a limited time evaluation license. ACKNOWLEDGEMENTS ---------------- We would like to thank Stanford University for providing us with a high-speed ftp site from which to distribute this ORBeline release. PostModern Computing Technologies, Inc. 1897 Landings Drive Mountain View, CA 94043 Tel: (415) 967-6169 Fax: (415) 967-6212 info@pomoco.com >66 OO Designer CASE Tool **************** Object Oriented Designer *************** Prof. Taegyun Kim [ktg@taejo.pufs.ac.kr] Pusan University of Foreign Studies Pusan, Korea Version : Version 1.3.1 Revised : October 6 1994 ********************************************************* Let me introduce myself. I am an assistant professor working at Department of Computer Engineering in Pusan University of Foreign Studies which resides in Pusan, Korea. My major interest is in software engineering especially in the area of object oriented methodologies. In teaching courses in systems analysis and software engineering I found a need for a good case tool that could be used by my students. Unfortunately, commercial case tools are too expensive for a university to purchase so I developed OOD. I have spent 17 man months building OOD. Because this is my first project combining object oriented methods, Motif, and C++, some of the source code may be a little clumsy. However, it does work well and it is still evolving. This project is very hard but is also very interesting. Let's enjoy it together. P.S.: I am anxious for your criticism or comment on this product. So, if it works on your system, please respond to me with even a one line (very short) message. It will give me some encouragement. Moreover please inform me your status (student, professor etc.) if possible. -Taegyun Kim --------------- Contents -------------- 0. Summary 1. System Environment 2. Building OOD 3. Initializing the Working Environment 4. Functions 5. Examples 6. Reference Books 7. Cautions 8. FAQ ---------------------------------------- 0. Summary ---------- The Object Modeling Technique [OMT] by James Rumbaugh et al. is a methodology for object oriented development with a graphical notation for representing object oriented concepts. Object Oriented Designer [OOD] is a case tool for constructing the object diagrams defined in OMT. In order to use OOD it is necessary to understand OMT and its graphical notation. See reference (2). Why "OMT"? OMT evolved from the Extended Entity Relationship [EER] model which I have studied since the mid 80's. There are a number of other approaches to expressing object oriented concepts but I believe that OMT is superior to most of these. Yourdon's Object Oriented Analysis [OOA] notation, for example, is another excellent approach to the problem but has some limits in functionality, particularly with respect to data modeling, that are present in OMT. Currently, OOD has following primary functions: - general graphics editor (with limited functionality) - object diagram layout (with some additions w.r.t. original OMT notation) - C++ code skeleton generation (header file + source file) The comments and codes for individual member functions can be documented, or edited within OOD directly. The C++ code generator supports inheritance. I have attempted to make OOD as user-friendly as possible. My students learn to use it in a day even without a manual. The user-friendliness of OOD is due to my own object oriented, user interface mechanisms. Currently OOD generates a C++ code skeleton from an object diagram. I have a short term final goal to develop an object oriented "environment" with flexibility and portability. I think that about additional 20 man months effort could lead me to the final goal. Because I am currently working very hard to enhance its functionality, I am not especially concerned with system portability issues at the moment so building OOD on your particular platform may require a little work on your part. Please inform me of any changes that you need to make to build OOD on your system. 1. System Environment --------------------- OOD was built on a SPARC station running OS4.1.x, X11-R5 and Motif-1.2 and C++-2.0. OOD has also been successfully built on a SPARC using gcc-2.5.8 and libg++-2.5.3. It should build on most UNIX systems with X11-R5, Motif-1.2 and a "reasonable" C++ compiler. 2. Building OOD --------------------- 1) In ood directory edit the Makefile to reflect your environment 2) run "make depend" 3) run "make" 3. Initialize Working Environment -------------------------------- OOD requires the user to select a working repository in which to store various output files. If this is the first time you are running OOD: 1) point at the top-menu, 2) select "Environment", 3) select "Setup", 4) define your working repository. If a working repository has been previously defined, select it: 1) point top-menu 2) select "change to" 3) set your working repository ... >67 OOTher OO CASE Tool From: conrozi@kk90.ericsson.se (Roman Zielinski TT/TSM) Subject: CASE OOTher 1.06f released (free/shareware) Organization: Ericsson Date: Tue, 20 Sep 1994 07:15:09 GMT