Looking for breakthrough ideas for innovation challenges? Try Patsnap Eureka!

Method and system for enlarge and configuing corresponding extensible sofrware

A software and software development technology, applied in memory systems, software maintenance/management, program control devices, etc., can solve problems such as increasing code complexity, increasing development and maintenance costs, and reducing performance

Inactive Publication Date: 2009-04-15
MICROSOFT TECH LICENSING LLC
View PDF3 Cites 1 Cited by
  • Summary
  • Abstract
  • Description
  • Claims
  • Application Information

AI Technical Summary

Problems solved by technology

The traditional technique of adding extension fields to a class definition can be used, but this is only achieved at a significant price in terms of reduced performance and increased code complexity, resulting in increased development and maintenance costs

Method used

the structure of the environmentally friendly knitted fabric provided by the present invention; figure 2 Flow chart of the yarn wrapping machine for environmentally friendly knitted fabrics and storage devices; image 3 Is the parameter map of the yarn covering machine
View more

Image

Smart Image Click on the blue labels to locate them in the text.
Viewing Examples
Smart Image
  • Method and system for enlarge and configuing corresponding extensible sofrware
  • Method and system for enlarge and configuing corresponding extensible sofrware
  • Method and system for enlarge and configuing corresponding extensible sofrware

Examples

Experimental program
Comparison scheme
Effect test

Embodiment Construction

[0031] Exemplary Software Development Tools

[0032] Although many of the techniques described here have been initially illustrated by examples using compilers, any of these techniques can be used in conjunction with other software development tools such as debuggers, optimizers, disassemblers, emulators, and software analysis tools. kind.

[0033] Extensible Software Development Tool Framework

[0034] Figure 1 illustrates an exemplary core software framework that can be extended to build multiple different configurations of custom compilers and other software development tools to reflect multiple software development scenarios. Core 110 provides an extensible architecture that can be used as building blocks to build custom software development tools 111-114. The core 110 software may be augmented by adding software extensions relevant to one or more software development scenarios. For example, a JIT (just in time) compiler 111 targeting the IA-64 processor 121 can be buil...

the structure of the environmentally friendly knitted fabric provided by the present invention; figure 2 Flow chart of the yarn wrapping machine for environmentally friendly knitted fabrics and storage devices; image 3 Is the parameter map of the yarn covering machine
Login to View More

PUM

No PUM Login to View More

Abstract

Methods and systems are described herein for extending configuration dependent extensible software programs. Classes of a core extensible software program may be extended by adding a configuration dependent extension. The extensions may be added statically prior to compiling the core version of a software program or dynamically at runtime. The declaration of extensible core classes may include an extensibility attribute with an indication of whether the class is statically extensible or dynamically extensible. An object description language is also described herein for appropriately declaring configuration dependent extensible classes. Also, a preprocessor is described herein for processing the object description language to generate a source code representation of the extensible class declarations and their extensions. The source code representation may then be used to generate the extended version of the core software program.

Description

technical field [0001] The technical field relates to extensible software systems, and more particularly to the use of extensible classes. Background technique [0002] The field of computing is becoming more complex every day due to the proliferation of multiple programming languages, multiple processors, and multiple operating system environments. Many programming languages ​​(eg, C++, Java, C#) with special capabilities are now available to provide programmers with special advantages in writing programs for various computing tasks. Similarly, various processors (eg, X86, IA-64, AMD, etc.) are available that offer particular advantages for performing particular tasks. For example, embedded processors are particularly well suited for well-defined tasks within electronic devices, such as Processors General-purpose processors are more flexible and capable of handling complex tasks. As a result, the diversity of computing environments, configurations, and devices is increa...

Claims

the structure of the environmentally friendly knitted fabric provided by the present invention; figure 2 Flow chart of the yarn wrapping machine for environmentally friendly knitted fabrics and storage devices; image 3 Is the parameter map of the yarn covering machine
Login to View More

Application Information

Patent Timeline
no application Login to View More
Patent Type & Authority Patents(China)
IPC IPC(8): G06F9/44G06F9/45
CPCG06F8/70G06F9/4428G06F9/4488G06F8/40
Inventor J·伯格D·R·小塔迪蒂C·L·米切尔A·E·艾尔斯V·K·格罗弗
Owner MICROSOFT TECH LICENSING LLC
Who we serve
  • R&D Engineer
  • R&D Manager
  • IP Professional
Why Patsnap Eureka
  • Industry Leading Data Capabilities
  • Powerful AI technology
  • Patent DNA Extraction
Social media
Patsnap Eureka Blog
Learn More
PatSnap group products