CN102707963B - Device flags - Google Patents
Device flags Download PDFInfo
- Publication number
- CN102707963B CN102707963B CN201210075509.3A CN201210075509A CN102707963B CN 102707963 B CN102707963 B CN 102707963B CN 201210075509 A CN201210075509 A CN 201210075509A CN 102707963 B CN102707963 B CN 102707963B
- Authority
- CN
- China
- Prior art keywords
- equipment
- software
- computing device
- driver
- information
- 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.)
- Active
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/4401—Bootstrapping
- G06F9/4411—Configuring for operating with peripheral devices; Loading of device drivers
- G06F9/4413—Plug-and-play [PnP]
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
- Multi Processors (AREA)
Abstract
Device flag techniques are described. In one or more implementations, responsive to detection by a computing device that a device has been communicatively coupled to bus of the computing device, a database is queried by the computing device to determine whether one or more flags have been set for the device. Responsive to a determination made as a result of the querying that the one or more flags have been set for the device identifier, information associated with the one or more flags is communicated to software that is associated with the device to configure the software.
Description
Technical field
The present invention relates to a kind of method for safeguarding compatibility.
Background technology
Computing device can include various different hardware devices to extend the available function of computing device.For example, hardware
Equipment can include internal unit and the external equipment that can configure in the casing of computing device, such as printer, photograph
Machine etc..The communication between the operating system of computing device and these equipment is generally enabled using driver.
However, the sustainable development of the software of execution may lead to the mode that software interacted with driver in computing device
Change.As a result, for example, the driver compatible with the operating system of former version may be not simultaneous with the operating system of version after a while
Hold.Conventional art for tackling this incompatibility includes writing the driver of more redaction.Although this can recover to set
Standby function, but the write of driver may relate to wait until that driver is available for propagating, is related to user's positioning
Driver of more redaction etc., and this may lead to user's sense of defeat and lose productivity ratio.
Content of the invention
Description device flag technology.In one or more implementations, in response to equipment has been detected by computing device
Through being communicatively coupled to the bus of this computing device, this computing device inquires about database to determine whether to be provided with one for this equipment
Individual or multiple marks.In response to the determination being provided with one or more marks for device identifier made as a result,
The information transmission associating with this one or more mark is given the software of this equipment association to configure this software.
In one or more implementations, computing device detects equipment and has been communicatively connected to the total of this computing device
Line, and the device identifier of this equipment is by the bus driver acquisition executing and managing bus on the computing device.Should
The device identifier of equipment is sent to the engine that can perform in this computing device by bus driver.Database is looked into by engine
Ask to determine whether to be provided with one or more marks for device identifier, and in response to setting for device identifier
Put the determination of one or more marks, the information transmission relevant with one or more marks to bus driver and has been somebody's turn to do
Information is adopted by bus driver.
In one or more implementations, receive via network in one or more computing devices of network service and use
Telemetry, identifies joining of the corresponding driver that equipment firmware, equipment communicates via it and driver using telemetry
Put.One or more computing devices are processed and is determined using which equipment described in telemetry using telemetry
Comprise the firmware being related to enable this equipment and the renewal of the operation of the function of each computing device otherwise will not being enabled.
There is provided this Summary to introduce in simplified form below specific embodiment partly in further
The selection of the concept of description.This Summary is not intended as identifying the key feature of claimed theme or basic
Feature, is intended to be used to assist in the scope of claimed theme.
Brief description
Detailed description is described in reference to the drawings.In the accompanying drawings, reference numeral leftmost (one or more) Digital ID
This reference numeral first time occurs in that figure therein.Using identical reference number in the different instances of specification and drawings
Word can indicate similar or identical item.
Fig. 1 is the explanation that can be used to execute the environment in the sample implementation of device flag technology.
Fig. 2 is the system showing in the sample implementation of interaction between equipment in Fig. 1, driver and flag engine
Explanation
Fig. 3 is that the connection describing wherein equipment to computing device is detected and initiates whether verification is that equipment is provided with mark
The flow chart of the process in the sample implementation of the process of will.
Fig. 4 is to describe wherein execution inquiry to determine whether to be provided with the sample implementation of mark for particular device
Process flow chart.
Fig. 5 is to describe wherein by the use of the telemetry generating as the result by one or more mark configuration driven programs
Sample implementation in process flow chart.
Specific embodiment
General introduction
Computing device can include (for example, being communicatively coupled to) various distinct device, so that computing device is permissible
Function using equipment.For example, computing device can be communicatively coupled to printer, compact disk-read/write, thumb actuator or permissible
It is the inside (for example, in casing) of this computing device or other ancillary equipment of outside.Driver can be utilized to make
Communication between energy computing device and this equipment, being such as converted into the order data of the operating system from computing device can
The form being understood by this equipment, and vice versa.However, the change for operating system may cause and driver
Incompatibility, and therefore cause the incompatibility with this equipment.
Description device flag technology, can be safeguarded the software (for example, operating system) of such as computing device and set using it
Compatibility between the standby and driver of equipment.This compatibility can provide in many ways.For example, flag engine
(for example, it can as calking (shim) engine a part of realizing) hardware id and the data of corresponding mark can be safeguarded
Storehouse.Therefore, when the equipment of detecting is connected to computing device (for example, via bus driver), flag engine can be inquired about
Determine whether any mark for this equipment id setting.Then, the information relevant with this mark can be sent to driving journey
Sequence is come such as in order to code path selects correspondingly to configure this driver, the specific function of enabled device etc., and it is further
Discussion can be found with respect to following part.
In the following discussion, the example context being used according to driver calking technology is described first.
The instantiation procedure that subsequently description can also adopt in this example context and other environment.Thus, the execution of instantiation procedure is simultaneously
It is not limited to this example context, and this example context is not limited to execute these instantiation procedures.
Example context
Fig. 1 is the explanation being operable to using the environment 100 in the sample implementation of technology described herein.Illustrated
Environment 100 include computing device 102, it can configure in every way.For example, computing device 102 may be configured to
Portable game device, mobile phone, can be by computer (the such as desktop computer, one or more clothes of network service
Business device, recreational facilities), be communicatively coupled to Set Top Box of display device etc..Thus, the scope of computing device 102 can be from having
The wholly-owned source device (such as personal computer, game machine) of substantial amounts of memory and processor resource is to having limited memory
And/or the low resource device (for example traditional Set Top Box, handheld game machine) of process resource.In addition although showing single calculating
Equipment 102, but this computing device 102 can represent multiple different equipment, such as by trade company using executing the many of operation
Individual server, remotely control and set-top box combination etc..
The entity that computing device 102 can also include leading to the hardware of this computing device 102 to execute operation is (for example, soft
Part), such as processor, functional block etc..For example, computing device 102 can include computer-readable medium, and it can be configured to
Keep leading to this computing device and especially leading to the hardware of this computing device 102 to execute the instruction operating.Thus, these instructions
It is used for configuring hardware to execute operation, and so lead to the change of hardware to bring perform function.These instructions can be by computer
Computer-readable recording medium is by various different configuration provides to computing device 102.
The such configuration of one kind of computer-readable medium is signal bearing medium (signal bearing medium),
And thus be configured to such as send instruction (for example, as carrier wave) via network to the hardware of computing device.This computer can
Read medium can also be configured to computer-readable recording medium and because rather than signal bearing medium.Computer-readable storage medium
The example of matter includes random access memory (ram), read-only storage (rom), CD, flash memory, harddisk memory and can make
With magnetic, light and other technology come other storage devices of store instruction and other data.
Computing device 102 can also be illustrated as including processor 104 and memory 106.Processor is not formed it
Material or treatment mechanism employed in it restriction.For example, processor can include (one or more) semiconductor and/or
Transistor (for example, electronic integrated circuit (ic)).In such context, processor executable can be that electronics can be held
Row instruction.Alternatively, the mechanism of processor or for the mechanism of processor and the mechanism by this computing device or be used for calculating
The mechanism of equipment can include but is not limited to quantum calculation, optical oomputing, mechanical calculations (for example, using nanometer technology) etc..Additionally,
Although display single processor 104 and memory 106, can using the memory of various types and combination and/
Or processor.
Computing device 102 is illustrated as also including the operating system 108 with kernel 110 and one or more driver
114, wherein the one or more driver is configured to support the kernel 110 of operating system 108 and one or more equipment
Communication between 112.Kernel 110 represents the assembly of operating system 108, and it is generally employed to such as processor 108, storage
Device 106 is that the application being executed by computing device 102 is soft with other with the function modeling of the underlying device of miscellaneous equipment 112 etc
Part.Although operating system 108 and kernel 110 are illustrated as execution on processor 104, these modules can also be stored in
In memory 106.
These equipment 112 can represent the various different equipment that can be adopted by computing device 102.For example, these set
Standby 112 can include ancillary equipment, printer, scanner, hard disk drive etc..These equipment 112 can also represent can
The function of the other computing devices to be utilized by computing device 102, is such as used mobile phone as storage device, accesses and move
Photo on phone etc..Thus, computing device 102 can utilize various different equipment 112, to be added to computing device
102 function.
In order to these equipment 112 communicate with computing device 102 and especially with the operating system 108 of this computing device and interior
Core 110 communicates, and can adopt one or more drivers 114.Driver 114 is generally employed to abstract relevant device
112 function.For example, driver 114 may be configured to a series of layer, so that by the kernel from operating system 108
110 order is converted into each equipment " intelligible " device-specific order.
Computing device 102 can adopt various different drivers 114.For example, driver 114 can be configured to
Class driver, such driver is configured to interact with multiple different types of equipment 112.For example, class driver can
To be arranged to optical read/write device, storage device, network etc..Another example is related to bus driver, for example by usb,
Pci or the driver of similar bus employing, the equipment of so shared puppy parc (for example, usb agreement) can be using same
The driver of sample comes compatible with computing device 102.From other of device stack different types of driver (for example, bus
Driver, class driver, filter drive program, device driver) these technology can be adopted.Additionally, it is various other
Software can also utilize these technology, and the such as code path based on context for the carrying out based on mark selects and is based on equipment mark
Know the application of the data retrieval of symbol.
However, as previously mentioned, it is understood that there may be some situations, wherein driver 114 no longer with such as operating system 108
The softwarecompatible of the computing device of kernel 110.For example, operating system 108 can be updated to the version updating, and applies service
Bag etc., this may change the mode that operating system 108 is configured to communicate with driver 114.
Correspondingly, computing device 102 can adopt flag engine 116, and it represents to prop up using one or more marks 118
Hold the function of the compatibility between driver 114 and operating system 108.For example, when equipment 112 is communicatively coupled to computing device
102(is for example coupled to bus), flag engine 116 can receive the hardware id 120 of this equipment.Then hardware id 120 is permissible
Flagged engine 116 is used for determining whether one or more marks 118 correspond to hardware id 120.Then driver 114 is permissible
Support the communication and equipment 112 between using the relevant information of mark 118.So, the behavior of particular device can be beaten
On indicate and be used as to determine the basis of " reparation " communicating with equipment 114.This can be used to support diversified function, it shows
Example is that computing device 102 can adopt universal driver 114, and this driver can configure exclusively for particular device 112, its
Further discussion can find with respect to Fig. 2.
Generally, any function described herein can be using software, firmware, hardware (for example, fixed logic circuit), artificial
Process and to realize, or realized using the combination of these implementations.Term " module " used herein, " engine " and " work(
Can " typically represent hardware, software, firmware or a combination thereof.In the case of a software implementation, module, functionally or logically on behalf of the instruction
And hardware, its operation specified by execution hardware such as one or more processors and/or functional block.
Fig. 2 explanation is logical in order to the assembly of Fig. 1 computing device 102 using the marker technique for driver compatibility
The sample implementation 200 of letter.In this illustration, equipment 112 initiates the communication with the bus 202 of computing device 102 of Fig. 1
Connect.Bus driver 204 can detect the equipment id 120 that this connects and provides mark equipment 112.For example, equipment id
120 can identify the specific hardware of equipment 112, firmware etc..Equipment id 120 can also be based on the function of being supported by equipment 112.
Then, flag engine 116 can receive this equipment id 120 and determine equipment 112 by checking database 208
One or more behaviors whether be labeled with indicating.For example, flag engine 116 can determine mark 118 whether corresponding device
id 120.In the example that this illustrates, database 208 be illustrated as local positioned at computing device 102, but other example
Contemplated, such as can by network 212 access in the available database of network service 210.
If equipment id 120 has corresponding mark 118 in database 208, flag engine 116 can accordingly
Information 214 bus driver 204 is provided back.For example, information 214 can describe mark itself, such as " bit 5 is set "
Mean that bus driver 204 will not provide specific power command to equipment 112.In another example, mark 118 can
To associate with the payload 216 comprising can be used for the more details configuring bus driver 204.
For example, equipment 112 according to standard configuration, and can therefore comprise standardization behavior 218, i.e. the row consistent with standard
For.The behavior 220 of the extension that equipment 112 can also include being not comprised in standard, such as can be added to the standard in future
In and/or help equipment 112 commercially distinguish the extra feature of itself.However, by using technology described herein, this
Bus driver 204 can be disposed for expanding by the behavior 220 of a little extensions by using mark 118 and/or payload 216
Exhibition behavior 220 and supported by bus driver 204.This configuration can be supported, in many ways such as using mark
Will 118 so that code path selection is carried out by bus driver 204, for the payload 216 etc. of equipment specific function.
Flag engine 116 can also provide telemetry to network service 210, and it can be used for various different features.
For example, as illustrated in Fig. 2, network service 210 is illustrated as processing, including representing, the telemetry receiving from flag engine 116
Function telemetry module 222.For example, it is possible to using telemetry module 222 so that the developer of software or equipment 112 can indicate that
Whether to communicate with equipment 112 using the function of the previous version of software, and show this point using mark 118.
For example, telemetry can include such as equipment id 120 and for closing with bus driver 204 and equipment 112
The details of the context of connection event.Then this can be used for processing these events using data, such as determines for drawing
The compatibility test entering renewal requires, and identification is related to the particular device on the market of renewal, determines whether equipment has adapted to later
Version, and thus mark no longer related (for example, the firmware of equipment 112 is updated over processing the renewal of operating system 108
Version) etc..The discussed further of these and other technology can find with respect to procedure below.
Instantiation procedure
Discussed below description can access checking skill using the shared resource that the previously described system and equipment are realized
Art.The each side of each process can be realized with hardware, firmware or software or a combination thereof.These processes are shown as one group
Block, it specifies operation of being executed by one or more equipment, and executing these by each block and operate shown in being not necessarily limited to
Order.Be discussed below partly in, by with reference to the environment 100 of Fig. 1 and the system 200 of Fig. 2.
The connection of Fig. 3 description wherein equipment to computing device is detected and initiates whether verification is that equipment is provided with mark
The sample implementation of process in process 300.Computing device detects equipment and has been communicatively connected to the total of this computing device
Line (block 302).For example, bus driver can be implemented in computing device 102, and equipment is detected during runtime
114 are already connected to bus 202.In another example, can initiate and the corresponding class driver of equipment 114 being connected,
, the storage class driver being used for storage device, application can be special for the network call driver being such as used for the network equipment
Door configuration (for example, and thus including the function as driver) etc..
Obtain the device identifier (block 304) of equipment by bus driver.For example, device identifier 120 can describe
Hardware and/or firmware that this equipment adopts, specific function that this equipment is supported, are configured to the unique identifier of particular device
(for example, sequence number) etc..Then, equipment id(block 306 is obtained by the flag engine of computing device), and it is next really to execute verification
Whether calibration will is to should equipment id(block 308), its further discussion can find with respect to figure below.
Fig. 4 description wherein execution is inquired about to determine whether to be provided with the sample implementation of mark for particular device
Process 400.The bus that equipment has been communicatively connected to this computing device is detected in response to computing device, this computing device is inquired about
Database is determining whether to be provided with one or more marks (block 402) for this equipment.For example, flag engine 116 can be from
Driver 114 receives and asks and inquire about database 208.
The determination made in response to the result having arranged for device identifier as this one or more mark of inquiry,
The information associating with this one or more mark is transmitted to the software associating with this equipment to configure this software (block 404).As
Front described, information 214 can configure in many ways.For example, information 214 can describe and can be used for generation by driver 114
The mark 118 of code Path selection, can include the payload 216 associating with mark, and this payload 216 can serve as configuring such as standard
Outside the basis of equipment specific behavior of propagation behavior 220 etc..
Fig. 5 description is wherein by the use of the telemetry generating as the result by one or more mark configuration driven programs
Process 500 in sample implementation.Receive telemetry via network at one or more computing devices of network service,
This telemetry identifies the firmware of equipment, carries out the configuration (block of the respective drive program of equipment communication and driver by it
502).For example, flag engine 116 can store in database 208 and be described as and configuration driven program compatible with equipment 112
Mark 118 involved by 114, corresponding information 214, driver 114 and equipment 112(for example, equipment id 12) remote measurement number
According to.Then this data is being sent to network in response to predetermined point of time during when the described operation of execution etc. via network 212
Service 210.
Process telemetry so that determined which equipment described in telemetry in one or more computing devices
Comprise the firmware (block being related to enable this equipment and the renewal of the feature operation of each computing device otherwise will not being enabled
504).Continue example above, network service 210 can be processed using telemetry module 222 and can be used for the distant of multiple purposes
Survey data.For example, the telemetry for equipment 112 can give particulars, this details with regard to which equipment 112(for example, and
Corresponding firmware) continue to be related to mark 118 using providing compatibility, which equipment 112 carrys out enabled device using mark 118
Specific function (for example, the behavior 220 of extension), which device upgrade firmware and be no longer required for using mark 118, etc..Then
Developer can using this information when introducing upgrading to software (operating system of such as redaction or services package update) come really
Determine compatibility test to require, to guarantee dependence mark 118 to be carried out to the equipment of enabled device specific function, equipment compatibility is not fallen
Move back.It is also contemplated for various other examples on the premise of without departing from its spirit and scope.
Conclusion
Although the present invention is described with architectural feature and/or the specific language of method action, it is to be understood that appended
Invention defined in claims is not necessarily limited to these described specific features or action.On the contrary, these are specific
Feature and action are disclosed as realizing the exemplary forms of claimed invention.
Claims (10)
1. a kind of method for safeguarding compatibility, comprising:
The bus that equipment has been communicatively coupled to this computing device is detected in response to computing device, this computing device inquires about data
Storehouse is maintained in one or more of this database mark (402) to determine whether to be provided with for this equipment;With
In response to the determination being provided with one or more marks for equipment made as Query Result, will with this or
The information transmission of multiple mark associations gives the software of this equipment association to configure this software (404).
2. the code path that the method for claim 1, wherein this information are arranged to this software selects.
3. the method for claim 1, wherein this information are used for carrying out configuration software for the equipment specific function of this equipment.
4. the method for claim 1, wherein this software are applications.
5. the method for claim 1, wherein this software are bus driver, class driver or filtration drive journey
Sequence.
6. the method for claim 1, wherein this software are configured to handle the ability of the equipment consistent with standard, and
This information is used for carrying out configuration software for the ability of the equipment being not related to this standard.
7. the method for claim 1, wherein this software are configured to handle consistent with the particular version of operating system
The ability of equipment, and this information carrys out configuration software for the previous version for operating system.
8. the method for claim 1, further includes to transmit description software to information via network to network service
The telemetry using.
9. method as claimed in claim 8, wherein telemetry can be used in determining the compatibility test for introducing renewal
Require.
10. method as claimed in claim 8, wherein telemetry can be used in commercially identifying specifically described equipment,
Described equipment is related to firmware and updates, and this firmware updates the function of enabling the equipment otherwise will not being enabled.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/052,757 US9003363B2 (en) | 2011-03-21 | 2011-03-21 | Device flags |
US13/052757 | 2011-03-21 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102707963A CN102707963A (en) | 2012-10-03 |
CN102707963B true CN102707963B (en) | 2017-01-18 |
Family
ID=46878424
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210075509.3A Active CN102707963B (en) | 2011-03-21 | 2012-03-21 | Device flags |
Country Status (4)
Country | Link |
---|---|
US (2) | US9003363B2 (en) |
EP (1) | EP2689341B1 (en) |
CN (1) | CN102707963B (en) |
WO (1) | WO2012128978A2 (en) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9519600B2 (en) | 2011-03-04 | 2016-12-13 | Microsoft Technology Licensing, Llc | Driver shimming |
US9798567B2 (en) | 2014-11-25 | 2017-10-24 | The Research Foundation For The State University Of New York | Multi-hypervisor virtual machines |
DE102015206666A1 (en) * | 2015-04-14 | 2016-10-20 | Siemens Aktiengesellschaft | Method for operating a train protection arrangement, train protection arrangement and rail vehicle with a train protection arrangement |
US10452459B2 (en) | 2016-12-09 | 2019-10-22 | Microsoft Technology Licensing, Llc | Device driver telemetry |
US10467082B2 (en) | 2016-12-09 | 2019-11-05 | Microsoft Technology Licensing, Llc | Device driver verification |
US10261933B2 (en) * | 2017-01-23 | 2019-04-16 | Wyse Technology L.L.C. | Enabling session level restrictions for devices having disjoint stacks |
US10642603B2 (en) | 2018-01-16 | 2020-05-05 | Nutanix, Inc. | Scheduling upgrades in distributed computing systems |
US10838754B2 (en) | 2018-04-27 | 2020-11-17 | Nutanix, Inc. | Virtualized systems having hardware interface services for controlling hardware |
US11016798B2 (en) | 2018-06-01 | 2021-05-25 | The Research Foundation for the State University | Multi-hypervisor virtual machines that run on multiple co-located hypervisors |
US10732957B2 (en) * | 2018-07-30 | 2020-08-04 | Dell Products L.P. | Determining a stability index associated with a software update |
CN112566052B (en) * | 2020-11-30 | 2022-02-22 | 中国联合网络通信集团有限公司 | Terminal determination method and device |
Family Cites Families (43)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5390301A (en) | 1992-08-11 | 1995-02-14 | Acer Incorporated | Method and apparatus for communicating device-specific information between a device driver and an operating system in a computer system |
JPH07117929B2 (en) * | 1992-08-14 | 1995-12-18 | インターナショナル・ビジネス・マシーンズ・コーポレイション | Connectionless session oriented protocol first message generation system and method |
US6363409B1 (en) | 1995-04-24 | 2002-03-26 | Microsoft Corporation | Automatic client/server translation and execution of non-native applications |
US5745763A (en) | 1995-09-29 | 1998-04-28 | International Business Machines Corporation | Method and apparatus for device driver funnelling |
US5809303A (en) | 1995-10-18 | 1998-09-15 | Sun Microsystems, Inc. | Device I/O monitoring mechanism for a computer operating system |
US5974474A (en) * | 1996-03-15 | 1999-10-26 | Novell, Inc. | System for automatic hardware identification and configuration where instance values are unique within the computer system and resource requirement conflicts are resolved by modifying resource settings |
US6061796A (en) | 1997-08-26 | 2000-05-09 | V-One Corporation | Multi-access virtual private network |
US6745385B1 (en) | 1999-09-01 | 2004-06-01 | Microsoft Corporation | Fixing incompatible applications by providing stubs for APIs |
US6591417B1 (en) | 1999-12-30 | 2003-07-08 | International Business Machines Corporation | Method of and system for testing compatibility with an external API upgrade |
KR100671153B1 (en) | 2001-04-25 | 2007-01-17 | 엘지전자 주식회사 | Method for installing a device driver |
US20020174264A1 (en) | 2001-05-17 | 2002-11-21 | David Fuller | System and method for obtaining driver software and documentation for a detected hardware and software configuration |
US20040003135A1 (en) * | 2002-06-27 | 2004-01-01 | Moore Terrill M. | Technique for driver installation |
US20080177994A1 (en) * | 2003-01-12 | 2008-07-24 | Yaron Mayer | System and method for improving the efficiency, comfort, and/or reliability in Operating Systems, such as for example Windows |
US7457831B2 (en) | 2003-03-31 | 2008-11-25 | Microsoft Corporation | Peripheral device driver maintenance scheme for networked peripheral device clients |
US8151280B2 (en) | 2003-10-27 | 2012-04-03 | Microsoft Corporation | Simple and dynamic configuration of network devices |
US7392527B2 (en) | 2003-12-10 | 2008-06-24 | Microsoft Corporation | Driver-specific context for kernel-mode shimming |
US7478381B2 (en) * | 2003-12-15 | 2009-01-13 | Microsoft Corporation | Managing software updates and a software distribution service |
US7323970B1 (en) * | 2004-01-21 | 2008-01-29 | Numerex Corporation | Method and system for remote interaction with a vehicle via wireless communication |
JP4622277B2 (en) | 2004-03-19 | 2011-02-02 | 富士ゼロックス株式会社 | Peripheral device driver installation apparatus, peripheral device, peripheral device driver installation system, and peripheral device driver installation method |
DE102004062432A1 (en) * | 2004-12-20 | 2006-06-29 | Abb Research Ltd. | System and method for automatically creating, installing, and configuring enhancements to the functionalities in the distributed network nodes |
US7900201B1 (en) * | 2004-12-21 | 2011-03-01 | Zenprise, Inc. | Automated remedying of problems in software application deployments |
US20060149845A1 (en) | 2004-12-30 | 2006-07-06 | Xinnia Technology, Llc | Managed quality of service for users and applications over shared networks |
JP2006221327A (en) * | 2005-02-09 | 2006-08-24 | Hitachi Ltd | Computer system and storage device |
US7434128B2 (en) * | 2005-03-24 | 2008-10-07 | Hewlett-Packard Development Company, L.P. | Systems and methods for identifying system links |
US7400997B2 (en) * | 2005-05-26 | 2008-07-15 | The Mathworks, Inc. | Integrated instrument driver network |
US7870565B2 (en) * | 2005-06-30 | 2011-01-11 | Intel Corporation | Systems and methods for secure host resource management |
US20070100653A1 (en) * | 2005-11-01 | 2007-05-03 | Jorey Ramer | Mobile website analyzer |
US20070101342A1 (en) | 2005-10-31 | 2007-05-03 | Microsoft Corporation | Automated device driver management |
US20070209032A1 (en) * | 2006-02-23 | 2007-09-06 | Microsoft Corporation | Driver verifier |
US20070201059A1 (en) * | 2006-02-28 | 2007-08-30 | Radzykewycz Tim O | Method and system for automatically configuring a device driver |
US20070277248A1 (en) * | 2006-05-25 | 2007-11-29 | Microsoft Corporation | Installation of an Application Module and a Temporary Certificate |
JP4869050B2 (en) * | 2006-12-11 | 2012-02-01 | キヤノン株式会社 | Management apparatus and management method |
US8212677B2 (en) * | 2007-02-12 | 2012-07-03 | Alexander Ferguson | Automated medication management system and method for use |
US8234316B2 (en) | 2008-09-30 | 2012-07-31 | Microsoft Corporation | Nested file system support |
JP5229112B2 (en) * | 2009-05-28 | 2013-07-03 | セイコーエプソン株式会社 | Controller control method and controller |
DK2462507T3 (en) | 2009-08-04 | 2019-09-23 | Univ Carnegie Mellon | METHODS AND APPLIANCES FOR USER-VERIFYABLE SECURE ROAD IN THE EXISTENCE OF MALWARE |
US20110063304A1 (en) | 2009-09-16 | 2011-03-17 | Nvidia Corporation | Co-processing synchronizing techniques on heterogeneous graphics processing units |
CN101694642B (en) * | 2009-10-21 | 2015-07-22 | 中兴通讯股份有限公司 | Updating method of data card and device thereof |
US8713053B2 (en) * | 2010-03-09 | 2014-04-29 | Cisco Technology, Inc | Active tags |
US8949502B2 (en) * | 2010-11-18 | 2015-02-03 | Nimble Storage, Inc. | PCIe NVRAM card based on NVDIMM |
US9519600B2 (en) * | 2011-03-04 | 2016-12-13 | Microsoft Technology Licensing, Llc | Driver shimming |
WO2012122563A1 (en) * | 2011-03-10 | 2012-09-13 | Agco Corporation | Remote weather sensing for harvesting conditions |
US9009738B2 (en) * | 2011-03-17 | 2015-04-14 | Microsoft Technology Licensing, Llc | Device identification using device functions |
-
2011
- 2011-03-21 US US13/052,757 patent/US9003363B2/en active Active
-
2012
- 2012-03-11 EP EP12760583.0A patent/EP2689341B1/en active Active
- 2012-03-11 WO PCT/US2012/028667 patent/WO2012128978A2/en active Application Filing
- 2012-03-21 CN CN201210075509.3A patent/CN102707963B/en active Active
-
2015
- 2015-03-16 US US14/658,770 patent/US20150277936A1/en not_active Abandoned
Also Published As
Publication number | Publication date |
---|---|
EP2689341A4 (en) | 2014-10-08 |
CN102707963A (en) | 2012-10-03 |
US20150277936A1 (en) | 2015-10-01 |
US20120246632A1 (en) | 2012-09-27 |
US9003363B2 (en) | 2015-04-07 |
WO2012128978A3 (en) | 2013-03-14 |
WO2012128978A2 (en) | 2012-09-27 |
EP2689341A2 (en) | 2014-01-29 |
EP2689341B1 (en) | 2019-08-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102707963B (en) | Device flags | |
CN103809989B (en) | The method that operating system occurs reading complete kernel daily record under core collapse case | |
CN101169718A (en) | System and method for instantiating abstract class | |
CN109426613B (en) | Method for retrieving debugging data in UEFI and computer system thereof | |
US11435985B2 (en) | Electronic device and operation method thereof | |
CN109783346B (en) | Keyword-driven automatic testing method and device and terminal equipment | |
CN1609764A (en) | System and method for providing context to an input method | |
CN101004689A (en) | Method and system for automated installation of system specific drivers | |
CN114398058A (en) | Firmware component with self-describing compliance information | |
US10394756B2 (en) | System and method for customizing archive of a device driver generator tool for a user | |
CN110515641A (en) | The update method of server firmware, apparatus and system | |
CN111258563A (en) | Interface document generation method and device, storage medium and electronic equipment | |
JP4890869B2 (en) | A mechanism for transferring raw data between data structures that represent the same item | |
CN102236591B (en) | System and method for customizing a SCSI error response received from a SCSI target in a storage network environment | |
CN110637521B (en) | Data real-time storage method and system based on model simulation | |
US10481892B2 (en) | Multiple domain embedded system | |
US20100058276A1 (en) | Method for the integration of an integrated circuit into a standardized software architecture for embedded systems | |
CN111857839B (en) | Linux-based PXI/PXIe bus device driving system | |
CN110704686B (en) | Quality detection method and device for semi-structured data, storage medium and equipment | |
US9058184B2 (en) | Run time generation and functionality validation of device drivers | |
US20090210589A1 (en) | Dynamic Vital Product Data Update Based on an Installed Feature Card | |
CN114465839B (en) | Modbus-based information translation device, method, system and recording medium | |
US7991932B1 (en) | Firmware and/or a chipset determination of state of computer system to set chipset mode | |
US9720659B2 (en) | Sparse object instantiation | |
US7818627B2 (en) | Systems and methods for gathering debug information |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
ASS | Succession or assignment of patent right |
Owner name: MICROSOFT TECHNOLOGY LICENSING LLC Free format text: FORMER OWNER: MICROSOFT CORP. Effective date: 20150618 |
|
C41 | Transfer of patent application or patent right or utility model | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20150618 Address after: Washington State Applicant after: Micro soft technique license Co., Ltd Address before: Washington State Applicant before: Microsoft Corp. |
|
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |