CN101542443A - 自动化的客户端设备管理 - Google Patents

自动化的客户端设备管理 Download PDF

Info

Publication number
CN101542443A
CN101542443A CNA2006800149024A CN200680014902A CN101542443A CN 101542443 A CN101542443 A CN 101542443A CN A2006800149024 A CNA2006800149024 A CN A2006800149024A CN 200680014902 A CN200680014902 A CN 200680014902A CN 101542443 A CN101542443 A CN 101542443A
Authority
CN
China
Prior art keywords
client device
health
client
heuristic data
remedying
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.)
Pending
Application number
CNA2006800149024A
Other languages
English (en)
Inventor
B·R·豪尔
D·P·米沙阿
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
Application filed by Microsoft Corp filed Critical Microsoft Corp
Publication of CN101542443A publication Critical patent/CN101542443A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/552Detecting local intrusion or implementing counter-measures involving long-term monitoring or reporting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/20Network architectures or network communication protocols for network security for managing network security; network security policies in general

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Quality & Reliability (AREA)
  • Debugging And Monitoring (AREA)

Abstract

描述了一种自动化的客户端设备管理技术。在一个实现中,描述了一种包括通过网络从多个客户端设备[104(n)]收集启发式数据的方法[400]。启发式数据描述包括多个客户端设备的可靠性、性能和安全性的多个健康因素。启发式数据的收集是周期性地自动进行,而无需多个客户端设备的用户干涉[408]。对应于从关于至少一个健康因素的启发式数据标识的问题产生一种补救,该补救治愈该问题并解决在启发式数据中指示的一个或多个其它健康因素[412]。

Description

自动化的客户端设备管理
技术领域
本发明一般涉及客户端设备,尤其涉及自动化的客户端设备管理。
背景技术
诸如桌上型个人计算机、个人数字助理等的客户端设备的复杂性随着诸如客户端设备的处理、存储器和显示器资源的增加而不断增长。此外,客户端设备可包括针对各种各样因素的硬件。例如,桌上型个人计算机可具有用于处理数据的显著处理资源和存储器资源,个人数字助理可包括配置成消耗有限功率而延长移动使用的硬件设备,游戏操纵台可配置成提供高清晰度图形等。此外,这些设备中的每个可包括针对在这些客户端设备的特定硬件上使用的应用程序。例如,无线电话可包括配置成使用最小的处理资源在有限显示区域上提供输出的应用程序。
然而,这些客户端设备不断增长的复杂性和功能造成维护客户端设备的复杂性的相应增加。例如,用户越来越难以确定如何对由不同客户端设备使用的各种软件进行更新、如何保护客户端设备的弱点免受恶意人群的攻击、以及如何通过进行维护来使客户端设备保持在最佳状态运行。因此,客户端设备可能工作在非最佳性能下,这甚至会造成用户过早地更新客户端设备。
因此,存在对客户端管理的改进技术的持续的需求。
发明内容
描述了自动化的客户端设备管理技术。在一实现中,描述了包括通过网络从多个客户端设备收集启发式数据(heuristic data)的一种方法。启发式数据描述包括多个客户端设备的可靠性、性能和安全性的多个健康因素。启发式数据的收集周期性地自动进行而无需多个客户端设备用户的干涉。对应于从关于至少一个健康因素的启发式数据标识出问题产生解决该问题并应对启发式数据中指示的一个或多个其它健康因素的补救。
在另一实现中,一种方法包括标识客户端设备的多个健康因素至少之一的问题。使用描述包括可靠性、性能和安全性的多个健康因素的启发式数据来标识出问题,且启发式数据通过网络周期性自动收集而无需多个所述客户端设备的用户的干涉。对应于所标识出的问题产生补救,且对于多个健康因素对客户端设备的补救的效果进行分析。
在附加实现中,一种方法包括监控包括可靠性、性能和安全性的多个客户端设备健康因素并且至少部分基于与从多个客户端收集的启发式数据的比较来确定客户端设备的总体健康。该客户设备总体健康的单个指示被输出,它不包括对一个或多个健康因素的分离指示。
附图说明
图1是示例性实现中可用于使用自动化客户端设备管理技术的环境的示图。
图2是示例性实现中系统的示图,更详细地示出图1的客户健康服务和客户端设备。
图3是示例性实现的示图,其中图1的显示设备在用户界面中输出表示客户端设备的总体健康的单个指示。
图4是示出示例性实现中过程的流程图,其中监控多个客户服务端获得的启发式数据用于产生对所标识的问题的补救,然后监控启发式数据以确定对客户端设备的补救效果。
图5是示出示例性实现中过程的流程图,其中对于包括性能、可靠性和安全性,对客户端设备的更新效果进行监控。
图6是示出示例性实现中过程的流程图,其中输出了基于多个客户端健康因素描述客户端设备总体健康的单个指示。
图7是分布式环境中的客户端设备示例性实现。
讨论中,在示例中使用相同的附图标记来指代类似的结构和组件。
具体实施方式
综述
当前,用户通常自己维护其客户端设备(例如个人计算机),对于性能、维护和安全方面,这变成越来越困难的任务。由于大多数用户对熟悉解决这些问题的技术并不感兴趣,该问题变得进一步复杂化。因此,由于用户安装对客户端设备上软件可用的更新失败或者客户端设备性能的正确调整(例如磁盘碎片整理)没有及时实施等,用户的客户端设备可能会经历与客户端设备不当维护关联的可靠性问题、可能会遭受恶意人群的攻击、可能会变得过早地“过时”。
在各种实现中,描述了用于抢先地(proactively)和反应地(reactively)维护用户客户端设备以确保其“健康”的客户健康服务。例如,客户健康服务可在实时基础上监控用户的客户端设备,以标识弱点和可靠性问题且之后提供解决这些问题的补救。此外,为了帮助标识这些客户端设备的“健康”问题(例如性能、安全性和可靠性),客户健康服务可从客户端设备收集启发式数据。客户健康服务也可启动周期性维护功能来向用户提供优化计算环境。此外,一个或多个实现可提供定义何为期望的安全、可靠和性能的基线度量(baseline metric)。这些基线度量可用于多种用途,例如逐个对比客户端设备。
在以下讨论中,首先描述用于使用客户健康服务的示例性环境。然后,描述可用于示例性环境以及其它环境中的示例性过程。
示例性环境
图1是示例性实现中可用于使用自动化的客户端设备管理的环境100的示图。所示环境100包括通过网络106通信地耦合于多个客户端设备104(n)的客户健康服务,其中“n”可以是从1至“N”的任意整数。客户端设备104(n)可通过各种方法针对网络访问进行配置。例如,一个或多个客户端设备104(n)可配置成计算设备,诸如具有显示设备110和输入设备(示为键盘112)的桌上型计算机108、移动站、娱乐设施、通信地耦合于显示设备的置顶盒、无线电话、游戏操纵台等。因此,客户端设备104(n)可以在从具有丰富存储器和处理器资源的全资源设备(例如个人计算机、游戏操纵台)至具有有限存储器和/或处理资源的低资源设备(例如常规置顶盒、手持游戏操纵台)的范围内。参照图7可以找到配置成分布式环境中的计算设备的示例性客户端设备104(n)的进一步讨论。
虽然网络106示为因特网,网络可以是各种各样的配置。例如,网络106可包括广域网(WAN)、局域网(LAN)、无线网络、公众电话网、内部网等。此外,虽然示出单个网络106,但是网络106可配置成包括多个网络。
客户端设备104(n)示为包括可执行成监控多个构件116(j)的操作的客户端管理模块114(n),其中“j”可以是从1至“J”的任意整数。例如,多个构件116(j)可通过由客户端设备104(n)执行软件而提供,诸如应用程序、驱动器和其它可执行模块。可对构件116(j)进行监控以基于多个健康因素确定客户端设备104(n)的总体健康(即适于进行期望任务)。此外,更多的构件116(j)之一可由硬件提供并诸如通过存储器扫描、盘健康、网络吞吐量和可靠性、外围设备操作等进行监控,参照图2可以找到进一步讨论。
例如,客户端管理模块114(n)可监控客户端设备104(n)的安全118、可靠性120和性能122。安全118可与影响客户端设备104(n)的健康的诸如病毒、间谍软件(spyware)等的各种关于安全的因素相关。可靠性120因素可涉及客户端设备104(n)的构件116(j)按需地在期望时间量条件下工作的能力。可靠性120可通过各种方法表示,诸如失败之间的平均时间。例如对于个人计算机,可靠性可表示为在给定时段内个人计算机崩溃、“当机”(例如死机)的次数、应用程序故障次数等。个人计算机的可靠性也可在组件级表示,诸如盘读/写失败次数、网络连接设备失败频率等。
性能122与执行所需任务时构件116(j)的效率相关,并且可基于所述构件以各种方式表示,诸如显示设备呈现页面所需时间量、启动或关闭设备所需的时间量、开始应用程序执行的时间量等。此外,性能也可以在组件级表示,诸如向存储器写数据、使用网络连接设备传输数据的时间量等。这些示例是非穷尽性的,因此,也可通过客户端管理模块114(n)的执行而对各种其它健康因素进行监控而不背离其精神和范围。
客户端管理模块114(n)也可执行成在客户端设备104(n)上的存储126中存储描述监控的多个启发式数据124(h),其中“h”可以是从1至“H”的任意整数。例如,启发式数据124(h)可描述安全118健康因素,诸如如果客户端设备104(n)上包括间谍软件则由客户端设备104(n)使用的病毒防护软件和该软件所使用的病毒库版本,以及如果是如此则该软件的影响、下载到客户端设备104(n)的软件源等。此外,启发式数据124(h)也可描述客户端设备104(n)的可靠性120健康因素,诸如哪些设备(例如处理器、存储器、输出设备、输入设备、网络连接设备等)包含在客户端设备104(n)上以及各个设备提供其相应功能失败有多频繁、在客户端设备104(n)上执行软件遇到错误有多频繁等。此外,启发式数据124(h)也可描述性能122健康因素,诸如硬件设备的操作参数、客户端设备104(n)上软件执行的速度等。因此,启发式数据124(h)可描述客户端设备104(n)的总体健康。
也可执行各个客户端管理模块114(n)以对如通过网络106监控的启发式数据124(h)进行通信(例如使用“进栈”技术)用于作为启发式数据128(n)由客户健康服务102存储在存储130中。该通信也可通过其它各种方法进行,诸如通过随后的“出栈”通信技术。因此,客户健康服务可获得描述多个客户端设备104(n)中每个的安全118、可靠性120和性能122的启发式数据128(n)。
客户健康服务102被示为包括服务管理模块114(n)。服务管理模块132可执行成使用多个启发式数据128(n)来维护多个客户端设备104(n)的健康。启发式数据128(n)可通过各种方法使用。例如,服务管理模块132可以是抢先性的134,并在其发生之前控制多个客户端设备104(n)的健康问题,诸如通过进行预防性维护(例如对硬盘驱动器进行碎片整理)。服务管理模块132也可以是反应性的136以治愈已经发生的健康问题。例如,服务管理模块132可检测已经发生的多个构件116(j)中一个或多个的问题并执行一个或多个动作以治愈该问题。此外,服务管理模块132可以既是抢先性的又是反应性的,诸如通过检测已经发生的多个客户端设备104(n)之一的问题并对多个客户端设备104(n)中另一个治愈该问题。例如,对启发式数据进行收集和分析以确定客户端设备104(n)子集上发生了什么,以便于确定:如果进行抢先性测量的话,在网络106上对多个客户端设备104(n)中的每个进行何种抢先性测量。参照以下附图可以找到对客户端管理模块114(n)和服务管理模块132的操作的进一步讨论。
多个客户端设备104(n)构件的集中管理的另一方面是在某些情形中,各种构件可能彼此产生作用。例如,反间谍软件构件可捕捉导致性能退化的应用程序或者策略(例如黑名单或白名单)可在不同构件之间共享。
通常,本文所述的任一功能可通过使用软件、固件(例如固定的逻辑电路)、手动处理、及这些实现的组合来实现。本文使用的术语“模块”和“逻辑”通常表示软件、固件或软件与固件的组合。在软件实现情形中,模块、功能或逻辑表示在处理器(例如一个CPU或多个CPU)上执行时实现指定任务的程序代码。程序代码可存储在一个或多个计算机可读存储器设备中,参照图2可找到进一步的讨论。以下所述的管理技术的构件是与平台无关的,即该技术可在具有各种处理器的各种商用计算平台上实现。
图2是示例性实现中系统200的示图,更详细地示出图1的客户健康服务102和客户端设备104(n)。客户健康服务102示为由多个健康服务器202(a)实现,其中“a”可以是从1至“A”的任意整数。此外,多个健康服务器202(a)和多个客户端设备104(n)示为包括相应的处理器204(a)、206(n)和相应的存储器208(a)、210(n)。服务管理模块在图2中示为“服务管理模块132(a)”,以便于指出多个健康服务器202(a)中的每个包括对应的服务管理模块132(a)。
处理器不受其构成材料或其使用的处理机制的限制。例如,处理器可由半导体和/或晶体管(例如电子集成电路(IC))组成。在这种上下文中,处理器可执行指令可以是电子可执行指令。或者,处理器的机制或针对处理器的机制以及由此的计算设备的机制或针对计算设备的机制可包括,但不局限于,量子计算、光学计算、机械计算(例如使用纳米技术)等。此外,虽然对于健康服务器202(a)和客户端104(n)的每个分别示出单个存储器208(a)、210(n),但是可使用各种类型的存储器及其组合,诸如随机存取存储器(RAM)、硬盘存储器、可拆卸介质存储器等。
服务管理模块132(a)和客户端管理模块114(n)可协作以提供“闭环(closed-loop)”系统,该系统提供客户端设备104(n)性能、可靠性和安全性的实时监控并采取措施来解决与这些健康因素中一个或多个相关的问题。例如,客户端管理模块114(n)和服务管理模块132(a)可提供诸如数据丢失、隐私侵入、病毒、间谍软件和其它入侵攻击的实时监控,并在客户端设备104(n)的用户可察觉的任何这些健康因素的降低之前及时、抢先处理这些问题。此外,服务管理模块132(a)和客户端管理模块144(n)可进行常规日程的“调准(tune up)”和“换油(oil change)”类的维护以使客户端设备104(n)保持“健康”,即如期望地操作。通过做这类抢先维护,目前用户通常遇到的麻烦可得以消除,进而改进用户对客户端设备104(n)的满意度。
客户端管理模块114(n)示为可在处理器206(n)上执行并且可存储在客户端设备104(n)的存储器210(n)中。执行时,客户端管理模块114(n)可提供多种功能。例如,客户端管理模块114(n)可包括数据收集和通信模块212(n)、分析模块214(n)和排程器(scheduler)模块216(n)。数据收集和通信模块212(n)表示客户端管理模块114(n)收集并传递多个启发式数据124(h)的功能。例如,数据收集和通信模块212(n)可监控客户端设备104(n)的多个构件116(j)(在本示例中示为在处理器206(n)上执行的软件,但是也可包括其它硬件构件)的操作,并存储描述这些构件的安全性218(h)、可靠性220(h)和性能222(h)的启发式数据。然后,数据收集和通信模块212(n)诸如只要获得网络连接则通过在网络106上以周期时间间隔将启发式数据124(h)“进栈”到客户健康服务102或通过其它方式,将该数据传递到客户健康服务102。
客户端管理模块114(n)也示为包括表示可对多个启发式数据124(h)进行分析的功能的分析模块214(n)。该分析可通过各种方式进行。例如,分析模块214(n)可注意到启发式数据124(h)的趋势并基于与这些趋势的偏离、趋势的一般方向(例如性能的逐渐下降)等来标识安全性218(h)、可靠性220(h)和/或性能222(h)的问题。在另一示例中,分析模块214(n)可使用从其它客户端获得的启发式数据来检查从受监控的客户端设备104(n)的操作而收集的启发式数据124(h)。例如,客户端管理模块114(n)可从客户健康服务102接收描述多个其它客户端操作的启发式数据128(n),并且使用该信息确定客户端设备104(n)是否“健康”。各种其它分析示例也是可以预期的。
也可输出分析模块214(n)的结果以便于客户端设备104(n)的用户观看。例如,分析模块214(n)可使用安全性218(h)、可靠性220(h)和性能222(h)健康因素以确定客户端设备104(n)的总体健康状况。然后,该状况可通过单个指示而得到反映,使得用户能够获知客户端设备104(n)的总体健康而无需从该健康如何确定的具体细节中拣选。参照图3和6可以找到对单个指示的进一步讨论。
客户端管理模块114(n)可进一步示为包括排程器模块216(n)。排程器模块216(n)表示对由客户端管理模块114(n)实现的任务进行程序安排的功能。例如,排程器模块216(n)可用于对客户端设备104(n)的抢先维护任务进行程序安排,诸如更新病毒库、对盘驱动器进行碎片整理、更新驱动器、从桌面移除不使用的图标、检查软件更新等。排程器模块216(n)也可用于对从客户端设备104(n)到客户健康服务102的启发式数据124(h)的通信进行程序安排。
服务管理模块132(a)也可示为包括数据收集和通信模块224(a)、分析模块226(a)和可与客户端设备104(n)的客户端管理模块114(n)中所包含的模块相同或不同的排程器模块228(a)。例如,数据收集和通信模块224(a)可被执行以从各个客户端设备104(n)获得启发式数据124(h)、汇集所收集的启发式数据128(n)以及将所汇集的启发式数据128(n)发送到各个客户端设备104(n)。因此,以这种方式,各个客户端设备104(n)的分析模块214(n)可获知多个客户端设备的操作。
在另一示例中,启发式数据128(n)不会被传递“回到”客户端设备104(n),而是由分析模块226(a)进行分析来确定是否已经或将要发生任何客户端设备健康相关的问题。基于该分析,分析模块226(a)可产生多个补救230(r)中一个或多个,其中“r”可以是从1至“R”的任意整数,如图2所示地包括在存储器208(a)的存储232中。然后,一个或多个补救230(r)可通过网络106传递客户端设备104(n)以“治愈”所标识出的问题,参照图4可以找到进一步的讨论。在再一示例中,分析可由分析模块214(n)、226(a)两者实现。
也可执行服务管理模块132(a)的排程器模块228(a)来对各种任务进行程序安排。例如,可执行排程器模块228(a)来对补救230(r)向特定客户端设备104(n)传递的时间周期进行程序安排。也可执行排程器模块228(a)可对数据收集和通信模块224(a)何时从多个客户端设备104(n)收集启发式数据124(h)进行程序安排。此外,排程器模块228(a)可对分析模块226(a)何时分析多个启发式数据128(n)进行程序安排。各种其它示例也是可以预期的。
因此,客户健康服务102通过客户端管理模块114(n)与服务管理模块132(a)的通信提供各种各样的功能。例如,模块可按需提供抢先监控“24x365”并采取预防措施;提供全面、自动化补救用于标识客户端健康相关的问题;可产生并实现自动化补救而无需客户端设备104(n)的用户干预;可调整成客户端设备104(n)的具体配置;可向客户端设备104(n)的用户传递“内心的宁静(peace-of-mind)”;提供实现支持功能的可扩展、普通的服务传输平台;进行统计收集和收获以维护客户端设备104(n)等。此外,模块还提供逻辑以组合不同的客户健康服务来提供“更高级”的服务,诸如通过自动恢复未感染文件的备份拷贝。参照图3-6可以找到该功能的进一步讨论。
图3是示例性实现300的示图,其中图1的显示设备110示为在用户界面中输出表示客户端设备总体健康的单个指示。显示设备110包括显示区域302,该区域包括文字处理304用户界面和任务栏306的显示。任务栏306可以是包括客户端设备104(n)总体健康的单个指示308的“锁定”或“弹出”任务栏。
所示单个指示308被示为苦脸,在本情形中它指示客户端设备104(n)的总体健康并不好。因此,单个指示308可提供对客户端设备104(n)总体健康的指示,该指示甚至对新手用户都显而易见,并且“隐藏”了用于达到总体健康而确定的健康因素的细节。在一实现中,单个指示308可选择成导致这些健康因素(例如可靠性、性能、安全性等)的输出,从而需要这种特性的用户可以获得。参照图5可以找到对单个指示的进一步讨论。
示例性过程
以下讨论描述可通过使用上述系统和设备实现的自动化管理技术。各个过程的诸方面可在硬件、固件、或软件、及其组合中实现。过程被示为由一个或多个设备进行的操作的一组框来说明,并且不必受限于为相应框进行的操作所示出的次序。在以下讨论的诸部分中,对图1的环境和图2的系统进行参照。
图4是示出示例性实现中过程400的流程图,其中从监控多个客户端设备获得的启发式数据用于产生对所标识问题的补救,然后对所标识问题进行监控以确定客户端设备上补救的效果。对客户端设备的多个构件对包括可靠性、性能和安全性的多个客户端健康因素的一个或多个影响,可周期性地进行自动监控(框402)。例如,可执行客户端管理模块114(n)以监控间谍软件监控程序的执行,并确定该程序对客户端设备104(n)上执行的其它软件的影响。该监控可如排程器模块216(n)所程序安排的那样周期性进行、连续进行等。
对描述监控的启发式数据进行存储(框404)。例如,数据收集和通信模块212(n)可将启发式数据124(h)本地存储在客户端设备104(n)上。然后,所存储的启发式数据被周期地传递到客户健康服务102(框406)。而且,例如,排程器模块216(n)可对周期间隔进行程序安排,在该间隔中,启发式数据124(h)被通过网络1 06被传递到客户健康服务102。在另一情形中,排程器模块228(a)可对多个客户端设备104(n)的每个发送启发式数据124(h)安排不同的相应时间。各种其它情形也是可以预期的而不背离本发明的精神和范围。
因此,客户健康服务收集并存储来自多个客户端设备的启发式数据(框408)。然后,客户健康服务可通过分析所收集的启发式数据来标识对至少一个客户端健康因素的不利影响(框410)。例如,客户健康服务102可执行分析模块226(a),这指示正在客户端设备104(n)的子集上执行的特定构件116(j)导致客户端设备104(n)性能的显著下降。然后,客户健康服务可产生解决不利影响的对应补救(框412)。例如,客户健康服务102可产生使上述间谍软件监控应用程序增加在客户端设备104(n)上检查间谍软件之间的时间量的补丁。然后,客户健康服务将补救传递到至少一个客户端设备(框414)。例如,补救可针对经历过间谍软件监控应用程序对客户端健康的不利影响的客户端设备。在另一情形中,补救可针对具有间谍软件监控应用程序的各个客户端设备,从而在客户端设备经历不利影响之前抢先地治愈该影响。
对补救是否需要用户干涉进行确定(确定框416)。如果否(来自确定框416的“否”),则补救自动在客户端设备上安装而无需用户干涉(框418)。因此,在这种情形中,客户端设备的用户甚至并不需要知道补救被安装。如果补救需要用户干涉(来自确定框416的“是”),则用户得到提示进行由补救指定的动作(框420)。例如,补救可配置成“逐步引导”客户端设备的用户进行需要执行的动作,使得即使受到很少培训的新手也能安装补救。
在补救安装之后,补救对多个客户端健康因素中每个的一个或多个影响被周期性地自动监控(框422)。例如,解决性能客户端健康因素(例如由间谍软件应用程序过度激进监控)而安装的补救可监控该补救对诸如可靠性和安全性的其它客户端健康因素的影响。这样,补救对客户端设备的总体健康的影响得以确定,而不仅仅是最初的健康因素得以解决。再次对是否检测到不利影响进行确定(确定框424)。如果否(来自判定框424的“否”),过程400返回到客户端设备的监控(框402)。如果检测到不利影响(来自判定框424的“是”),则客户健康服务再次产生对应的补救(框412)且该过程的一部分被重复(例如框414-424)。这样,客户健康服务102可提供抢先的监控以及解决客户端健康因素问题的全面和自动化解决方案。
虽然图4的过程将分析描述成由客户健康服务102进行,但是该分析也可通过其它各种方式进行。例如,来自多个客户端104(n)的启发式数据收集可传递到各个客户端以便于通过相应分析模块214(n)的执行而进行分析。在另一情形中,该分析由分析模块226(a)、214(n)两者进行。各种其它情形也是可以预期的。
图5是示出示例实现中过程500的流程图,其中针对包括性能、可靠性和安全性的客户端健康因素,监控更新对客户端设备的影响。对是否有客户端设备一个或多个软件模块可用的更新进行确定(框502)。例如,数据收集和通信模块224(a)可根据由排程器模块228(a)指定的时间执行,以检查位于客户端设备104(n)上软件模块的更新。
获得该更新并在客户端设备上进行安装而无需用户干涉(框504)。例如,服务管理模块132(a)可将更新传递到客户端设备104(n),由客户端管理模块114(n)安装。因此,客户端设备的用户甚至可以不知道更新被获得并被安装。
周期性地自动监控更新对多个健康因素的一个或多个影响,其中健康因素包括可靠性、性能和安全性(框506)。然后,确定是否检测到不利影响(确定框508)。例如,安装在客户端设备上的各个软件可对客户端设备的可靠性、性能和安全性具有某些影响。然而,一些影响是可以接受的(例如性能的小幅下降)而其它影响则不然,例如将弱点暴露在潜在的攻击之下。因此,可对考虑了多个健康因素的总体分数进行计算以确定该影响是否可以接受。例如,可使用阈值来指示对总体客户端健康的影响的分数是否可以接受。在计算分数时可对多个因素进行加权。各种其它技术也可用于确定该影响是否可以接受。
在图5中,对是否检测到不利影响(例如超过视为“良好客户端健康”的阈值的总体健康影响)进行确定(确定框508)。如果否(来自确定框508的“否”),则继续监控(框506)。然而,如果检测到不利影响(来自确定框508的“是”),则在本示例中更新被自动移除而无需用户干涉(510)。因此,更新对客户端设备总体健康的影响可用于确定是否保留更新。虽然在本情形中描述了软件更新,但是可监控各种动作,诸如如上所述地从客户健康服务102传递而来的补救(例如政策)的影响、在客户端设备104(n)上新近安装或移除应用程序、客户端设备104上的新硬件或已拆卸硬件的影响等。
图6是示出示例性实现中的过程600的流程图,其中输出了基于多个客户端健康因素描述客户端设备总体健康的单个指示。监控多个客户端设备构件对多个客户端健康因素的一个或多个影响(框602)。客户端健康因素包括可靠性、性能和安全性。调节表示基于多个客户端健康因素的客户端设备健康总体状况的单个指示器(框604)。例如,可以使用颜色变化、不同的指示器输出(例如笑脸和苦脸)、调节条的长度等。
输出单个指示器(框606)用于显示并由客户端设备的用户观看。因此,客户端设备的用户可获知客户端设备的总体健康而不会受制于多个健康因素的细节。在一实现中,单个指示器是可以选择成导致多个健康因素中每个的状态输出使得用户可按需获得该信息。
示例性操作环境
本文所述的各种组件和功能可通过许多单独的计算机实现。图7示出计算机环境700的典型示例的组件,包括由附图标记702标记的计算机,它可由客户健康系统102监控以维护计算机702的健康。应该意识到计算机702可与图1和2的客户端设备104(n)相同或不同。图7所示组件仅为示例,且不旨在对本发明功能范围设定任何限制;本发明不必依赖于图7所示构件。
通常,可使用各种不同通用目的或专用目的的计算系统配置。适于用于本发明的众所周知的计算系统、环境和/或配置的示例包括,但不局限于:个人计算机、服务器计算机、手持或膝上型设备、多处理器系统、基于微处理器的系统、机顶盒、可编程消费电子设备、网络PC、可连接网络的设备(network-ready device)、小型计算机、大型计算机、包括上述系统或设备任一个的分布式计算环境等。
在许多情形中,计算机功能通过可由计算机执行的诸如软件组件的计算机可执行指令实施。通常,软件组件包括进行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等。任务也可由通过通信网络链接的远程处理设备实现。在分布式计算环境中,软件组件可以位于本地和远程计算机存储介质中。
指令和/或软件组件在不同时间存储在可作为计算机一部分或可由计算机读取的各种计算机可读介质中。程序通常分布在例如软盘、CD-ROM、DVD、或诸如调制信号的某些形式的通信媒介上。从这里将它们安装或加载到计算机辅助存储器中。执行时,将它们至少部分地加载到计算机主存储器中。
为说明目的,程序和诸如操作系统的其它可执行程序组件在本文中示为分离框,尽管意识到这种程序和组件在不同时间驻留在计算机的不同存储组件中并且由计算机的数据处理器执行。
参照图7,计算机702的组件包括,但不局限于处理单元704、系统存储器706和将包括系统存储器的各种系统组件耦合于处理单元704的系统总线708。系统总线708可以是包括存储器总线或存储器控制器、外围总线和使用各种总线架构的本地总线的若干类总线结构中的任一种。作为示例而非限制,这种架构包括工业标准架构(ISA)总线、微通道架构(MCA)总线、增强ISA(EISA)总线、视频电子标准协会(VESA)局域总线、和也称为Mezzanine总线的外围组件互连(PCI)总线。
计算机702通常包括各种计算机可读介质。计算机可读介质可以是可由计算机702访问的任何可用介质,并且包括易失性和非易失性介质、可拆卸和不可拆卸介质。作为示例而非限制,计算机可读介质可包括计算机存储介质和通信媒介。“计算机存储介质”包括以任何方法和技术实现用于存储诸如计算机可读指令、数据结构、程序模块或其它数据的易失性和非易失性、可拆卸和不可拆卸介质。计算机存储介质包括,但不局限于:RAM、ROM、EEPROM、闪存或其它存储技术、CD-ROM、数字多功能盘(DVD)或其它光盘存储、磁性卡带、磁带、磁盘存储或其它磁性存储设备、或可用于存储所需信息并可由计算机702访问的任何其它介质。通信媒介通常实施为计算机可读指令、数据结构、程序模块或在诸如载波或其它传输机制的调制数据信号中的其它数据,并且包括任何信息传输媒介。术语“调制数据信号”表示使其特征中一个或多个以在信号中编码信息的方式设置或改变的信号。作为示例而非限制,通信媒介包括诸如有线网络或直接线连接的有线媒介、和诸如声学、RF、红外和其它无线媒介的无线媒介。上述任一种的组合也涵盖在计算机可读介质的范围内。
系统存储器706包括诸如只读存储器(ROM)710和随机存取存储器(RAM)712的易失性和/或非易失性存储器形式的计算机存储介质。包含诸如在启动过程中帮助在计算机702内元件之间传递信息的基本例程的基本输入/输出系统714(BIOS)通常存储在ROM 710中。RAM 712通常包含可由处理单元704立即访问和/或正在其上运行的数据和/或软件组件。作为示例而非限制,图7示出操作系统716、应用程序718、软件组件720和程序数据722。
计算机702也可包括其它可拆卸/不可拆卸、易失性/非易失性计算机存储介质。仅作为示例,图7示出从不可拆卸、非易失性磁性介质读取或向其写入的硬盘驱动器724、从可拆卸、非易失性磁盘728读取或向其写入的磁盘驱动器726、以及从诸如CD ROM的可拆卸、非易失性光盘732或其它光学介质读取或向其写入的光盘驱动器730。可用于示例性操作环境的其它可拆卸/不可拆卸、易失性/非易失性计算机存储介质包括,但不局限于:磁带盒、闪存卡、数字多功能盘、数字录像带、固态RAM、固态ROM等。硬盘驱动器724通常通过诸如数据介质接口734的不可拆卸存储器接口连接到系统总线708,且磁盘驱动器726和光盘驱动器730通常由可拆卸存储器接口连接于系统总线708。
上述和图7所示的驱动器及其关联计算机存储介质提供计算机可读指令、数据结构、软件组件和计算机702的其它数据的存储。例如在图7中,硬盘驱动器724示为存储操作系统716’、应用程序718’、软件组件720’、和程序数据722’。注意到这些组件可与操作系统716、应用程序718、软件组件720、和程序数据722相同或不同。在此对操作系统716’、应用程序718’、软件组件720’、和程序数据722’给出不同的附图标记以至少说明它们是不同的拷贝。用户可通过诸如键盘736、和通常是指鼠标、轨迹球或触控板的定点设备(未示出)向计算机702键入指令和信息。其它输入设备可包括源外围设备(诸如提供流数据的话筒738或相机740)、操纵杆、游戏手柄、卫星盘、扫描仪等。这些和其它输入设备通常通过耦合于系统总线的输入/输出(I/O)接口742连接于处理单元702,但是可由诸如并行端口、游戏端口或通用串行总线(USB)的其它接口和总线结构连接。监视器744或其它类型的显示设备也可经由诸如视频适配器746的接口连接于系统总线708。除了监视器744之外,计算机也可包括可通过I/O接口742连接的其它外围呈现设备(例如扩音器)和一个或多个打印机。
计算机可在逻辑连接于诸如远程设备750的一个或多个远程计算机的网络化环境中操作。远程设备750可以是个人计算机、可连接网络的设备、服务器、路由器、网络PC、对等设备或其它共用网络节点,并且通常包括以上相关于计算机702描述的元件中多个或全部。图7中所示的逻辑连接包括局域网(LAN)752和广域网(WAN)754。虽然图7所示WAN 754是因特网,但是WAN 754可以包括其它网络。这种网络环境在办公室、企业范围计算机网络、内部网等中十分普遍。
当用于LAN网络环境时,计算机702通过网络接口或适配器756连接到LAN752。当用于WAN网络环境时,计算机702通常包括在因特网754上建立通信的调制解调器758或其它设备。内置或外置的调制解调器758可经由I/O接口742或其它适当机制连接于系统总线708。在网络化环境中,相关于计算机702描述的程序模块或其部分可存储在远程设备750中。作为示例而非限制,图7示出驻留在远程设备750上的远程软件组件760。应该理解,所示网络连接是示例性的且可使用在计算机之间建立通信链接的其它手段。
结论
虽然本发明以针对结构构件和/或方法逻辑行为的语言描述,但是应该理解,在所附权利要求书中限定的本发明,不必受限于所述具体构件或行为。相反,具体构件和行为是作为实施要求权利的本发明的示例性形式而公开的。

Claims (20)

1.一种方法,包括:
通过网络从多个客户端设备收集启发式数据,其中:
所述启发式数据描述包括所述多个客户端设备的可靠性、性能和安全性的多个健康因素;以及
所述收集被周期性地自动进行,而无需来自所述多个客户端设备的用户的干涉;以及
产生与从关于至少一个所述健康因素的所述启发式数据标识的问题对应的补救,所述补救治愈所述问题并解决在所述启发式数据中指示的一个或多个其它所述健康因素。
2.如权利要求1所述的方法,其特征在于,由于所述问题还未造成至少一个所述客户端设备总体健康的可觉察的降低,所述补救对至少一个所述客户端设备是抢先的。
3.如权利要求1所述的方法,其特征在于,所产生的补救解决多个问题使得所述补救对一个所述问题的应用也解决另一所述问题。
4.如权利要求1所述的方法,其特征在于,所述收集是通过接收由所述多个客户端设备在网络上向进行所述收集和所述产生的客户健康服务推出的所述启发式数据而实现的。
5.如权利要求4所述的方法,还包括在各个所述客户端设备上执行模块以监控所述客户端设备的多个健康因素来获得相应的所述启发式数据。
6.如权利要求1所述的方法,还包括将所述补救自动应用于至少一个所述客户端设备而无需所述至少一个所述客户端设备的对应用户的干涉。
7.如权利要求1所述的方法,还包括:
确定至少一个所述客户端设备的总体健康;以及
输出所述客户端设备总体健康的单个指示,所述单个指标不包括对一个或多个所述健康因素的分离指示。
8.如权利要求7所述的方法,其特征在于,所述确定至少部分地基于与从所述多个客户端设备收集的所述启发式数据的比较。
9.如权利要求8所述的方法,其特征在于,所述确定由至少一个所述客户端设备进行。
10.一种方法,包括:
标识客户端设备多个健康因素中至少一个的问题,其中:
所述问题通过使用描述包括可靠性、性能和安全性的所述多个健康因素的启发式数据而被标识;以及
所述启发式数据通过网络被周期性地自动收集而无需来自多个所述客户端设备的用户的干涉;
产生对应于所标识问题的补救;以及
分析关于所述多个健康因素,所述补救对所述客户端设备的影响。
11.如权利要求10所述的方法,其特征在于,由于所述问题并未造成所述客户端设备总体健康的可觉察降低,所述补救对所述客户端设备是抢先的。
12.如权利要求10所述的方法,其特征在于,所述分析至少部分地基于与从多个所述客户端设备收集的启发式数据的比较。
13.如权利要求10所述的方法,还包括:
基于所述分析产生另一补救;以及
监控关于所述多个健康因素,所述另一补救对所述客户端设备的影响。
14.如权利要求10所述的方法,还包括:
确定所述客户端设备的总体健康;以及
输出所述总体健康的单个指示,所述单个指示不包括对一个或多个所述健康因素的分离指示。
15.如权利要求10所述的方法,还包括将所述补救自动应用于所述客户端设备而无需所述客户端设备用户的干涉。
16.一种方法,包括:
监控包括可靠性、性能和安全性的客户端设备的多个健康因素;
至少部分地基于与从多个所述客户端收集的启发式数据的比较来确定所述客户端设备的总体健康;以及
输出所述客户端设备总体健康的单个指示,所述单个指示不包括对一个或多个所述健康因素的分离指示。
17.如权利要求16所述的方法,其特征在于,所述单个指示是包含在任务栏内的输出。
18.如权利要求16所述的方法,其特征在于,所述单个指示可选择成导致一个或多个所述健康因素的一个或多个所述分离指示的输出。
19.如权利要求16所述的方法,还包括:
产生与从所述启发式数据标识的问题相对应的抢先性补救;
将所述补救应用于所述客户端设备;以及
分析关于所述多个健康因素,所述补救对所述客户端设备的影响。
20.如权利要求19所述的方法,其特征在于,所述产生和所述分析由客户健康服务通过将所述客户端设备通信地耦合到所述客户健康服务的网络进行。
CNA2006800149024A 2005-05-10 2006-04-28 自动化的客户端设备管理 Pending CN101542443A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/126,028 2005-05-10
US11/126,028 US7574322B2 (en) 2005-05-10 2005-05-10 Automated client device management

Publications (1)

Publication Number Publication Date
CN101542443A true CN101542443A (zh) 2009-09-23

Family

ID=37397062

Family Applications (1)

Application Number Title Priority Date Filing Date
CNA2006800149024A Pending CN101542443A (zh) 2005-05-10 2006-04-28 自动化的客户端设备管理

Country Status (6)

Country Link
US (1) US7574322B2 (zh)
EP (1) EP1880291A2 (zh)
JP (1) JP2008541266A (zh)
KR (1) KR20080014759A (zh)
CN (1) CN101542443A (zh)
WO (1) WO2006121646A2 (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102368718A (zh) * 2011-06-27 2012-03-07 奇智软件(北京)有限公司 一种监控程序的方法及系统
CN102439568A (zh) * 2009-11-19 2012-05-02 索尼公司 计算设备的系统健康和性能看护
CN117851304A (zh) * 2024-03-07 2024-04-09 济南浪潮数据技术有限公司 一种硬盘更换方法、装置、设备及介质

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7975184B2 (en) * 2006-04-03 2011-07-05 Donald Goff Diagnostic access system
US8713687B2 (en) * 2008-12-17 2014-04-29 Symantec Corporation Methods and systems for enabling community-tested security features for legacy applications
US8495428B2 (en) * 2009-06-30 2013-07-23 International Business Machines Corporation Quality of service management of end user devices in an end user network
JP5519436B2 (ja) * 2010-07-16 2014-06-11 キヤノン電子株式会社 システム安定度を分析する情報分析装置、情報分析方法、情報分析システムおよびプログラム
US9459976B1 (en) * 2010-12-16 2016-10-04 Trend Micro Incorporated Repair of computers that have software-related problems
CN103856368B (zh) * 2011-06-27 2018-06-26 北京奇虎科技有限公司 一种监控程序的方法及系统
US9531588B2 (en) * 2011-12-16 2016-12-27 Microsoft Technology Licensing, Llc Discovery and mining of performance information of a device for anticipatorily sending updates to the device
US9515999B2 (en) 2011-12-21 2016-12-06 Ssh Communications Security Oyj Automated access, key, certificate, and credential management
US9046886B2 (en) * 2012-04-30 2015-06-02 General Electric Company System and method for logging security events for an industrial control system
US9537879B2 (en) * 2012-06-21 2017-01-03 Avocent Huntsville, Llc Cyber security monitoring system and method for data center components
US20140195297A1 (en) * 2013-01-04 2014-07-10 International Business Machines Corporation Analysis of usage patterns and upgrade recommendations
US20140258308A1 (en) * 2013-03-06 2014-09-11 Microsoft Corporation Objective Application Rating
US10338995B2 (en) * 2017-03-10 2019-07-02 Artesyn Embedded Computing, Inc. End to end FPGA diagnostics for a safety system
US10621024B2 (en) * 2017-09-11 2020-04-14 Smart Embedded Computing, Inc. Signal pairing for module expansion of a failsafe computing system
US11075897B2 (en) 2017-10-20 2021-07-27 Vertiv It Systems, Inc. System and method for communicating with a service processor

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050038818A1 (en) * 2003-08-11 2005-02-17 Hooks David Eugene Systems and methods for creation and use of an adaptive reference model

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6535227B1 (en) * 2000-02-08 2003-03-18 Harris Corporation System and method for assessing the security posture of a network and having a graphical user interface
US7278103B1 (en) * 2000-06-28 2007-10-02 Microsoft Corporation User interface to display and manage an entity and associated resources
JP3744361B2 (ja) * 2001-02-16 2006-02-08 株式会社日立製作所 セキュリティ管理システム
EP1661025A4 (en) * 2003-08-11 2010-05-26 Chorus Systems Inc SYSTEMS AND METHOD FOR GENERATING AND USING AN ADAPTIVE REFERENCE MODEL
US7966391B2 (en) * 2004-05-11 2011-06-21 Todd J. Anderson Systems, apparatus and methods for managing networking devices

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050038818A1 (en) * 2003-08-11 2005-02-17 Hooks David Eugene Systems and methods for creation and use of an adaptive reference model

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102439568A (zh) * 2009-11-19 2012-05-02 索尼公司 计算设备的系统健康和性能看护
US8719634B2 (en) 2009-11-19 2014-05-06 Sony Corporation System health and performance care of computing devices
CN102368718A (zh) * 2011-06-27 2012-03-07 奇智软件(北京)有限公司 一种监控程序的方法及系统
CN117851304A (zh) * 2024-03-07 2024-04-09 济南浪潮数据技术有限公司 一种硬盘更换方法、装置、设备及介质

Also Published As

Publication number Publication date
US7574322B2 (en) 2009-08-11
WO2006121646A3 (en) 2009-04-16
KR20080014759A (ko) 2008-02-14
EP1880291A2 (en) 2008-01-23
WO2006121646A2 (en) 2006-11-16
JP2008541266A (ja) 2008-11-20
US20060259809A1 (en) 2006-11-16

Similar Documents

Publication Publication Date Title
CN101542443A (zh) 自动化的客户端设备管理
US10565367B2 (en) Filtering data transfers
JP5341295B2 (ja) プログラム実行の不安定の状態に基づくソフトウェアプログラムのカスタム製品のサポートを提供する方法、システムおよび装置
US8762987B1 (en) Systems and methods for determining and quantifying the impact of an application on the health of a system
US20220027249A1 (en) Automated methods and systems for troubleshooting problems in a distributed computing system
US8412797B2 (en) Platform for development and deployment of system administration solutions
US9645815B2 (en) Dynamically recommending changes to an association between an operating system image and an update group
US8220054B1 (en) Process exception list updating in a malware behavior monitoring program
US6836750B2 (en) Systems and methods for providing an automated diagnostic audit for cluster computer systems
US7702497B2 (en) Method for recommending upgrade components for a computer system
CN103065088B (zh) 基于计算机用户的裁决检测计算机安全威胁的系统和方法
US20160103673A1 (en) Analytical Software Patch Management
US8190647B1 (en) Decision tree induction that is sensitive to attribute computational complexity
CA2504333A1 (en) Programming and development infrastructure for an autonomic element
CN101118502A (zh) 用于选择性地监视事务的方法和系统
US20070033445A1 (en) Method, apparatus, and program product for autonomic patch risk assessment
EP3552107B1 (en) Device driver telemetry
KR20110038648A (ko) 컴퓨터의 전력 소비 관리
US20070074172A1 (en) Software problem administration
US20240171613A1 (en) Security policy selection based on calculated uncertainty and predicted resource consumption
US10467082B2 (en) Device driver verification
US20140208305A1 (en) Automatically Identifying Criticality of Software Fixes Specific to a Client Deployment and Usage of Software Product
CA2504336A1 (en) Method and apparatus for building an autonomic controller system
US20240303340A1 (en) Automatic mitigation of bios attacks
US12050510B2 (en) Lifecycle hardware, firmware, and software tracking using blockchain

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: 20150723

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

Effective date of registration: 20150723

Address after: Washington State

Applicant after: Micro soft technique license Co., Ltd

Address before: Washington State

Applicant before: Microsoft Corp.

C12 Rejection of a patent application after its publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20090923