AU6781600A - Fixing incompatible applications by providing stubs for apis - Google Patents
Fixing incompatible applications by providing stubs for apisInfo
- Publication number
- AU6781600A AU6781600A AU67816/00A AU6781600A AU6781600A AU 6781600 A AU6781600 A AU 6781600A AU 67816/00 A AU67816/00 A AU 67816/00A AU 6781600 A AU6781600 A AU 6781600A AU 6781600 A AU6781600 A AU 6781600A
- Authority
- AU
- Australia
- Prior art keywords
- apis
- fixing
- incompatible
- application
- incompatible applications
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Abandoned
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44521—Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44552—Conflict resolution, i.e. enabling coexistence of conflicting executables
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45537—Provision of facilities of other operating environments, e.g. WINE
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
- Pharmaceuticals Containing Other Organic And Inorganic Compounds (AREA)
- Shovels (AREA)
Abstract
A computer method for patching applications that are incompatible with an operating system is provided. The method determines if an application is compatible with an operating system, and if the application is determined to be incompatible, a shim dynamic link library is loaded that replaces all of the incompatible functions contained within the application's dynamic link libraries.
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15185399P | 1999-09-01 | 1999-09-01 | |
US60151853 | 1999-09-01 | ||
US09513016 | 2000-02-25 | ||
US09/513,016 US6745385B1 (en) | 1999-09-01 | 2000-02-25 | Fixing incompatible applications by providing stubs for APIs |
PCT/US2000/022580 WO2001016730A2 (en) | 1999-09-01 | 2000-08-17 | FIXING INCOMPATIBLE APPLICATIONS BY PROVIDING STUBS FOR APIs |
Publications (1)
Publication Number | Publication Date |
---|---|
AU6781600A true AU6781600A (en) | 2001-03-26 |
Family
ID=26849029
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
AU67816/00A Abandoned AU6781600A (en) | 1999-09-01 | 2000-08-17 | Fixing incompatible applications by providing stubs for apis |
Country Status (7)
Country | Link |
---|---|
US (1) | US6745385B1 (en) |
EP (1) | EP1224543B1 (en) |
JP (1) | JP4878715B2 (en) |
AT (1) | ATE423347T1 (en) |
AU (1) | AU6781600A (en) |
DE (1) | DE60041589D1 (en) |
WO (1) | WO2001016730A2 (en) |
Families Citing this family (64)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7032213B1 (en) * | 1999-09-01 | 2006-04-18 | Microsoft Corporation | Fixing incompatible applications using a light debugger |
GB9921720D0 (en) * | 1999-09-14 | 1999-11-17 | Tao Group Ltd | Loading object-oriented computer programs |
US20030167463A1 (en) * | 2002-03-01 | 2003-09-04 | Microsft Corporation | Custom application-compatibility systems and layers |
JP2004005419A (en) * | 2002-03-25 | 2004-01-08 | Canon Inc | Install processing apparatus, processing method, storage medium, and program |
US7363237B1 (en) * | 2002-12-31 | 2008-04-22 | Adams Phillip M | Enforcement process for correction of hardware and software defects |
US7210121B2 (en) | 2003-02-07 | 2007-04-24 | Sun Microsystems, Inc. | Method and system for generating first class citizen application implementing native software application wrapper |
GB0307805D0 (en) * | 2003-04-04 | 2003-05-07 | Intuwave Ltd | A method of enabling source code to be used to generate a first and a second software application,each compatible with a different operating system |
US7392527B2 (en) * | 2003-12-10 | 2008-06-24 | Microsoft Corporation | Driver-specific context for kernel-mode shimming |
US8539469B2 (en) * | 2004-05-11 | 2013-09-17 | Microsoft Corporation | Efficient patching |
US7770158B2 (en) | 2004-10-14 | 2010-08-03 | Bea Systems, Inc. | Source code translator |
US7653684B2 (en) * | 2004-12-03 | 2010-01-26 | Microsoft Corporation | Enabling inter-subsystem resource sharing |
US20060143222A1 (en) * | 2004-12-23 | 2006-06-29 | Maxime Daniel | Method, program and system for automatic reengineering of a client code |
US8151258B2 (en) * | 2005-03-09 | 2012-04-03 | Ipass Inc. | Managing software patches |
US7409532B2 (en) * | 2005-03-24 | 2008-08-05 | International Business Machines Corporation | Method and apparatus for extending operations of an application in a data processing system |
US20070006202A1 (en) * | 2005-07-01 | 2007-01-04 | Mikkelsen Tim I | Dynamic mapping of shared libraries |
US8296758B2 (en) * | 2006-09-20 | 2012-10-23 | Sap Ag | Deployment and versioning of applications |
US20100011073A1 (en) * | 2008-06-10 | 2010-01-14 | True Commerce, Inc. | User-deployable data transformation and exchange platform including on-demand item synchronization and user-deployable order management system |
US10095678B2 (en) | 2009-04-13 | 2018-10-09 | Honeywell International Inc. | Database user interfaces with flowsheets of a simulation system |
US9053260B2 (en) * | 2009-04-13 | 2015-06-09 | Honeywell International Inc. | Utilizing spreadsheet user interfaces with flowsheets of a CPI simulation system |
AU2010292417B9 (en) * | 2009-09-08 | 2015-04-16 | Abbott Diabetes Care Inc. | Methods and articles of manufacture for hosting a safety critical application on an uncontrolled data processing device |
US20110063304A1 (en) * | 2009-09-16 | 2011-03-17 | Nvidia Corporation | Co-processing synchronizing techniques on heterogeneous graphics processing units |
US9830889B2 (en) | 2009-12-31 | 2017-11-28 | Nvidia Corporation | Methods and system for artifically and dynamically limiting the display resolution of an application |
US9171350B2 (en) | 2010-10-28 | 2015-10-27 | Nvidia Corporation | Adaptive resolution DGPU rendering to provide constant framerate with free IGPU scale up |
US8789138B2 (en) | 2010-12-27 | 2014-07-22 | Microsoft Corporation | Application execution in a restricted application execution environment |
US9519600B2 (en) * | 2011-03-04 | 2016-12-13 | Microsoft Technology Licensing, Llc | Driver shimming |
JP5803157B2 (en) * | 2011-03-07 | 2015-11-04 | 日本電気株式会社 | Information processing apparatus, program fraud detection method, and program fraud detection program |
US20120233605A1 (en) * | 2011-03-07 | 2012-09-13 | Microsoft Corporation | Application Compatibility Leveraging Successful Resolution of Issues |
JP5716469B2 (en) * | 2011-03-17 | 2015-05-13 | 富士通セミコンダクター株式会社 | Wrapper program and integrated circuit device |
US9003363B2 (en) | 2011-03-21 | 2015-04-07 | Microsoft Technology Licensing, Llc | Device flags |
US8776094B2 (en) | 2011-08-11 | 2014-07-08 | Microsoft Corporation | Runtime system |
US8695021B2 (en) * | 2011-08-31 | 2014-04-08 | Microsoft Corporation | Projecting native application programming interfaces of an operating system into other programming languages |
US9436487B2 (en) * | 2012-03-29 | 2016-09-06 | Adobe Systems Incorporated | Method and apparatus for creating a platform agnostic application file |
US20140007117A1 (en) * | 2012-06-13 | 2014-01-02 | Bluebox | Methods and apparatus for modifying software applications |
US9176838B2 (en) * | 2012-10-19 | 2015-11-03 | Intel Corporation | Encrypted data inspection in a network environment |
US9578133B2 (en) * | 2012-12-03 | 2017-02-21 | Apkudo, Llc | System and method for analyzing user experience of a software application across disparate devices |
US10261611B2 (en) | 2012-12-03 | 2019-04-16 | Apkudo, Llc | System and method for objectively measuring user experience of touch screen based devices |
US10120900B1 (en) | 2013-02-25 | 2018-11-06 | EMC IP Holding Company LLC | Processing a database query using a shared metadata store |
US9984083B1 (en) | 2013-02-25 | 2018-05-29 | EMC IP Holding Company LLC | Pluggable storage system for parallel query engines across non-native file systems |
US9075781B2 (en) | 2013-03-15 | 2015-07-07 | Apkudo, Llc | System and method for coordinating field user testing results for a mobile application across various mobile devices |
US9830176B2 (en) | 2013-04-19 | 2017-11-28 | The Trustees Of Columbia University In The City Of New York | Methods, systems, and media for binary compatible graphics support in mobile operating systems |
WO2014172710A1 (en) * | 2013-04-19 | 2014-10-23 | The Trustees Of Columbia University In The City Of New York | Methods, systems, and media for binary compatibility |
US10860303B2 (en) * | 2013-04-24 | 2020-12-08 | Nintendo Co., Ltd. | Selective operating system patching/updating |
US9594545B2 (en) | 2013-06-05 | 2017-03-14 | Splunk Inc. | System for displaying notification dependencies between component instances |
US10061626B2 (en) | 2013-06-05 | 2018-08-28 | Splunk Inc. | Application framework providing a registry for mapping names to component instances |
US8756614B2 (en) | 2013-06-05 | 2014-06-17 | Splunk Inc. | Central registry for binding features using dynamic pointers |
US9058193B2 (en) * | 2013-11-14 | 2015-06-16 | Google Inc. | Methods and systems for providing compatibility of applications with multiple versions of an operating system |
CN103885808A (en) * | 2014-04-08 | 2014-06-25 | 北京奇虎科技有限公司 | Hotfix processing method and device |
US9348625B2 (en) | 2014-05-23 | 2016-05-24 | Google Inc. | Application access to native and bundled libraries |
US10338914B2 (en) | 2014-09-01 | 2019-07-02 | Hewlett Packard Enterprise Development Lp | Dynamically applying a patch to a shared library |
US10445505B2 (en) * | 2014-09-22 | 2019-10-15 | Mcafee, Llc | Process vulnerability assessment |
CN105528224B (en) * | 2014-09-30 | 2018-12-25 | 中国电信股份有限公司 | Multisystem dispatching method and terminal based on application identification |
US10635504B2 (en) | 2014-10-16 | 2020-04-28 | Microsoft Technology Licensing, Llc | API versioning independent of product releases |
US9283672B1 (en) | 2014-12-11 | 2016-03-15 | Apkudo, Llc | Robotic testing device and method for more closely emulating human movements during robotic testing of mobile devices |
CN104866307B (en) * | 2015-05-14 | 2018-04-27 | 百度在线网络技术(北京)有限公司 | The restorative procedure and device of a kind of application program |
WO2018143977A1 (en) * | 2017-02-01 | 2018-08-09 | Hewlett-Packard Development Company, L.P. | Performance threshold |
EP3406674A1 (en) | 2017-05-26 | 2018-11-28 | Ewald Dörken Ag | Thermochromic coating system |
US10956563B2 (en) * | 2017-11-22 | 2021-03-23 | Aqua Security Software, Ltd. | System for securing software containers with embedded agent |
CN108920216B (en) * | 2018-08-03 | 2021-11-09 | 武汉斗鱼网络科技有限公司 | Method, device, terminal and storage medium for closing software compatible mode |
US10915426B2 (en) | 2019-06-06 | 2021-02-09 | International Business Machines Corporation | Intercepting and recording calls to a module in real-time |
US11036619B2 (en) | 2019-06-06 | 2021-06-15 | International Business Machines Corporation | Bypassing execution of a module in real-time |
US11074069B2 (en) | 2019-06-06 | 2021-07-27 | International Business Machines Corporation | Replaying interactions with transactional and database environments with re-arrangement |
US10929126B2 (en) | 2019-06-06 | 2021-02-23 | International Business Machines Corporation | Intercepting and replaying interactions with transactional and database environments |
US11016762B2 (en) | 2019-06-06 | 2021-05-25 | International Business Machines Corporation | Determining caller of a module in real-time |
US20210389937A1 (en) * | 2020-06-12 | 2021-12-16 | Western Digital Technologies, Inc. | Systems And Methods For Fixing Incompatibilities In Field Firmware Updates |
Family Cites Families (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5579509A (en) | 1991-02-08 | 1996-11-26 | International Business Machines Corporation | Apparatus and method for verifying compatibility of system components |
US5193180A (en) * | 1991-06-21 | 1993-03-09 | Pure Software Inc. | System for modifying relocatable object code files to monitor accesses to dynamically allocated memory |
DE69324840T2 (en) | 1992-03-06 | 1999-09-09 | Microsoft Corp | Procedure for storing programs |
US5815722A (en) * | 1992-11-18 | 1998-09-29 | Canon Information Systems, Inc. | In an interactive network board, a method and apparatus for remotely downloading and executing files in a memory |
US5546586A (en) | 1993-05-06 | 1996-08-13 | Apple Computer, Inc. | Method and apparatus for vectorizing the contents of a read only memory device without modifying underlying source code |
US5675803A (en) * | 1994-01-28 | 1997-10-07 | Sun Microsystems, Inc. | Method and apparatus for a fast debugger fix and continue operation |
CA2143488C (en) | 1995-02-27 | 2000-01-11 | Robert Paul Duncan | Dynamic link libraries without linker or loader support |
US5790856A (en) * | 1995-05-08 | 1998-08-04 | Apple Computer, Inc. | Methods, apparatus, and data structures for data driven computer patches and static analysis of same |
US5951639A (en) * | 1996-02-14 | 1999-09-14 | Powertv, Inc. | Multicast downloading of software and data modules and their compatibility requirements |
US6611878B2 (en) * | 1996-11-08 | 2003-08-26 | International Business Machines Corporation | Method and apparatus for software technology injection for operating systems which assign separate process address spaces |
US6141698A (en) * | 1997-01-29 | 2000-10-31 | Network Commerce Inc. | Method and system for injecting new code into existing application code |
US6026238A (en) * | 1997-08-18 | 2000-02-15 | Microsoft Corporatrion | Interface conversion modules based upon generalized templates for multiple platform computer systems |
EP1071991A4 (en) * | 1997-12-11 | 2002-03-13 | Digits Corp | Object code analysis and remediation system and method |
US6009261A (en) * | 1997-12-16 | 1999-12-28 | International Business Machines Corporation | Preprocessing of stored target routines for emulating incompatible instructions on a target processor |
US6490721B1 (en) * | 1998-07-14 | 2002-12-03 | Oc Systems Incorporated | Software debugging method and apparatus |
US6484309B2 (en) * | 1998-10-08 | 2002-11-19 | Intel Corporation | Enabling software designed for one operating system to operate on another operating system |
US20020073398A1 (en) * | 1998-12-14 | 2002-06-13 | Jeffrey L. Tinker | Method and system for modifying executable code to add additional functionality |
US6463583B1 (en) * | 1999-04-08 | 2002-10-08 | Novadigm, Inc. | Dynamic injection of execution logic into main dynamic link library function of the original kernel of a windowed operating system |
-
2000
- 2000-02-25 US US09/513,016 patent/US6745385B1/en not_active Expired - Fee Related
- 2000-08-17 WO PCT/US2000/022580 patent/WO2001016730A2/en active Application Filing
- 2000-08-17 EP EP00955648A patent/EP1224543B1/en not_active Expired - Lifetime
- 2000-08-17 DE DE60041589T patent/DE60041589D1/en not_active Expired - Lifetime
- 2000-08-17 JP JP2001520617A patent/JP4878715B2/en not_active Expired - Fee Related
- 2000-08-17 AU AU67816/00A patent/AU6781600A/en not_active Abandoned
- 2000-08-17 AT AT00955648T patent/ATE423347T1/en not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
EP1224543B1 (en) | 2009-02-18 |
DE60041589D1 (en) | 2009-04-02 |
JP2003508846A (en) | 2003-03-04 |
JP4878715B2 (en) | 2012-02-15 |
ATE423347T1 (en) | 2009-03-15 |
WO2001016730A3 (en) | 2002-05-10 |
EP1224543A2 (en) | 2002-07-24 |
WO2001016730A2 (en) | 2001-03-08 |
US6745385B1 (en) | 2004-06-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
AU6781600A (en) | Fixing incompatible applications by providing stubs for apis | |
AU5439796A (en) | Hierarchical encapsulation of instantiated objects | |
EP1074911A3 (en) | Aspect-oriented programming | |
EP0372834A3 (en) | Translation technique | |
CA2185990A1 (en) | Document proxy framework | |
AU5775898A (en) | Method, system and data structures for computer software application developmentand execution | |
WO2002046916A3 (en) | Extensible information system (xis) | |
GB0014338D0 (en) | Force feedback system including multi-tasking graphical host environment and interface device | |
AU8397298A (en) | System for finding differences between two computer files and updating the computer files | |
WO2003075158A3 (en) | Method and system for assured denotation of application semantics | |
CA2162583A1 (en) | Computer-human interface system for compound documents | |
WO2002069140A3 (en) | Method and system for automatically transitioning files among computer systems | |
AU2001280829A1 (en) | A system using a master control file for computer software | |
EP0908817A3 (en) | Method of changing a dynamic link library function efficiently and a computer system for executing the same | |
WO2000068816A3 (en) | Method for migrating from one computer to another | |
AU7243398A (en) | Cross-platform computer architecture and components thereof | |
AU7843900A (en) | Frameworks for methods and systems of providing netcentric computing | |
EP1235143A3 (en) | Method and system for creating and maintaining version-specific properties in a file | |
WO2001052064A3 (en) | Protection domains for a computer operating system | |
CA2264232A1 (en) | Systems and methods for providing dynamic data referencing in a generic data exchange environment | |
AU3392000A (en) | Instantiation application using meta data repository | |
AU2743600A (en) | Executing programs for a first computer architecture on a computer of a second architecture | |
TW347518B (en) | Display screen split method of a computer system | |
CA2150765A1 (en) | Method and Operating System for Separately Manipulating the Architecture and Content of a Document | |
CA2155357A1 (en) | Dynamic linking system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
MK6 | Application lapsed section 142(2)(f)/reg. 8.3(3) - pct applic. not entering national phase |