Socket-like communication API for Java
Gespeichert in:
| Titel: | Socket-like communication API for Java |
|---|---|
| Patent Number: | 7,600,217 |
| Publikationsdatum: | October 06, 2009 |
| Appl. No: | 11/012803 |
| Application Filed: | December 14, 2004 |
| Abstract: | A system and method are described for performing data processing using shared memory and socket-like application programming interface. In one embodiment, a plurality of handles is employed and associated with a plurality of processes. The plurality of handles may serve as communication end-points for communication of data. Further, an application programming interface is employed to present the plurality of handles as the application programming interface for sockets for facilitating the communication of data compatible with a programming language. The data is communicated between the plurality of processes via the socket-like plurality of handles. |
| Inventors: | Dostert, Jan (Nussloch, DE); Fleischer, Christian (Mannheim, DE) |
| Assignees: | SAP AG (Walldorf, DE) |
| Claim: | 1. A method comprising: integrating processes at an application server via a communication system of the application server, the processes including first processes including specialized processes of an operating system of the application server, and second processes, including specialized processes of the operating system, wherein the first and second processes are independent of each other, the first processes executing first programming transactions via a first programming engine of the application server, and the second processes executing second programming transactions via a second programming engine of the application server, wherein the first transactions are independent of the second transactions, the communication system including a shared memory accessed by the first and second processes using memory pipes to provide a common access to the shared memory, the shared memory to provide duplicate free data to eliminate potential data loss; and facilitating bi-directional and unduplicated communication between the first processes and second processes via the shared memory, wherein the bi-directional and unduplicated communication comprises receiving requests and providing responses in response to the requests, the requests including one or more of Advanced Business Application Programming (ABAP)-related requests and Java-related requests, the first transactions including ABAP transactions, and the second transactions including Java transactions, the communication including one of the first programming engine and second programming engine performing an instruction according to a programming language to employ a handle as a communication end-point, the instruction including semantics of the programming language for accessing a socket, the shared memory serving as a common communication interface for the processes to communicate bi-directionally, wherein at least one socket is associated with each process of the first and second processes, and the sockets are further to serve as a user interface to expose the first and second processes to a user; receiving at a network communication manager of the application server a client request; and sending the received client request from the network communication manager of the application server to one of the first programming engine and second programming engine via the shared memory, wherein the first processes and second processes include one or more of Web Application Server processes, Unix Application Server processes, Microsoft Windows Application Server processes, Oracle Application Server processes, Java System Application Server processes, and Java 2 Enterprise Edition (J2EE) Application Server processes. |
| Claim: | 2. The method of claim 1 , wherein each of the programming engines is associated with the programming language including one or more of C, C++, C#, Visual Basic, and Java. |
| Claim: | 3. The method of claim 1 , wherein the communication interface comprises one or more of a C-based API, a C++-based API, a C#-based API, a Visual Basic-based API, and a Java-based API. |
| Claim: | 4. A system comprising: a processor coupled to a shared memory; a request-creation tool at a client to generate a request to perform a transaction; and an application server coupled to the client, the application server including a communication system to integrate first processes of the application server and second processes of the application server, wherein both the first processes and the second processes having specialized processes of an operating system of the application server, wherein the first and second processes are independent of each other, the first processes executing first programming transactions via a first programming engine of the application server, and the second processes executing second programming transactions via a second programming engine of the application server, wherein the first transactions are independent of the second transactions, the communication system including a shared memory accessed by the first and second processes using memory pipes to provide a common access to the shared memory, the shared memory to provide duplicate free data to eliminate potential data loss; and the application server further to facilitate bi-directional and unduplicated communication between the first processes and second processes via the shared memory, wherein the bi-directional communication comprises receiving requests and providing responses in response to the requests, the requests including one or more of Advanced Business Application Programming (ABAP)-related requests and Java-related requests, the first transactions including ABAP transactions, and the second transactions including Java transactions, the communication including one of the first programming engine and second programming engine performing an instruction according to a programming language to employ a handle as a communication end-point, the instruction including semantics of the programming language for accessing a socket, the shared memory serving as a common communication interface for the processes to communicate bi-directionally, wherein at least one socket is associated with each process of the first and second processes, and the sockets are further to serve as a user interface to expose the first and second processes to a user, and a network communication manager to receive the client request, wherein the network communication manager further to send the received client request to one of the first programming engine and second programming engine via the shared memory, wherein the first processes and second processes include one or more of Web Application Server processes, Unix Application Server processes, Microsoft Windows Application Server processes, Oracle Application Server processes, Java System Application Server processes, and Java 2 Enterprise Edition (J2EE) Application Server processes. |
| Claim: | 5. The system of claim 4 , wherein each of the programming engines is associated with the programming language including one or more of C, C++, C#, Visual Basic, and Java. |
| Claim: | 6. The system of claim 4 , wherein the communication interface includes one or more of a C-based API, a C++-based API, a C#-based API, a Visual Basic-based API, and a Java-based API a C-based API and a Java-based API. |
| Claim: | 7. A machine-readable storage medium comprising instructions which, when executed, cause a machine to perform a method comprising: integrating with a communication system of an application server first processes having specialized processes of an operating system of the application server, and second processes having specialized processes of the operating system, wherein the first and second processes are independent of each other, the first processes executing first programming transactions via a first programming engine of the application server, and the second processes executing second programming transactions via a second programming engine of the application server, wherein the first transactions are independent of the second transactions, the communication system further including a shared memory accessed by the first and second processes using memory pipes to provide a common access to the shared memory, the shared memory to provide duplicate free data to eliminate potential data loss; and facilitating bi-directional and unduplicated communication between the first processes and second processes via the shared memory, wherein the bi-directional and unduplicated communication comprises receiving requests and providing responses in response to the requests, the requests including one or more of Advanced Business Application Programming (ABAP)-related requests and Java-related requests, the first transactions including ABAP transactions, and the second transactions including Java transactions, the communication including one of the first programming engine and second programming engine performing an instruction according to a programming language to employ a handle as a communication end-point, the instruction including semantics of the programming language for accessing a socket, the shared memory serving as a common communication interface for the processes to communicate bi-directionally, wherein at least one socket is associated with each process of the first and second processes, and the sockets are further to serve as a user interface to expose the first and second processes to a user; receiving at a network communication manager of the application server a client request; and sending the received client request from the network communication manager of the application server to one of the first programming engine and second programming engine via the shared memory, wherein the first processes and second processes include one or more of Web Application Server processes, Unix Application Server processes, Microsoft Windows Application Server processes, Oracle Application Server processes, Java System Application Server processes, and Java 2 Enterprise Edition (J2EE) Application Server processes. |
| Claim: | 8. The machine-readable storage medium of claim 7 , each of the programming engines is associated with the programming language including one or more of C, C++, C#, Visual Basic, and Java. |
| Claim: | 9. The machine-readable storage medium of claim 7 , wherein the communication interface one or more of a C-based API, a C++-based API, a C#-based API, a Visual Basic-based API, and a Java-based API. |
| Current U.S. Class: | 717/114 |
| Patent References Cited: | 5331318 July 1994 Montgomery 5566302 October 1996 Khalidi et al. 5566315 October 1996 Milillo et al. 5617570 April 1997 Russell et al. 5682328 October 1997 Roeber et al. 5692193 November 1997 Jagannathan et al. 5710909 January 1998 Brown et al. 5745778 April 1998 Alfieri 5805790 September 1998 Nota et al. 5905868 May 1999 Baghai et al. 5909540 June 1999 Carter et al. 5926834 July 1999 Carlson et al. 5944781 August 1999 Murray 5951643 September 1999 Shelton et al. 5999179 December 1999 Kekic et al. 6038571 March 2000 Numajiri et al. 6065006 May 2000 deCarmo et al. 6075938 June 2000 Bugnion et al. 6092171 July 2000 Relph 6115712 September 2000 Islam et al. 6115721 September 2000 Nagy 6167423 December 2000 Chopra et al. 6199179 March 2001 Kauffman et al. 6216212 April 2001 Challenger et al. 6256712 July 2001 Challenger et al. 6272598 August 2001 Arlitt et al. 6282566 August 2001 Lee, Jr. et al. 6295582 September 2001 Spencer 6330709 December 2001 Maynard et al. 6336170 January 2002 Dean et al. 6345386 February 2002 Delo et al. 6349344 February 2002 Sauntry et al. 6356529 March 2002 Zarom 6356946 March 2002 Clegg et al. 6412045 June 2002 DeKoning et al. 6415364 July 2002 Bauman et al. 6424828 July 2002 Collins et al. 6425057 July 2002 Cherkasova et al. 6438654 August 2002 Elko et al. 6467052 October 2002 Kaler et al. 6519594 February 2003 Li 6553377 April 2003 Eschelbeck et al. 6587937 July 2003 Jensen et al. 6591347 July 2003 Tischler et al. 6601112 July 2003 O'Rourke et al. 6615253 September 2003 Bowman-Amuah 6640244 October 2003 Bowman-Amuah 6643802 November 2003 Frost et al. 6651080 November 2003 Liang et al. 6654948 November 2003 Konuru et al. 6658478 December 2003 Singhal et al. 6681251 January 2004 Leymann et al. 6687702 February 2004 Vaitheeswaran et al. 6738977 May 2004 Berry et al. 6760911 July 2004 Ye 6766419 July 2004 Zahir et al. 6769022 July 2004 DeKoning et al. 6772409 August 2004 Chawla et al. 6795856 September 2004 Bunch 6799202 September 2004 Hankinson et al. 6829679 December 2004 DeSota et al. 6854114 February 2005 Sexton et al. 6879995 April 2005 Chinta et al. 6970925 November 2005 Springmeyer et al. 7003770 February 2006 Pang et al. 7024512 April 2006 Franaszek et al. 7024695 April 2006 Kumar et al. 7058957 June 2006 Nguyen 7089566 August 2006 Johnson 7124170 October 2006 Sibert 7127472 October 2006 Enokida et al. 7127713 October 2006 Davis et al. 7130891 October 2006 Bernardin et al. 7149741 December 2006 Burkey et al. 7155512 December 2006 Lean et al. 7165239 January 2007 Hejlsberg et al. 7191170 March 2007 Ganguly et al. 7194761 March 2007 Champagne 7203769 April 2007 Schnier 7216160 May 2007 Chintalapati et al. 7237140 June 2007 Nakamura et al. 7246167 July 2007 Kalmuk et al. 7254634 August 2007 Davis et al. 7296267 November 2007 Cota-Robles et al. 7302423 November 2007 De Bellis 7373647 May 2008 Kalmuk et al. 7386848 June 2008 Cavage et al. 7395338 July 2008 Fujinaga 2001/0029520 October 2001 Miyazaki et al. 2002/0046325 April 2002 Cai et al. 2002/0049767 April 2002 Bennett 2002/0052914 May 2002 Zalewski et al. 2002/0073283 June 2002 Lewis et al. 2002/0078060 June 2002 Garst et al. 2002/0093487 July 2002 Rosenberg 2002/0099753 July 2002 Hardin et al. 2002/0129264 September 2002 Rowland et al. 2002/0133805 September 2002 Pugh et al. 2002/0147888 October 2002 Trevathan 2002/0169926 November 2002 Pinckney et al. 2002/0174097 November 2002 Rusch et al. 2002/0181307 December 2002 Fifield et al. 2002/0198953 December 2002 O'Rourke et al. 2003/0009533 January 2003 Shuster 2003/0014521 January 2003 Elson et al. 2003/0014552 January 2003 Vaitheeswaran et al. 2003/0023827 January 2003 Palanca et al. 2003/0028671 February 2003 Mehta et al. 2003/0037178 February 2003 Vessey et al. 2003/0058880 March 2003 Sarkinen et al. 2003/0084248 May 2003 Gaither et al. 2003/0084251 May 2003 Gaither et al. 2003/0088604 May 2003 Kuck et al. 2003/0093420 May 2003 Ramme 2003/0093487 May 2003 Czajkowski et al. 2003/0097360 May 2003 McGuire et al. 2003/0105887 June 2003 Cox et al. 2003/0115190 June 2003 Soderstrom et al. 2003/0120811 June 2003 Hanson et al. 2003/0131010 July 2003 Redpath 2003/0131286 July 2003 Kaler et al. 2003/0177356 September 2003 Abela 2003/0177382 September 2003 Ofek et al. 2003/0187927 October 2003 Winchell 2003/0191795 October 2003 Bernardin et al. 2003/0195923 October 2003 Bloch et al. 2003/0196136 October 2003 Haynes et al. 2003/0200526 October 2003 Arcand 2003/0212654 November 2003 Harper et al. 2003/0229760 December 2003 Doyle et al. 2004/0003033 January 2004 Kamen et al. 2004/0024610 February 2004 Fradkov et al. 2004/0024881 February 2004 Elving et al. 2004/0024971 February 2004 Bogin et al. 2004/0045014 March 2004 Radhakrishnan 2004/0117441 June 2004 Liu et al. 2004/0128370 July 2004 Kortright 2004/0167980 August 2004 Doyle et al. 2004/0168029 August 2004 Civlin 2004/0181537 September 2004 Chawla et al. 2004/0187140 September 2004 Aigner et al. 2004/0205144 October 2004 Otake 2004/0205299 October 2004 Bearden 2004/0213172 October 2004 Myers et al. 2004/0215703 October 2004 Song et al. 2004/0215883 October 2004 Bamford et al. 2004/0221285 November 2004 Donovan et al. 2004/0221294 November 2004 Kalmuk et al. 2005/0021594 January 2005 Bernardin et al. 2005/0021917 January 2005 Mathur et al. 2005/0027943 February 2005 Steere et al. 2005/0044197 February 2005 Lai 2005/0044301 February 2005 Vasilevsky et al. 2005/0055686 March 2005 Buban et al. 2005/0060704 March 2005 Bulson et al. 2005/0071459 March 2005 Costa-Requena et al. 2005/0086656 April 2005 Whitlock et al. 2005/0086662 April 2005 Monnie et al. 2005/0125503 June 2005 Iyengar et al. 2005/0138193 June 2005 Encarnacion et al. 2005/0160396 July 2005 Chadzynski 2005/0180429 August 2005 Ghahremani et al. 2005/0188068 August 2005 Kilian 2005/0198199 September 2005 Dowling 2005/0216502 September 2005 Kaura et al. 2005/0256880 November 2005 Nam Koong et al. 2005/0262181 November 2005 Schmidt et al. 2005/0262493 November 2005 Schmidt et al. 2005/0262512 November 2005 Schmidt et al. 2005/0268238 December 2005 Quang et al. 2005/0268294 December 2005 Petev et al. 2005/0278274 December 2005 Kovachka-Dimitrova et al. 2005/0278346 December 2005 Shang et al. 2006/0053112 March 2006 Chitkara et al. 2006/0053425 March 2006 Berkman et al. 2006/0059453 March 2006 Kuck et al. 2006/0064545 March 2006 Wintergerst 2006/0064549 March 2006 Wintergerst 2006/0070051 March 2006 Kuck et al. 2006/0092165 May 2006 Abdalla et al. 2006/0094351 May 2006 Nowak et al. 2006/0129512 June 2006 Braun et al. 2006/0129546 June 2006 Braun et al. 2006/0129981 June 2006 Dostert et al. 2006/0143328 June 2006 Fleischer et al. 2006/0143359 June 2006 Dostert et al. 2006/0143389 June 2006 Kilian et al. 2006/0143392 June 2006 Petev et al. 2006/0143609 June 2006 Stanev 2006/0143618 June 2006 Fleischer et al. 2006/0143619 June 2006 Galchev et al. 2006/0150197 July 2006 Werner 2006/0155867 July 2006 Kilian et al. 2006/0159197 July 2006 Kraut et al. 2006/0167980 July 2006 Werner 2006/0168646 July 2006 Werner 2006/0168846 August 2006 Juan 2006/0206856 September 2006 Breeden et al. 2006/0294253 December 2006 Linderman 2007/0150586 June 2007 Kilian et al. 2007/0156907 July 2007 Galchev et al. 2007/0266305 November 2007 Cong et al. 0 459 931 December 1991 1380941 January 2004 1027796 June 2004 2365553 February 2002 WO 00/23898 April 2000 WO03073204 September 2003 WO2004038586 May 2004 |
| Other References: | White Paper: ‘Using Rules-based Object Caching’, spiritsoft /spiritcache 4.0 2004. cited by other “JSR 107: JCACHE”, JSR 107: JCACHE—Java Temporary Caching API, Website, http://web1.jcp.org/en;jsr/detail?id=107, Nov. 28, 2004., 4. cited by other “What is LDAP?”, http://www.gracion.com/server/whatldap.html, (Dec. 7, 2004). cited by other Barrett, Ryan , Barrett, Ryan, P4 Protocol Specification, Sep. 2001, p. 1-12. cited by other Casavant, T. L., et al., ““A Taxonomy of Scheduling in General-Purpose Distributed Computing Systems””, Casavant, T.L., and Kuhl, J.G., “A Taxonomy of Scheduling in General-Purpose Distributed Computing Systems,” IEEE 14(2):141-154, (1988) XP000039761., (1988), 141-154. cited by other Dandamudi, S. P., “Reducing Run Queue Contention in Shared Memory Multiprocessors”, Dandamudi, S.P., “Reducing Run Queue Contention in Shared Memory Multiprocessors,” IEEE pp. 82-89 (1997) XP000657329., (1997), 82-89. cited by other Handy, Jim , “The Cache Memory Book”, 1998, Academic Press Inc, 2nd Edition, pp. 60, (1998), vii-229. cited by other Hennessy, John , et al., “Computer Organization and Design”, 1998, Morgan Kaufmann Publishers Inc., 2nd Edition, pp. 575-576. cited by other Jagannathan, et al., “High-Level Abstraction for Efficient Concurrent Systems”, NEC Research Institute, Section 5.2, (Mar. 1994), 20. cited by other Oetiker, Tobias , “SEPP Software Installation and Sharing System”, Proceedings of the Twelfth Systems Administration Conference (LISA '98), Boston, Massachusetts, (Dec. 6-11, 1998), pp. 253-260. cited by other Pasin, Marcia, et al., “High-Available Enterprise JavaBeans Using Group Communication System Support”, Pasin et al., “High-Available Enterprise JavaBeans Using Group Communication System Support”, pp. 1-6, XP002285985., 1-6. cited by other Polk, Jennifer , et al., “Oracle Database Net Services Administrator's Guide 10g Release 1 (10.1)”, URL: http://download-west.oracle.com/docs/cd/B19306—01/network.102/b14212.pdf>; Oct. 2005; retrieved on Apr. 26, 2007., reference No. XP002431369, (Oct. 2005), 1-29. cited by other Rosenberg, David , “Bringing Java to the Enterprise: Oracle on its Java Server Strategy”, IEEE Internet Computing IEEE USA, vol. 2, No. 2; Database accession No. 5902816, XP002431362; ISSN: 1089-7801, (Mar. 2, 1998), 52-59. cited by other Salo, Timo , et al., “Object Persistance Beyond Serialization”, Increasing Productivity and Reducing Maintenance, Dr. Dobb's Journal, M7T Publ., vol. 24, No. 5, May 1999, pp. 5. XP000925486. ISSN: 1044-789X. cited by other Salo, Timo , et al., “Persistance in Enterprise JavaBeans Applications”, pp. 3, JOOP, Jul. 1999, XP-002142904. cited by other Smits, Thomas , “Unbreakable Java—The Java Server that Never Goes Down”, Thomas Smits, “Unbreakable Java”, The Java Server that Never Goes Down, Nov. 2004, pp. 1-5., Source Date: Nov. 2004. FIP Program made me elect a day so I chose day 1 because I couldn't get to the next screen to load art. Carla Vignola Jul. 10, 2007, (Nov. 2004), 5. cited by other Srinivasan, V. , et al., “Object Persistance in Object-Oriented Applications”, IBMSystems Journal, IBM Corp., vol. 36, No. 1, 1997, pp. 11, XP000685709, ISSN: 0018-8670. cited by other Stark, Ian, “CS2 Advanced Programming in Java Note 9”, 2002, pp. 1-5. cited by other Tanenbaum, A. S., “Multimedia Operating Systems”, Tanenbaum, A.S., Modern Operating Systems, 2nd Edition, Upper Saddle River, New Jersey: Prentice-Hall, Inc., pp. 531-578 (2001). English Translation of: Moderne Betriebssysteme, vol. 2, pp. 539-617, (2002) XP002385695., (2002), 539-617. cited by other Tuttle, Steven , et al., “Understanding LDAP Design and Implementation”, IBM.com Redbooks, (Jun. 2004), 1-774. cited by other Werner, Randolf , “Connection of Clients for Management of Systems”, U.S. Appl. No. 11/026,604, filed Dec. 30, 2004. cited by other Werner, Randolf , “Interface for External System Management”, U.S. Appl. No. 11/027,812, filed Dec. 29, 2004. cited by other Werner, Randolf , “Security for External System Management”, U.S. Appl. No. 11/026,323, filed Dec. 29, 2004. cited by other Yue, K. K., et al., “An Effective Processor Allocation Strategy for Multiprogrammed Shared-Memory Multiprocessors”, Yue, K.K. and Lilia, D.J., “An Effective Processor Allocation Strategy for Multiprogrammed Shared-Memory Multiprocessors,” IEEE 8(12):1246-1258, (1997). cited by other ““Design Overview””, 2003 Sun Microsystems, http://java.sun.com.j2se/1.5.0/docs/guied/jni/spec/design.html, retrieved on Jan. 18, 2008. cited by other “6570P189 OA Mailed Mar. 31, 2008 for U.S. Appl. No. 11/025,378”, (Mar. 31, 2008), Whole Document. cited by other “6570P207 FOA Mailed Aug. 17, 2007 for U.S. Appl. No. 11/013,277”, (Aug. 17, 2007), Whole Document. cited by other “6570P207 OA Mailed Jan. 7, 2008 for U.S. Appl. No. 11/013,277”, (Jan. 7, 2008), Whole Document. cited by other “6570P207 OA Mailed Mar. 12, 2007 for U.S. Appl. No. 11/013,277”, (Mar. 12, 2007), Whole Document. cited by other “6570P208 FOA Mailed Aug. 17, 2007 for U.S. Appl. No. 11/013,278”, (Aug. 17, 2007), Whole Document. cited by other “6570P208 OA Mailed Feb. 5, 2008 for U.S. Appl. No. 11/013,278”, (Feb. 5, 2008), Whole Document. cited by other “6570P208 OA Mailed Mar. 16, 2007 for U.S. Appl. No. 11/013,278”, (Mar. 16, 2007), Whole Document. cited by other “6570P216 OA Mailed Jan. 24, 2008 for U.S. Appl. No. 11/024,393”, (Jan. 24, 2008), Whole Document. cited by other “6570P217 OA Mailed Feb. 21, 2008 for U.S. Appl. No. 11/027,812”, (Feb. 21, 2008), Whole Documents. cited by other “6570P220 OA Mailed Jan. 10, 2008 for U.S. Appl. No. 11/027,387”, (Jan. 10, 2008), Whole Document. cited by other “6570P220 OA Mailed Apr. 19, 2007 for U.S. Appl. No. 11/027,387”, (Apr. 19, 2007), Whole Document. cited by other “All Classes”, http://www.jdocs.com/osche/2.0.2/api/com/opensymphony/oscache/base/allclases-frame.html, (Jan. 2004), 1. cited by other “All Classes, Packages”, http://www.jdocs.com/osche/2.0.2/api/overview-frame.html, OSCache 2.0.2, (Jan. 2004), 1. cited by other “Caching with IBM WebSphereMQ”, spiritcache, Use Case & Code Example, article, (Nov. 19, 2004), 1-9. cited by other “Class AbstractCacheAdministrator”, http://www.jdocs.com/osche/2.0.2/api/com/opensymphony/oscache/base/AbstractCache.html, (Jan. 2004), 1-11. cited by other “Class Cache”, http://www.jdocs.com/osche/2.0.2/api/com/opensymphony/oscache/base/Cache.html, (Jan. 2004), 1-16. cited by other “Class CacheEntry”, http://www.jdocs.com/osche/2.0.2/api/com/opensymphony/oscache/base/CacheEntry.html, (Jan. 2004), 1-8. cited by other “Class Config”, http://www.jdocs.com/osche/2.0.2/api/com/opensymphony/oscache/base/Config.html, (Jan. 2004), 1-4. cited by other “EP 05027361, European Search Report”, (Mar. 28, 2006), Whole Document. cited by other “Failover for Clustered RMI-P4 Remote Objects”, SAP Library, http://help.sap.com/saphelp—nw04/helpdata/en/f6/4ef11ab3a52f408aa8a133f33d6cf1/cont, (Nov. 2004), 1-3. cited by other “Failover for Enterprise Beans”, SAP Library, http://help.sap.com/saphelp—nw04/helpdata/en/8f/d6e45953a494499ea1b79ab16321/d2/cont, (Nov. 2004), 1-3. cited by other “Failover System”, SAP Library, http://help.sap.com/saphelp—nw04/helpdata/en/d7/57af0cce55143be5de3a6e4911186.cont, (Nov. 2004), 2. cited by other “High Availability and Failover”, SAP Library, http://help.sap.com/saphelp—nw04/helpdata/en/6c/209da105668c45be12f1d9cc412e2b/cont, (Nov. 2004), 1-2. cited by other “Http Sessions and Failover of Web Application”, SAP Library, http://help.sap.com/saphelp—nw04/helpdata/en/90/044cc585eaba42b649f16181b0fdf/cont., (Nov. 2004), 1. cited by other “Introducing Cache-Forward Architecture”, ObjectStore, paper, (Jan. 1, 2004), 1-23. cited by other “Java Technology in SAP Web Application Server”, SAP Library, http://help.sap.com/saphelp—nw04/helpdata/en/0d/a3bbeff62847ae10000000a114084/cont, (Nov. 2004), 1-3. cited by other “Java VineetB-log.java”, http://homepage.mac.com/vineetb/iblog/C684524823/, (Dec. 18, 2003), 1. cited by other “JCS Plugin Overview”, http://jakarta.apache.org/jcs/Plugins.html, (Jul. 2004), 2. cited by other “JSR 107: JCACHE-Java Temporary Caching API”, http://.jcp.org/en/jsr/detail?id=107, (Mar. 20, 2007), 5. cited by other “Load Balancing of the SAP Web As for Java Applications”, SAP Library, http://help.sap.com/saphelp—nw04/helpdata/en/b5/e8239ef7bd494f896a84625d4b688f/cont., (Nov. 2004), 2. cited by other “Managers—Intro”, http://db.apache.org/torque-32/managers-cache.html, (Apr. 11, 2002), 1-4. cited by other “Open Source Cache Solutions in Java”, http://java-source.net/open-source/cache-solutions, (Nov. 2004), 1-3. cited by other “OSCache”, http;//www.opensymphony.com/oscache, (Nov. 2004), 1. cited by other “OSCache 2.0.2”, http://www.jdocs.com/osche/2.0.2/api/com/opensymphony/oscache/base/overview-frame.html, (Jan. 2004), 1. cited by other “OSCache, V 2.0.2 API Specification”, http://www.jdocs.com/osche/2.0.2/api/com/opensymphony/oscache/base/overview-sum.html, (Jan. 2004), 2. cited by other “SAP Beefs Up Java Support Capabilities For New NetWeaver”, News Story, (Computerworld). http:www.computerworld.com/printthis/2004/0,4814,96558,00.html, (Oct. 11, 2004), 1-2. cited by other “SAP NetWeaver Makes Standard Java Robust”, http://www.sap.com/company/press/press.epx?pageview=print&pressid=3069, (Oct. 5, 2004), 1-2. cited by other “SAP Presents New Capabilities for NetWeaver”, InfoWorld, http://www.infoworld.com/article/04/10/06/HNsapnetweaver—1.html, (Oct. 6, 2004), 1-5. cited by other “Shared disk I/O cache”, IP.com Journal, IP.com Inc., West Henrietta, XP013014199 ISSN: 1533-0001, (Jan. 29, 2004), 6. cited by other “spiritcache”, http://www.spirit-soft.com/index.do?id=30, (Nov. 2004), 1. cited by other “System and Method for Shared Memory/File System Java ObjectGroup Clustered JVM”, http://www.priorartdatabase.com/IPCOM/000021597/, (Jan. 2004), 3. cited by other “turbine-jcs-dev”, http://www.mail-archive.com/turbine-jcs-dev@jakarta.apache.org/msg00647.html, (Jul. 13, 2004), 1-3. cited by other “Using Rules-based Object Caching: Allocating dataresources for best service levels to profitable customers”, spiritcache, White paper, (Nov. 2004), 1-8. cited by other “WebLogic RMI Feature and Guidelines”, eDocs, http://e-docs.bea.com/wls/docs90/rmi/rmi—api.html, (Nov. 2004), 1-7. cited by other Barker, et al., ““A load balancing framework for adaptive and asynchronous applications””, Parallet and Distributed Systems, IEEE Transactions on vol. 15, Issue 2, (Feb. 2004), pp. 183-192. cited by other Bortvedt, Jerry, “Functional Specification for Object Caching Service for Java (OCS4J), 2.0”, (Aug. 9, 2000), pp. 1-27. cited by other Bryce, Ciaran , “Isolates: A New Approach to Multi-Programming in Java Platforms”, LogOn Technology Transfer, Kronerg, Germany, Experts' Corner, (May 2004), 7. cited by other Conte, Thomas, “Implementing OSCache”, http://www.pas.net.tom.articles/oscache/en/, (Jun. 2002), 1-4. cited by other Czajkowski, Grzegorz, et al., “A Multi-User Virtual Machine”, Paper, Sun Microsystems Laboratories and S3 Lab, Purdue University, West Lafayette, IN, (2003), 14. cited by other Czajkowski, Grzegorz , “Multitasking without Compromise: A Virtual Machine Evolution”, Paper, Sun Microsystems Laboratories, (2001), 1-14. cited by other Dagfinn, Parnas , “SAP Virtual Machine Container”, https://weblogs.sdn.sap.com/pub/wlg/940, (Oct. 23, 2004), 1-4. cited by other Davies, Robert , “Data Caching: A Prerequisite to the Enterprise Service Bus”, Business Integration Journal, (Oct. 2003), 41-44. cited by other Dillenberger, D. , et al., “Building a java Virtual Machine For Serve Applications: The Jvm On Os/390”, IBM Systems Journal, vol. 39, No. 1, (2000), 194-210. cited by other Doyle, Patrick , et al., “A Modular and Extensible JVM Infrastructure”, Paper, Edward S. Rogers Sr. Department of Electrical and Computer Engineering, University of Toronto, Toronto, Ontario, Canada, (Jul. 2002), 14. cited by other Dwarkadas, Sandhya , et al., “Cashmere-VLM: Report Memory Paging for Software Distributed Shared Memory”, Paper, Compaq Cambridge Research Lab, Cambridge, MA and Department of Computer Science, University of Rochester, Rochester, NY, (Apr. 1999), 7. cited by other Ferguson, Renee B., “SAP Preps New NetWeaver Capabilities”, eWeek.com, http://www.eweek.com/article2/0,1759,1668146,00.asp, (Oct. 7, 2004), 1-6. cited by other Gontmakher, Alex , et al., “Characterizations for Java Memory Behavior”, Paper, Computer Science Department, Technion, (1997), 5. cited by other Jagannathan, “High-Level Abstraction for Efficient Concurrent Systems”, NEC Research Institute, Section 5.2, (Mar. 1994), 20. cited by other Jordan, Mick , et al., “Extending a J2EE Server with Dynamic and Flexible Resource Management”, Paper, Sun Microsystems, Inc, and School of Computer Science, University of Waterloo, Waterloo, ON, Canada, (Oct. 2004), 20. cited by other Jordan, Mick , et al., “Scaling J2EE Application Servers with the Multi-Tasking Virtual Machine”, Paper, Sun Microsystems, SMLI TR-2004-135, Jun. 2004, pp. 1-19, Paper, Sun Microsystems, SMLI TR-2004-135, (Jun. 2004), 1-19. cited by other Kuck, Norbert , et al., “SAP VM Container: Using Process Attachable Virtual machines to Provide Isolation and Scalability For Large Servers”, Article, SAP AG, Walldorf, Germany, (2002), 1-2. cited by other Loosco, Marcelo , et al., “A New Distributed Java Virtual Machine for Cluster Computing”, Notes in Computer Science, Springer-Verlag, v. 2790, (2003), 1207-1215. cited by other Luck, Greg , “Ehcache 1.0 released”, http://www.theserverside.com/news, (Oct. 9, 2004), 1-5. cited by other March, Andres ,“OSCache: Change Log”, http://www.opensymphony.com/oscache/wiki/Change%20Log.html, (Jan. 18, 2004), 1-11. cited by other Marinescu, Floyd, “SpiritSoft Announces Availability of SpriCache 2.0”, http://www.theserverside.com/news/thread.tss?thread—id=18483, (Mar. 21, 2003), 1-5. cited by other Movva, Sudhir , et al., “Transparent Clustered Database Failover Using JAVA”, http://www.quest-pipelines.com/newsletter-v5/0604—A.html, (Apr. 2004), 11. cited by other Parnas, Dagfinn , “SAP Virtual Machine Container”, https://weblogs.sdn.sap.com/pub/wlg/940, (Oct. 23, 2004), 1-4. cited by other Penchikala, Srini , “J2EE Object-Caching Frameworks”, http://www.javaworld.com/javaworld/jw-05-2004/jw-0531-cache—p.html, (May 31, 2004), Whole Document. cited by other Penchikala, Srini , “Object Caching in a Web Portal Application Using JCS”, http://www.onjava.com/pub/a/onjava/2003/caching.html, (Dec. 23, 2003), 1-18. cited by other Petev, Petio G., et al., “First in First Out Eviction Implementation”, 6570P255 U.S. Appl. No. 11/024,546, filed Dec. 28, 2004, Office Action mailed Apr. 6, 2007, claims as they stood in the application prior to the mailing of the Office Action an cl, (Dec. 28, 2004), Whole Document. cited by other Petev, Petio G., et al., “Sized Based Eviction Implementation”, U.S. Appl. No. 11/024,591, filed Dec. 28, 2004, Office Action mailed Apr. 13, 2007, claims as they stood in the application prior to the mailing of the Office Action and claims pr, (Dec. 28, 2004), Whole Document. cited by other Smits, Thomas , “Unbreakable Java—The Java Server that Never Goes Down”, Article, SAP TechED, Nov. 2004, San Diego and Munich, (Nov. 2004), 1-5. cited by other Stark, “Concurrent Programming In Java”, CS2 Advanced Programming in Java note 9, S2Bh, (Jan. 3, 2002), 1-5. cited by other Surdeanu, et al., ““Design and performance analysis of a distributed Java Virtual Machine””, Parallel and Distributed Systems, IEEE Transactions on vol. 13, Issue 6, (Jun. 2002), pp. 611-627. cited by other Tullman, Patrick , et al., “Janos: A Java-Oriented OS for Active Network Nodes”, Paper, Flux Research Group, University of Utah, (Mar. 2001), 14. cited by other Wintergerst, Michael , et al., “Programming Models for Eviction Policies”, U.S. Appl. No. 11/025,178, filed Dec. 28, 2004, Office Action mailed Feb. 1, 2007, claims as they stood in the application prior to the mailing of the Office Action, (Dec. 28, 2004), Whole Document. cited by other “6570P208 FOA Mailed Aug. 13, 2008 for U.S. Appl. No. 11/013,278 Whole Document”, (Aug. 13, 2008). cited by other Bresch, Stefan , “Object-relational mapping system and method for generic relationships”, 6570P165 U.S. Appl. No. 10/864,185, filed Jun. 8, 2004—Final Office Action mailed Mar. 17, 2008. cited by other Galchev, Galin , “Plug-In Based Caching Architecture Capable of Implementing Multiple Cache Regions Per Application”, U.S. Appl. No. 11/024,554, filed Dec. 28, 2004—Non-Final Office Action mailed May 28, 2008, 7 pgs. cited by other Nikolov, Nikolai , “Execution of modified byte code for debugging, testing and/or monitoring of object oriented software”, 6570P041 U.S. Appl. No. 10/749,617, filed Dec. 30, 2003—Non-Final Office ction mailed Apr. 9, 2008. cited by other Petev, Petio , et al., “Least frequently used eviction implementation”, U.S. Appl. No. 11/024,565, filed Dec. 28, 2004—Non-Final Office Action mailed Jun. 19, 2008, 20. cited by other Petev, Petio G., “Programming Models For Storage Plug-Ins”, U.S. Appl. No. 11/024,651, filed Dec. 28, 2004—Non-Final Office Action mailed Mar. 14, 2008, 11 pgs. cited by other USPTO, “6570P189 FOA Mailed Aug. 14, 2008 for U.S. Appl. No. 11/025,378”, Whole Document. cited by other USPTO, “6570P214 OA Mailed Jun. 27, 2008 for U.S. Appl. No. 11/024,391”, Whole Document. cited by other USPTO, “6570P216 FOA Mailed Aug. 6, 2008 for U.S. Appl. No. 11/024,393”, Whole Document. cited by other USPTO, “6570P217 FOA Mailed Aug. 19, 2008 for U.S. Appl. No. 11/027,812”, Whole Document. cited by other USPTO, “6570P218 OA Mailed Sep. 4, 2008 for U.S. Appl. No. 11/026,323”, Whole Document. cited by other USPTO, “6570P222 OA Mailed Apr. 4, 2008 for U.S. Appl. No. 11/024,392”, Whole Document. cited by other USPTO, “Non-Final Office Action”, U.S. Appl. No. 11/322,057, (6570P221), Whole Document. cited by other Final Office Action for U.S. Appl. No. 11/024,554, Mailed Nov. 26, 2008, 15 pages. cited by other Non-Final Office Action for U.S. Appl. No. 11/024,393, Mailed Nov. 26, 2008, 29 pages. cited by other Non-Final Office Action for U.S. Appl. No. 11/013,278, Mailed Dec. 23, 2008, 28 pages. cited by other Non-Final Office Action for U.S. Appl. No. 11/026,604, Mailed Dec. 30, 2008, 18 pages. cited by other Final Office Action for U.S. Appl. No. 11/025,514, Mailed Jan. 8, 2009, 10 pages. cited by other Non-Final Office Action for U.S. Appl. No. 11/322,596, Mailed Jan. 23, 2009, 12 pages. cited by other Non-Final Office Action for U.S. Appl. No. 11/026,604, Mailed Jan. 27, 2009, 18 pages. cited by other Non-Final Office Action for U.S. Appl. No. 11/024,924, Mailed Apr. 10, 2008, 16 pages. cited by other Final Office Action for U.S. Appl. No. 11/024,924, Mailed Oct. 8, 2008, 9 pages. cited by other Office Action mailed Mar. 11, 2008 for U.S. Appl. No. 11/024,591, pp. 15., 15. cited by other Office Action mailed Mar. 17, 2008 for U.S. Appl. No. 11/024,546, pp. 18., 18. cited by other Office Action mailed Jun. 19, 2008 for U.S. Appl. No. 11/024,565, pp. 22., 22. cited by other Non-Final Office Action mailed Oct. 6, 2008 for U.S. Appl. No. 11/119,08. cited by other Non-Final Office Action for U.S. Appl. No. 11/024,524, Mailed Nov. 12, 2008, 31 pages. cited by other Tanenbaum, Andrews S., “Structured Computer Organization”, Prentice-Hall, Inc., 2nd Edition, (1984), 10-12. cited by other USPTO, “6570P220 OA Mailed Oct. 3, 2008 for U.S. Appl. No. 11/027,387”, Whole Document. cited by other Notice of Allowance for U.S. Appl. No. 11/024,392, Mailed Mar. 12, 2009, Whole Document. cited by other Final Office Action for U.S. Appl. No. 11/013,277, Mailed Aug. 7, 2008, Whole Document. cited by other Non-Final Office Action for U.S. Appl. No. 11/013,277, Mailed Jan. 6, 2009, Whole Document. cited by other Notice of Allowance for U.S. Appl. No. 11/024,393, Mailed Apr. 1, 2009, Whole Document. cited by other Office Action for U.S. Appl. No. 11/025,200, Mailed Mar. 24, 2009, Whole Document. cited by other Office Action for U.S. Appl. No. 11/025,514, Mailed Apr. 3, 2009, Whole Document. cited by other Non-Final Office Action for U.S. Appl. No. 11/027,812, Mailed Apr. 2, 2009, Whole Document. cited by other Bortvedt, Jerry , “Functional Specification for Object Caching Service for Java (OCS4J) 2.0”, retrieved from http://jcp.org/en/jsr/detail?id=107, (Mar. 2001). cited by other Cheung, KC , et al., “Lightweight Trace and Interpreter for Inter-process Timing Problems”, IP.com Journal, IP.com Inc., West Henrietta, NY US, XP013096988, ISSN: 1533-0001, (Jun. 1, 1992), Whole Document. cited by other EPO, “6570P210EP EP Search Report Mailed Jun. 4, 2008 for EP Patent Application 05027365.5-1225”, (Jun. 4, 2008), Whole Document. cited by other USPTO, “6570P171 OA Mailed Oct. 29, 2008 for U.S. Appl. No. 11/149,562”, Whole Document. cited by other USPTO, “6570P189 FOA Mailed Aug. 22, 2007 for U.S. Appl. No. 11/025,378”, Whole Document. cited by other USPTO, “6570P189 OA Mailed Jan. 21, 2009 for U.S. Appl. No. 11/025,378”, Whole Document. cited by other USPTO, “6570P189 OA Mailed Apr. 19, 2007 for U.S. Appl. No. 11/025,378”, Whole Document. cited by other Viswanathan, D. , et al., “Java Virtual Machine Profiler Interface”, IBM Systems Journal IBM USA, vol. 39, No. 1, XP002481425, ISSN: 0018-8670, (2000), 82-95. cited by other Wolczko, Mario , “Using a Tracing Java Virtual Machine to Gather Data on the Behavior of Java Programs”, Internet Citation, XP002375976, http://research.sun.com/people/mario/tracing-jvm/tracing.pdf, (Retrieved on Apr. 6, 2006), Whole Document. cited by other Non-Final Office Action for U.S. Appl. No. 11/025,525, Mailed Feb. 19, 2009, 15 pages. cited by other Notice of Allowance for U.S. Appl. No. 11/027,387, Mailed Feb. 23, 2009, 8 pages. cited by other Notice of Allowance for U.S. Appl. No. 11/026,323, Mailed Feb. 25, 2009, 19 pages. cited by other Non-Final Office Action for U.S. Appl. No. 11/024,924, Mailed Apr. 24, 2009, 15 pages. cited by other Non-Final Office Action for U.S. Appl. No. 11/024,394, Mailed Apr. 27, 2009, 33 pages. cited by other Final Office Action for U.S. Appl. No. 11/024,524, Mailed Apr. 27, 2009, 21 pages. cited by other Non-Final Office Action for U.S. Appl. No. 11/322,057 dated May 29, 2009; 13 pages. cited by other Notice of Allowance for U.S. Appl. No. 11/013,278, Mailed Jun. 11, 2009, 25 pages. cited by other |
| Assistant Examiner: | Hwa, Shyue Jiunn |
| Primary Examiner: | Y, Truong Cam |
| Attorney, Agent or Firm: | Blakely Sokoloff Taylor & Zafman |
| Dokumentencode: | edspgr.07600217 |
| Datenbank: | USPTO Patent Grants |
| Abstract: | A system and method are described for performing data processing using shared memory and socket-like application programming interface. In one embodiment, a plurality of handles is employed and associated with a plurality of processes. The plurality of handles may serve as communication end-points for communication of data. Further, an application programming interface is employed to present the plurality of handles as the application programming interface for sockets for facilitating the communication of data compatible with a programming language. The data is communicated between the plurality of processes via the socket-like plurality of handles. |
|---|