IP Library Granted Patent US 8,060,856
Granted Patent B2
US 8,060,856 · App. 11/281,936 · Granted Nov 15, 2011

Native objects accessible by platform neutral API

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,060,856
App. No.
11/281,936
Granted
Nov 15, 2011
Kind
B2
Abstract

An object is developed using an operating system neutral application programming interface (API). The object is complied for a designated operating system that includes native objects and supports an API for accessing native objects of the operating system. The compiled object includes logic code, a native object interop for accessing the logic code using the API for accessing native objects of the operating system, and a platform-neutral interop for accessing the logic code using the operating system neutral API.

Claims (40)

1. A method for creating an object, the method comprising:

developing an object using an operating system neutral application programming interface (API);

designating an operating system, the operating system supporting a native object model used by native objects and supporting an API for accessing native objects of the operating system;

determining the native object model used by the designated operating system; and

compiling, with a processor, the object for the designated operating system according to the determined native object model to generate a compiled object of the native object model, the compiled object comprising:

logic code;

a native object interop for accessing the logic code using the API for accessing native objects of the determined native object model used by the designated operating system; and

a platform-neutral interop for accessing the logic code using the operating system neutral API, wherein the platform-neutral interop is layered on top of the native object interop and translates between the operating system neutral API and the API for accessing native objects.

2. The method of claim 1 further comprising:

designating a second operating system, the second operating system including native objects and an API for accessing native objects of the second operating system; and

compiling the object for the second operating system to generate a second compiled object, the second compiled object comprising:

the logic code;

a second native object interop for accessing the logic code using the API for accessing native objects of the second operating system;

the platform-neutral interop for accessing the logic code using the operating system neutral API.

3. The method of claim 1 wherein the native objects are Component Object Model (COM) objects.

4. The method of claim 1 wherein the native objects are Distributed Objects (DO) objects.

5. The method of claim 1 wherein the operating system neutral API is an abstraction of the APIs for accessing native objects of the operating system.

6. The method of claim 1 wherein developing the object using an operating system neutral application programming interface (API) comprises statically linking to a library that implements the operating system neutral API.

7. The method of claim 1 wherein the compiled object is linked to a client at runtime and is executable by the client.

8. A processing system comprising:

a processor for determining a native object model used in a designated operating system;

a storage storing the operating system, the operating system including native objects having a native object model and supporting an application programming interface (API) for accessing native objects of the operating system; and

a memory, the memory storing an object that includes:

logic code;

a native object interop for accessing the logic code using the API for accessing native objects of the determined native object model used by the designated operating system; and

a platform-neutral interop for accessing the logic code using an operating system neutral API, wherein the platform-neutral interop is layered on top of the native object interop and translates between the operating system neutral API and the API for accessing native objects.

9. The system of claim 8 wherein the native objects are Component Object Model (COM) objects.

10. The system of claim 8 wherein the native objects are Distributed Objects (DO) objects.

11. The system of claim 8 wherein the operating system neutral API is an abstraction of the APIs for accessing native objects of the operating system.

12. The system of claim 8 wherein the compiled object is linked to a client at runtime and is executable by the client.

13. A non-transitory computer-usable medium, the medium having code embodied thereon for implementing an object, the code comprising:

a code segment for receiving a designation of an operating system that supports a native object model used by native objects;

a code segment for determining the native object model used by the designated operating system;

a code segment for implementing logic code;

a code segment for implementing a native object interop for accessing the logic code using an API for accessing native objects of the determined native object model used by the designated operating system; and

a code segment for implementing a platform-neutral interop for accessing the logic code using an operating system neutral API, wherein the platform-neutral interop is layered on top of the native object interop and translates between the operating system neutral API and the API for accessing native objects.

14. The medium of claim 13 wherein the native objects are Component Object Model (COM) objects.

15. The medium of claim 13 wherein the native objects are Distributed Objects (DO) objects.

16. The medium of claim 13 wherein the operating system neutral API is an abstraction of the APIs for accessing native objects of the operating system.

17. The medium of claim 13 wherein the compiled object that is linked to a client at runtime and that is executable by the client.

Assignments (8)
CHANGE OF NAME Recorded Dec 20, 2021
From: FACEBOOK, INC.
To: META PLATFORMS, INC.
Reel/Frame 058961/0436 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 3, 2012
From: AOL INC.
To: FACEBOOK, INC.
Reel/Frame 028487/0602 →
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENT RIGHTS Recorded Nov 16, 2010
From: BANK OF AMERICA, N A
To: AOL INC; AOL ADVERTISING INC; GOING INC; LIGHTNINGCAST LLC; MAPQUEST, INC; NETSCAPE COMMUNICATIONS CORPORATION; QUIGO TECHNOLOGIES LLC; SPHERE SOURCE, INC; TACODA LLC; TRUVEO, INC; YEDDA, INC
Reel/Frame 025323/0416 →
CHANGE OF NAME Recorded Jun 23, 2010
From: AMERIC ONLINE, INC.
To: AOL LLC
Reel/Frame 024578/0716 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 31, 2009
From: AOL LLC
To: AOL INC.
Reel/Frame 023723/0645 →
SECURITY AGREEMENT Recorded Dec 14, 2009
From: AOL INC.; AOL ADVERTISING INC.; BEBO, INC.; ICQ LLC; GOING, INC.; LIGHTNINGCAST LLC; MAPQUEST, INC.; NETSCAPE COMMUNICATIONS CORPORATION; QUIGO TECHNOLOGIES LLC; SPHERE SOURCE, INC.; TACODA LLC; TRUVEO, INC.; YEDDA, INC.
To: BANK OF AMERICAN, N.A. AS COLLATERAL AGENT
Reel/Frame 023649/0061 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 24, 2006
From: ZHANG, XIAOPENG
To: AOL LLC
Reel/Frame 017528/0443 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 24, 2006
From: BESBRIS, DAVID G.; EAVES, DONALD S.; JOHNSON, BRIAN REGAN; PACKARD, GARY WAYNE; ROBINSON, JOHN D.
To: AMERICA ONLINE, INC.
Reel/Frame 017528/0459 →