CN101297284B - 无需重新引导的显示驱动程序升级 - Google Patents

无需重新引导的显示驱动程序升级 Download PDF

Info

Publication number
CN101297284B
CN101297284B CN2006800401570A CN200680040157A CN101297284B CN 101297284 B CN101297284 B CN 101297284B CN 2006800401570 A CN2006800401570 A CN 2006800401570A CN 200680040157 A CN200680040157 A CN 200680040157A CN 101297284 B CN101297284 B CN 101297284B
Authority
CN
China
Prior art keywords
hardware
display driver
specific display
driver
upgraded
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.)
Expired - Fee Related
Application number
CN2006800401570A
Other languages
English (en)
Other versions
CN101297284A (zh
Inventor
M·J·安德鲁斯
M·A·玛木伦
S·A·内内
Y·M·巴卡特
A·A·齐特
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Technology Licensing LLC
Original Assignee
Microsoft Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=37998133&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=CN101297284(B) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by Microsoft Corp filed Critical Microsoft Corp
Publication of CN101297284A publication Critical patent/CN101297284A/zh
Application granted granted Critical
Publication of CN101297284B publication Critical patent/CN101297284B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4411Configuring for operating with peripheral devices; Loading of device drivers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/448Execution paradigms, e.g. implementations of programming paradigms

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Stored Programmes (AREA)
  • Controls And Circuits For Display Device (AREA)

Abstract

公开了用于在无需重新引导的情况下更新IHV显示驱动程序的系统和方法。根据这种方法,首先,操作系统停止该驱动程序的运行。第二,系统切换到一中间或临时显示驱动程序,这可以是随操作系统一起提供的默认驱动程序。第三,启动该新的硬件专用驱动程序。由此,可以在无需重新引导的情况下更新硬件专用显示驱动程序。

Description

无需重新引导的显示驱动程序升级
背景
升级一硬件专用显示驱动程序(即,可以用来控制与一个硬件相关联的视频图形显示的显示驱动程序)总是需要重新引导。这种硬件专用显示驱动程序可以被称为独立硬件厂商(IHV)显示驱动程序。
在之前的操作系统中,不可能在无需重新引导的情况下升级显示驱动程序。这些操作系统中的图形体系结构并不支持如下事实:即,显示驱动程序会完全“停止”运行,并随后动态地升级为全新的显示驱动程序。例如,通常需要释放驱动程序资源以便改为新的驱动程序。在之前可用的操作系统中,无法释放资源。因此,用户必须关机来释放资源。为了使操作系统的内核侧认识到新的驱动程序的存在,用户必须重新引导。并且,驱动程序一般由多个客户端使用。在之前可用的操作系统中,无法阻止客户端使用该驱动程序。因此,如果不能阻止客户端使用驱动程序,则不能改变该驱动程序。重新引导系统会迫使所有客户端均停止使用该驱动程序(即,从其断开)。
然而,所希望的是,显示驱动程序能够在无需重新引导情况下得到升级,同时维持诸如2D等的特定功能和操作系统的状态。
概述
正如此处所公开的,一当前正在运行的硬件专用显示驱动程序可被动态地切换到新的显示驱动程序,而同时该硬件仍在运行。这一方法可以包括三个步骤。首先,根据升级当前正在运行的驱动程序的请求,操作系统停止该驱动程序的运行。第二,系统切换到中间或临时显示驱动程序。该中间显示驱动程序可以是随操作系统提供的默认驱动程序(如随微软的WINDOWS操作系统提供的VGA驱动程序等)。第三,启动新的硬件专用驱动程序。恢复3D状态,并且GPU继续正常工作,且具有全部功能。这样,可以在无需重新引导的情况下更新硬件专用显示驱动程序。
附图简述
图1是用于在无需重新引导的情况下升级显示驱动程序的方法的流程图;
图2是用于停止当前正在运行的硬件专用显示驱动程序的方法的流程图;
图3是用于启动新的硬件专用显示驱动程序的方法的流程图;
图4显示了其中可以实现本发明的各方面的示例性计算环境的框图;
说明性实施例的详细描述
图1是用于在无需重新引导的情况下升级硬件专用显示驱动程序的方法的流程图。在10处,操作系统可以检测到用户已请求了显示驱动程序升级。用户可以通过例如将已升级的显示驱动程序从网络下载到主机计算机的存储器中,或将已升级的驱动程序从CD上传到主机计算机的存储器中来作出这一请求。
为将已升级的显示驱动程序安装到主机计算机上,用户可以在主机计算机上运行所谓的“设置引擎”。在20处,该设置引擎将与该已升级的显示驱动程序相关联的文件复制到主机计算机的存储器中。应了解,在现有系统中,这一新的显示驱动程序文件被存放在存储器中的某个地方,并且在下一次启动时被检测到并被使用。在这里所公开的系统中,该新文件可以如先前的系统中一样被复制,并被存储在存储器中,直到启动该新驱动程序(如下面的详细描述)。
在30处,停止当前正在运行的硬件专用驱动程序。下面将结合图2详细描述用于停止当前正在运行的硬件专用显示驱动程序的方法。
在40处,将控制切换到中间显示驱动程序。该中间显示驱动程序可以是随操作系统提供的默认驱动程序(如随微软的WINDOWS操作系统提供的VGA驱动程序等)。当停止当前正在运行的硬件专用显示驱动程序时,没有显示驱动程序在系统上运行。这会导致黑屏及不愉快的用户体验。为了避免这种情况,现在启动并使用已加载到系统中的VGA驱动程序。在安装新的硬件专用驱动程序之前,使用该VGA驱动程序来显示桌面。
为了使硬件能够向屏幕绘出任何内容,必须为该硬件分配某些资源。这些资源由操作系统分配给图形硬件。因此,在30处,在停止当前正在运行的驱动程序时,仍将分配足够的资源,以使默认驱动程序能临时运行。例如,可以保持对某一存储器和I/O资源的分配。应了解,这与在大多数栈中发生的情况不同。对于多数设备而言,在停止驱动程序后,所有资源都被释放,因为在停止驱动程序后,会禁止对硬件的使用。
在50处,启动已升级的硬件专用驱动程序。下面将结合图3详细描述用于启动新的硬件专用显示驱动程序的方法。因此,可以在无需重新引导的情况下更新硬件专用显示驱动程序。
图2是用于停止当前正在运行的硬件专用显示驱动程序的方法的流程图。当用户触发对当前正在运行的显示驱动程序的更新时,开始停止设备并更新设备的序列。在31处,即插即用(PnP)管理器在发现驱动程序升级请求(例如,由用户发出,诸如通过从网络下载新驱动程序等)后,通过向图形设备栈发送诸如I/O请求分组(IRP)等通知消息来启动该过程。该通知消息命令设备做一切它应该做的事情,以释放对显示驱动程序软件的所有依赖性。该IRP可以由操作系统内核(DxgKrnl.sys)的子组件(DxgPort)来处理。
有两种类别的客户端需要被暂停。首先,在32处,停止WINDOWS中的图形栈(GDI)的较老的(2D)部分Win32K。通知操作系统外壳停止使用该设备。同时,内核暂停所有客户端。
在33处,暂停第二种类别的客户端。该第二种类别包括Direct3D客户端。当暂停这些客户端后,删除代表这些客户端所分配的所有东西。在完成步骤33后,在内核模式中不会留下任何与IHV驱动程序相关联的东西。此时,没有视频存储管理器和视频调度器活动。
在34处,当发现PnP管理器请求后,DxgPort将通过其注册的“DmStopDevice”DDI来调用IHV内核模式驱动程序。操作系统通知显示驱动程序例如清理任何存储器,或显示驱动程序必须清理的任何其他东西。IHV驱动程序负责清理其在该功能中的状态。它释放所有保持的资源,并撤消驱动程序在DmStartDevice功能中启动的所有活动。
在步骤34处,只要应用程序调入来进行图形操作,就告知该应用程序硬件不可用,并且该应用程序应清理其任何资源。在35处,DirectX运行库从DxgKrnl接收“设备丢失”通知。在36处,该通知被转发到DirectX应用程序。新的DirectX9L应用程序将毁去其设备对象。DirectX9和之前编写的应用程序可以毁去或不毁去设备。应了解,DirectX指的是WINDOWS 3D图形(dxg=directX图形)。
优选地,只有当应用程序调入来进行图形操作时,才会向其通知该新的驱动程序。即,当应用程序希望使用旧驱动程序时,告知它们旧驱动程序不可用。随后,新的DirectX9L应用程序将其自身重新路由到该新驱动程序(即已升级的IHV驱动程序)。当DirectX9和之前编写的应用程序发现旧驱动程序已被卸载后,D3D运行库欺骗该应用程序,假装该驱动程序还在那里。
图3是用于启动新的硬件专用显示驱动程序的方法的流程图。在驱动程序文件已被成功复制后,设置引擎通知PnP管理器。随后,PnP管理器将该新的设备驱动程序加载到存储器中。在51处,PnP管理器向图形栈(dxgport)发送添加新设备的通知消息。PnP管理器随后将调用DxgPort中的“AddDevice”例程并随后调用IHV驱动程序。在52处,PnP管理器向图形栈发送启动该新设备的通知消息(IRP)。
在53处,内核(图形栈)停止该中间驱动程序。优选地,现在VGA驱动程序停止运行,但其仍被加载。可能会暂时出现黑屏。
在54处,图形栈通过设备驱动程序接口(“DDI”)来调用已升级的视频显示驱动程序,该设备驱动程序接口初始化图形硬件,并分配必要的显示驱动器资源。图形栈告知新的IHV驱动程序启动。在55处,图形栈通知内核为适配器创建相应的对象。这些对象已在停止设备时被毁去。
在56处,恢复2D图形对象。通知Win32K创建相应的视图及其图形设备对象。此时还通过内核图形栈创建监视器对象。在57处,恢复3D图形对象。3D图形软件请求应用程序重新创建其设备对象,之后,应用程序可重新开始渲染,即使用该新的已升级驱动程序。
示例性计算环境
图4及如下讨论旨在提供其中可实现本发明的示例实施例的适合的计算环境的简要概括描述。然而,应了解,构想了所有种类的手持式、便携式或其它计算设备来用于本发明。尽管下面描述了一个通用计算机,但这只是一个示例。本发明也可以在具有网络服务器互操作性和交互性的瘦客户机上操作。由此,本发明的示例实施例可以在其中蕴含了非常少或最少客户机资源的联网主存服务的环境,例如其中客户机设备仅用作对万维网的浏览器或接口的网络环境中实现。
虽然并非必需,但本发明可以通过由开发者或测试者使用的应用程序编程接口(API)来实现,和/或被包括在网络浏览软件中,网络浏览软件将在诸如程序模块等由一个或多个计算机(如客户机工作站、服务器或其它设备)执行的计算机可执行指令的一般上下文中描述。一般而言,程序模块包括用于执行特定任务或者实现特定的抽象数据类型的例程、程序、对象、组件、数据结构等。通常,程序模块的功能可以在各实施例中按需组合或分布。此外,本领域的技术人员可以理解,本发明还可以使用其它计算机系统配置来实施。可适用于本发明的其它公知的计算机系统、环境、和/或配置包括,但并不限于:个人计算机(PC)、自动提款机、服务器计算机、手持式或膝上型设备、多处理器系统、基于微处理器的系统、可编程消费电子产品、网络PC、小型计算机、大型计算机等。本发明的实施例也可以在其中任务由过通信网络或其它数据传输介质链接的远程处理设备来执行的分布式计算环境中实施。在分布式计算环境中,程序模块可同时位于包括存储器存储设备的本地和远程计算机存储介质两者中。
图4因此示出了其中可以实现本发明的合适的计算系统环境100的一个示例,然而如在上面已清楚的,该计算系统环境100只是合适的计算环境的一个示例,并非旨在对本发明的使用范围或功能提出任何限制。也不应将计算环境100解释为对在该示例性操作环境100中示出的任何一个组件或组件组合具有任何依赖或要求。
参考图4,用于实现本发明的示例性系统包括计算机110形式的通用计算设备。计算机110的组件可以包括,但不限于,处理单元120、系统存储器130、以及将包括系统存储器的各种系统组件连接到处理单元120的系统总线121。系统总线121可以是多种总线结构中的任何一种,包括存储器总线或存储控制器、外围总线、以及使用多种总线体系结构中的任一种的局部总线。作为示例,而非限制,这种总线体系结构包括:工业标准体系结构(ISA)总线、微通道体系结构(MCA)总线、增强型ISA(EISA)总线、视频电子技术标准协会(VESA)局部总线和外围部件互连(PCI)总线(也称为小背板(Mazzanine)总线)。
计算机110通常包括各种计算机可读介质。计算机可读介质可以是可以被计算机110访问的任何可用介质,并且包括易失性和非易失性、可移动和不可移动介质。作为示例,而非限制,计算机可读介质可以包括计算机存储介质和通信介质。计算机存储介质包括以用于存储诸如计算机可读指令、数据结构、程序模块或其它数据等信息的任何方法或技术实现的易失性和非易失性、可移动和不可移动介质。计算机存储介质包括,但不限于,随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、闪存或其它存储器技术,紧致盘只读存储器(CDROM)、数字通用盘(DVD)或其它光盘存储、磁盒、磁带、磁盘存储或其它磁性存储设备、或可以用来存储所需信息并可由计算机110访问的任何其它介质。通信介质通常以诸如载波或其它传输机制等已调制数据信号来体现计算机可读指令、数据结构、程序模块或其它数据,并包括任何信息传送介质。术语“已调制数据信号”指以在信号中编码信息的方式设置或改变其一个或多个特性的信号。作为示例,而非限制,通信介质包括有线介质,如有线网络或直接线连接,还包括无线介质,如声学、射频(RF)、红外和其它无线介质。上面的任意一种组合也应包含在计算机可读介质的范围内。
系统存储器130包括诸如ROM 131和RAM 132等易失性和/或非易失性存储器形式的计算机存储介质。包含诸如启动过程中帮助在计算机110内的元件之间传送信息的基本例程的基本输入/输出系统133(BIOS)通常存储在ROM131中。RAM 132通常包含处理单元120立即可访问和/或目前正在操作的数据和/或程序模块。作为示例,而非限制,图4示出了操作系统134、应用程序135、其它程序模块136及程序数据137。RAM 132可以包含其它数据和/或程序模块。
计算机110还可以包括其它可移动/不可移动、易失性/非易失性计算机存储介质。仅作为示例,图4示出了从不可移动、非易失性磁介质中读取或向其写入的硬盘驱动器141,从可移动、非易失性磁盘152中读取或向其写入的磁盘驱动器151,以及从诸如CD ROM或其它光介质等可移动、非易失性光盘156中读取或向其写入的光盘驱动器155。可以在该示例操作环境中使用的其它可移动/不可移动、易失性/非易失性计算机存储介质包括,但不限于:磁带盒、闪存卡、数字通用盘、数字录像带、固态RAM、固态ROM等。硬盘驱动器141一般通过如接口140等不可移动存储器接口连接到系统总线121,磁盘驱动器151和光盘驱动器155一般通过如接口150等可移动存储器接口连接到系统总线121。
以上讨论并在图4中示出的驱动器及其相关联的计算机存储介质为计算机110提供了对计算机可读指令、数据结构、程序模块和其它数据的存储。例如,在图4中,将硬盘驱动器141示为存储操作系统144、应用程序145、其它程序模块146和程序数据147。应注意,这些组件既可以与操作系统134、应用程序135、其它程序模块136和程序数据137相同,也可以不相同。操作系统144、应用程序145、其它程序模块146和程序数据147在此被赋予了不同的标号,以表明至少它们是不同的副本。用户可以通过如键盘162和定点设备(通常称为鼠标、跟踪球或触摸垫)161等输入设备将命令和信息输入到计算机110中。其它输入设备(未示出)可以包括话筒、操纵杆、游戏手柄、圆盘式卫星天线、扫描仪等。这些和其它输入设备通常通过与系统总线121耦合的用户输入接口160连接到处理单元120a-f,但是也可以通过如并行端口、游戏端口或通用串行总线(USB)等其它接口和总线结构来连接。
监视器191或其它类型的显示设备也通过如视频接口190等接口连接到系统总线121。除监视器191外,计算机还可以包括可通过输出外围设备接口195来连接的其它外围输出设备,如扬声器197和打印机196。
计算机110可以使用与诸如远程计算机180等一个或多个远程计算机的逻辑连接在网络环境中操作。远程计算机180可以是个人计算机、服务器、路由器、网络PC、对等设备或其它常见的网络节点,并且通常包括以上相对于计算机110所描述的许多或全部元件,虽然在图4中仅示出了存储器设备181。图4所示的逻辑连接包括局域网(LAN)171和广域网(WAN)173,但也可以包括其它网络。这种网络环境在办公室、企业范围计算机网络、内联网和因特网中都是常见的。
当在LAN网络环境中使用时,计算机110通过网络接口或适配器170连接到LAN 171。当在WAN网络环境中使用时,计算机110一般包括调制解调器172,或用于通过诸如因特网等WAN 173建立通信的其它装置。调制解调器172可以是内置或外置的,它可以通过用户输入接口160或其它合适的机制连接到系统总线121。在网络环境中,相对于计算机110所描述的程序模块或其部分可以被存储在远程存储器存储设备中。作为示例,而非限制,图4示出远程应用程序185驻留在存储器设备181上。应了解,所示的网络连接是示例性的,并且可以使用在计算机之间建立通信链路的其它手段。
本领域的普通技术人员可以了解,计算机或其它客户机设备可以被部署为计算机网络的一部分。在这一点上,本发明适合于具有任何数量的存储器或存储器单元,以及在任何数量的存储单元或卷上发生的任何数量的应用程序和进程的任何计算机系统。本发明的实施例可以应用于其中服务计算机和客户机计算机被部署在网络环境中并具有远程或本地存储的环境。本发明也可以应用于具有编程语言功能、交互及执行能力的单机计算设备。
由此,已经描述了用于无需重新引导的视频显示驱动程序更新的系统和方法。虽然结合各附图中所描绘的某些优选实施例对本发明进行了描述,但是应了解,也可以使用其它类似的实施例,并且可以对所述实施例进行修改或添加,以实施本发明而不偏离本发明。因此,本发明不应限于任何单个实施例,而应按照与下面的权利要求相一致的广度和范围进行解释。

Claims (8)

1.一种升级主机计算机上的硬件专用显示驱动程序的无需重新引导的方法,所述方法包括:
停止当前正在运行的硬件专用显示驱动程序;
启动所述主机计算机上的中间显示驱动程序,其中在停止了所述当前正在运行的驱动程序后,保持分配足够的资源以确保所述中间显示驱动程序能临时运行;以及
在停止所述当前正在运行的硬件专用显示驱动程序与启动已升级的硬件专用显示驱动程序之间,在无需重新引导的情况下启动所述已升级的硬件专用显示驱动程序;
启动所述已升级的硬件专用显示驱动程序包括停止所述中间显示驱动程序;
其中停止当前正在运行的硬件专用显示驱动程序进一步包括:
即插即用管理器向图形设备栈发送释放对所述当前正在运行的硬件
专用显示驱动程序的依赖性的通知;
暂停视频显示客户端;
通知所述当前正在运行的硬件专用显示驱动程序清理其状态。
2.如权利要求1所述的方法,其特征在于,还包括:
检测显示驱动程序升级请求;以及
响应于所述升级请求停止所述当前正在运行的硬件专用显示驱动程序。
3.如权利要求1所述的方法,其特征在于,一设置引擎将与所述已升级的硬件专用显示驱动程序相关联的文件复制到所述主机计算机上的存储器中。
4.如权利要求1所述的方法,其特征在于,所述中间显示驱动程序是随操作系统提供的默认驱动程序。
5.如权利要求1所述的方法,其特征在于,启动所述已升级的硬件专用显示驱动程序包括即插即用管理器向图形设备栈发送添加并启动所述已升级的硬件专用显示驱动程序的通知。
6.一种用于转换到主机计算机上的已升级的硬件专用显示驱动程序的无需重新引导的方法,其中所述已升级的硬件专用显示驱动程序与一硬件相关联,所述方法包括:
停止第一硬件专用显示驱动程序在所述主机上运行;
启动与所述硬件相关联的中间显示驱动程序,其中在停止了所述第一硬件专用显示驱动程序后,保持分配足够的资源以确保所述中间显示驱动程序能临时运行;
启动与所述硬件相关联的第二显示驱动程序;
从应用程序接收执行与所述第一硬件专用显示驱动程序相关联的图形操作的调用;以及
通知所述应用程序所述硬件不可用,
其中,响应于所述硬件不可用的通知,所述应用程序将其自身重新路由到所述第二显示驱动程序;
其中,启动与所述硬件相关联的第二显示驱动程序包括停止所述中间显示驱动程序;
其中停止第一硬件专用显示驱动程序在所述主机上运行进一步包括:
即插即用管理器向图形设备栈发送释放对所述第一硬件专用显示驱
动程序的依赖性的通知;
暂停视频显示客户端;
通知所述第一硬件专用显示驱动程序清理其状态。
7.如权利要求6所述的方法,其特征在于,来自所述应用程序的调用是在停止所述第一硬件专用显示驱动程序后接收的。
8.如权利要求6所述的方法,其特征在于,还包括:
向所述应用程序欺骗所述第一硬件专用显示驱动程序,假装所述第一硬件专用显示驱动程序还在那里,直到所述应用程序将其自身重新路由到所述第二显示驱动程序。
CN2006800401570A 2005-10-31 2006-10-03 无需重新引导的显示驱动程序升级 Expired - Fee Related CN101297284B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US11/263,765 US8056072B2 (en) 2005-10-31 2005-10-31 Rebootless display driver upgrades
US11/263,765 2005-10-31
PCT/US2006/039128 WO2007053260A1 (en) 2005-10-31 2006-10-03 Rebootless display driver upgrades

Publications (2)

Publication Number Publication Date
CN101297284A CN101297284A (zh) 2008-10-29
CN101297284B true CN101297284B (zh) 2012-07-18

Family

ID=37998133

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2006800401570A Expired - Fee Related CN101297284B (zh) 2005-10-31 2006-10-03 无需重新引导的显示驱动程序升级

Country Status (8)

Country Link
US (2) US8056072B2 (zh)
EP (1) EP1946221A4 (zh)
JP (1) JP5038321B2 (zh)
KR (1) KR101343176B1 (zh)
CN (1) CN101297284B (zh)
BR (1) BRPI0617793A2 (zh)
RU (1) RU2397539C2 (zh)
WO (1) WO2007053260A1 (zh)

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8056072B2 (en) * 2005-10-31 2011-11-08 Microsoft Corporation Rebootless display driver upgrades
US8561050B2 (en) * 2005-11-10 2013-10-15 Hewlett-Packard Development Company, L.P. Method and system for updating an application
US8127310B1 (en) * 2007-03-26 2012-02-28 Celio Corporation Method and apparatus for dynamically switching display drivers in mobile device operating system
JP5007154B2 (ja) * 2007-05-25 2012-08-22 クラリオン株式会社 情報処理装置
US8234488B1 (en) * 2007-11-12 2012-07-31 Nvidia Corporation System and method for controlling mode switches in hardware
CN101520757A (zh) * 2009-04-07 2009-09-02 深圳华为通信技术有限公司 设备驱动方法、装置及通信系统
CN101655801B (zh) * 2009-09-11 2013-12-18 华为技术有限公司 驱动软件升级的方法及装置
US8505003B2 (en) * 2010-04-28 2013-08-06 Novell, Inc. System and method for upgrading kernels in cloud computing environments
CN102004655B (zh) * 2010-11-25 2013-06-19 飞天诚信科技股份有限公司 自动安装驱动程序的装置及方法
US8830228B2 (en) * 2010-12-20 2014-09-09 Microsoft Corporation Techniques for enabling remote management of servers configured with graphics processors
US9053201B2 (en) 2012-02-29 2015-06-09 Microsoft Technology Licensing, Llc Communication with a web compartment in a client application
US8972964B2 (en) * 2012-07-26 2015-03-03 Unisys Corporation Dynamic firmware updating system for use in translated computing environments
CN103761126B (zh) * 2014-01-07 2017-03-15 中国神华能源股份有限公司 应用程序的升级方法和装置
KR20150102376A (ko) * 2014-02-28 2015-09-07 한국전자통신연구원 운영 환경의 변화에 적응하는 시스템 업그레이드와 진화 기법 및 그 시스템
CN105760242B (zh) * 2015-06-19 2018-12-11 深圳怡化电脑股份有限公司 自助设备的驱动程序自适应方法及装置
US10831394B2 (en) 2018-08-27 2020-11-10 International Business Machines Corporation Live upgrade of storage device driver using shim application

Family Cites Families (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5654738A (en) 1993-05-17 1997-08-05 Compaq Computer Corporation File-based video display mode setup
GB2282245B (en) 1993-09-23 1998-04-15 Advanced Risc Mach Ltd Execution of data processing instructions
US5682529A (en) 1994-03-14 1997-10-28 Apple Computer, Inc. System for dynamically accommodating changes in display configuration by notifying changes to currently running application programs to generate information by application programs to conform to changed configuration
JP3451499B2 (ja) 1994-08-29 2003-09-29 日本電信電話株式会社 入出力装置制御システム構成の変更処理方法
US5831639A (en) 1995-07-05 1998-11-03 Symantec Corporation Scanning display driver
US6009274A (en) * 1996-12-13 1999-12-28 3Com Corporation Method and apparatus for automatically updating software components on end systems over a network
US6009480A (en) * 1997-09-12 1999-12-28 Telxon Corporation Integrated device driver wherein the peripheral downloads the device driver via an I/O device after it is determined that the I/O device has the resources to support the peripheral device
US5889965A (en) * 1997-10-01 1999-03-30 Micron Electronics, Inc. Method for the hot swap of a network adapter on a system including a dynamically loaded adapter driver
JP3287295B2 (ja) 1998-01-16 2002-06-04 日本電気株式会社 オペレーティングシステム
US6035355A (en) * 1998-04-27 2000-03-07 International Business Machines Corporation PCI system and adapter requirements following reset
US6282646B1 (en) 1998-05-08 2001-08-28 Apple Computer, Inc. System for real-time adaptation to changes in display configuration
TW385408B (en) 1998-08-26 2000-03-21 Inventec Corp Configuration method for installing plug-and-play device
RU2237275C2 (ru) 1999-02-18 2004-09-27 Ситрикс Системз, Инк. Сервер и способ (варианты) определения программного окружения клиентского узла в сети с архитектурой клиент/сервер
US6832312B1 (en) 1999-12-22 2004-12-14 Evga.Com Process for automatically installing video display software upon detecting new video display controller
US6658489B1 (en) 2000-03-29 2003-12-02 International Business Machines Corporation Method for replacing a device driver during system operation
US6880086B2 (en) * 2000-05-20 2005-04-12 Ciena Corporation Signatures for facilitating hot upgrades of modular software components
PT1298132E (pt) 2000-07-06 2007-01-31 Sankyo Co Sais de adição de ácido derivados de hidropiridina
KR100520058B1 (ko) 2000-12-13 2005-10-11 삼성전자주식회사 디바이스드라이버 업그레이드 시스템 및 디바이스드라이버업그레이드 방법
US7080247B2 (en) 2000-12-22 2006-07-18 Evga Corporation System and method for automated display driver management
JP3984895B2 (ja) 2001-10-03 2007-10-03 キヤノン株式会社 情報処理装置およびサーバ装置およびドライバ更新方法およびコンピュータが読み取り可能な記憶媒体およびプログラム
US7506147B2 (en) * 2002-02-04 2009-03-17 Sonus Networks, Inc. Policy distribution point for setting up network-based services
US20040019896A1 (en) 2002-07-23 2004-01-29 Wen-Chu Yu Method of automatic program installation for computer device
US7007049B2 (en) 2002-11-18 2006-02-28 Innopath Software, Inc. Device memory management during electronic file updating
US7197751B2 (en) 2003-03-12 2007-03-27 Oracle International Corp. Real-time collaboration client
US7457831B2 (en) 2003-03-31 2008-11-25 Microsoft Corporation Peripheral device driver maintenance scheme for networked peripheral device clients
US7810089B2 (en) * 2004-12-30 2010-10-05 Citrix Systems, Inc. Systems and methods for automatic installation and execution of a client-side acceleration program
US8056072B2 (en) * 2005-10-31 2011-11-08 Microsoft Corporation Rebootless display driver upgrades

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
microsoft corporation.NewDisp: Dynamic Reload of a Display Driver.《www.osronline.com/ddkx/graphics/dpyddi_57af.htm》.2003, *

Also Published As

Publication number Publication date
EP1946221A1 (en) 2008-07-23
BRPI0617793A2 (pt) 2011-08-09
JP2009514122A (ja) 2009-04-02
US20110321027A1 (en) 2011-12-29
WO2007053260A1 (en) 2007-05-10
CN101297284A (zh) 2008-10-29
RU2008117123A (ru) 2009-11-10
US8056072B2 (en) 2011-11-08
RU2397539C2 (ru) 2010-08-20
US20070101343A1 (en) 2007-05-03
JP5038321B2 (ja) 2012-10-03
US8302089B2 (en) 2012-10-30
KR101343176B1 (ko) 2013-12-19
KR20080067633A (ko) 2008-07-21
EP1946221A4 (en) 2009-01-14

Similar Documents

Publication Publication Date Title
CN101297284B (zh) 无需重新引导的显示驱动程序升级
US10067835B2 (en) System reset
US8769530B2 (en) Migrating a virtual machine that owns a resource such as a hardware device
US20110078293A1 (en) Systems and methods for extension of server management functions
CN104823160A (zh) 虚拟机-保留主机更新
US20060224794A1 (en) Using USB memory device to recover operating system
US20080114923A1 (en) Apparatus and method for controlling operation processing in nonvolatile memory
CN101438266A (zh) 按照离散的级引导操作系统
CN102567052A (zh) 启用配置有图形处理器的服务器的远程管理的技术
JP2001318874A (ja) システム・オペレーションの間にデバイス・ドライバを置き換えるシステム,方法及びそのコンピュータ・プログラム製品
US8832494B2 (en) Methods and apparatus for displaying video despite a nonfunctional operating system
CN104137062A (zh) 将代码动态注入到运行中的进程
KR100654675B1 (ko) 호스트 컴퓨터상에서 응용프로그램 수행을 위한 휴대용디지털 저장장치 시스템 및 방법
CN102207876B (zh) 流式传输客户端系统基本镜像
US9852029B2 (en) Managing a computing system crash
US20060136934A1 (en) Method, apparatus and system for instructing a virtual device from a virtual machine
KR102449979B1 (ko) 차량 가상화 구조 기반의 시스템 제어 방법 및 장치
CN114416148A (zh) 一种虚拟机管理程序热升级方法、装置及存储介质
US20090157908A1 (en) Software Driver Device
CN111787065B (zh) 一种云桌面部署方法及云桌面系统
US11323331B2 (en) Cloud server and operating method of the same
KR102491361B1 (ko) 차량 가상화 구조 기반의 시스템 제어 방법 및 장치
CN114003341A (zh) 分布式存储服务的升级方法、装置、电子设备及存储介质
CN112463249A (zh) Android云应用的启动方法、装置及系统
CN117873513A (zh) 一种嵌入式系统的usb升级方法、嵌入式设备及存储介质

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
ASS Succession or assignment of patent right

Owner name: MICROSOFT TECHNOLOGY LICENSING LLC

Free format text: FORMER OWNER: MICROSOFT CORP.

Effective date: 20150421

C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20150421

Address after: Washington State

Patentee after: Micro soft technique license Co., Ltd

Address before: Washington State

Patentee before: Microsoft Corp.

CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20120718

Termination date: 20191003