CN1656450A - 用于管理操作系统选项值的系统和方法 - Google Patents
用于管理操作系统选项值的系统和方法 Download PDFInfo
- Publication number
- CN1656450A CN1656450A CN03811703.7A CN03811703A CN1656450A CN 1656450 A CN1656450 A CN 1656450A CN 03811703 A CN03811703 A CN 03811703A CN 1656450 A CN1656450 A CN 1656450A
- Authority
- CN
- China
- Prior art keywords
- function
- option value
- computing equipment
- order
- orders
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44505—Configuring for program initiating, e.g. using registry, configuration files
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation of program code
- G06F8/54—Link editing before load time
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
- Hardware Redundancy (AREA)
- Selective Calling Equipment (AREA)
- Debugging And Monitoring (AREA)
- Feedback Control In General (AREA)
Abstract
一种用于管理操作系统选项值的方法包括:接收执行涉及计算设备中的选项值的函数的请求。计算设备包括多个计算设备的一个、与不同操作系统相关联的多个计算设备的至少两个。该方法还包括识别与所请求的函数相关联的一个或多个命令。一个或多个命令用来使计算设备执行所请求的函数。该方法进一步包括生成一个或多个命令,传送用于在计算设备执行的一个或多个命令,接收与一个或多个命令相关联的响应,以及使响应的至少一部分可用。
Description
技术领域
本公开内容通常涉及操作系统领域,更具体地说,涉及用于管理操作系统选项值的系统和方法。
背景技术
计算机操作系统通常包括存储与在操作系统中执行的软件应用程序相关联的信息的注册表。例如,系统注册表可以存储控制软件应用程序的行为的选项值。其他计算机操作系统没有系统注册表,以及将选项值存储在其他数据结构中。操作系统通常缺少用于存取和取回(retrieve)选项值的标准的、统一的方法。因此,在不同操作系统环境中运行的应用程序通常包括用于存取和取回选项值的不同接口。
发明内容
本公开内容提供用于管理操作系统选项值的系统和方法。特别地,系统中的存取元件(element)可以提供用于存储、取回和修改不同操作系统中的选项值的单个入口点。
在一个实施例中,用于管理操作系统选项值的方法包括接收执行涉及计算设备中的选项值的函数(function)的请求。计算设备是多个计算设备之一、并且多个计算设备的至少两个与不同操作系统相关联。该方法还包括识别与所请求的函数相关联的一个或多个命令。该一个或多个命令用来使计算设备执行所请求的函数。该方法进一步包括生成该一个或多个命令,传送用于在计算设备执行的该一个或多个命令,接收与该一个或多个命令相关联的响应,以及使响应的至少一部分可用。
在特定的实施例中,请求包括调用获得(get)函数、设置(set)函数和删除(delete)函数之一的应用程序接口(API)函数调用。可以通过软件应用程序生成请求。该方法还可以包括规格化从计算设备取回的选项值以及将所规格化的选项值放入输出缓冲器中。
附图说明
为更全面地理解本公开内容,参考结合附图的下述描述,其中:
图1是示例说明根据本发明的一个实施例的、用于管理操作系统选项值的示例系统的示例性框图;
图2是示例说明根据本发明的一个实施例的、用于管理操作系统选项值的另一示例系统的示例性框图;
图3是示例说明根据本发明的一个实施例的示例存取模块的示例性框图;
图4是示例说明根据本发明的一个实施例的、用于在存取模块管理操作系统选项值的示例性方法的示例性流程图;以及
图5是示例说明根据本发明的一个实施例的、用于在应用程序存取操作系统选项值的示例方法的示例性流程图。
具体实施方式
图1是示例说明根据本发明的一个实施例,用于管理操作系统选项值的示例系统100的示例性框图。在所示的实施例中,系统100包括管理服务器102、数据库104、网络106、一个或多个客户机108以及一个或多个应用服务器110。在不背离本公开内容的范围的情况下,可以使用系统100的其他
实施例。
在操作的一个方面中,服务器102中的应用程序112试图存取服务器110中的选项值。服务器110中的选项值可以驻留在注册表114中、注册表仿真器116中,或任何其他适当的结构中。因为不同服务器110可以使用不同操作系统,服务器110可以具有用于存取选项值的不同过程。为帮助应用程序112存取选项值,应用程序112调用选项存取模块118中的函数。选项存取模块118从应用程序112接收信息,以及基于那个信息,使用适当的函数调用,存取适当的服务器110。然后,选项存取模块118可以创建、取回或修改服务器110中的选项值。通过在系统100中提供选项存取模块118,易于将应用程序112设计成通过调用选项存取模块118的函数来存取选项值。应用程序112不需要包括用于存取在可能使用不同操作系统的多个服务器110中的选项值的多个接口。
在所示的实施例中,服务器102耦合到数据库104和网络106。在本说明书中,术语“耦合”是指两个或多个部件间的任何直接或间接通信,不管这些部件是否彼此物理连接。同时,术语“通信”是指物理上单独的部件间或单个物理单元内的部件间的通信。服务器102执行有利于(facilitate)存取服务器110中的选项值的一个或多个函数。在本说明书中,短语“选项值”是指用来控制或影响系统110中的一个或多个硬件、软件和/或固件的函数、执行或行为的任何信息。作为具体的例子,选项值可以包括由软件应用程序使用的设置或控制存取服务器110中的应用程序和数据的用户密码。服务器102可以包括用来有利于存取服务器110中的选项值的任何硬件、软件、固件或其组合。
数据库104耦合到服务器102。数据库104存储和有利于取回由服务器102使用的信息。例如,数据库104可以存储存取信息120。存取信息120表示由存取控制模块118使用来存取服务器110中的选项值的信息。作为具体的例子,存取信息120能识别服务器110以及用来获得、设置和删除那个服务器110中的选项值的函数调用。作为另一例子,存取信息120能识别与服务器110相关联的操作系统类型以及用来获得、设置和删除那个类型的操作系统中的选项值的函数调用。数据库104可以包括用来存储和有利于取回信息的任何硬件、软件、固件或及其组合。同时,数据库104可以使用各种数据结构、配置和编译的任何一个,以存储和有利于信息的取回。
网络106连接到服务器102和客户机108。网络106有利于系统100的部件间的通信。例如,网络105可以在网络地址间传送互联网协议(IP)分组、帧中继帧、异步传输模式(ATM)信元或其他适当的信息。网络106可以包括一个或多个局域网(LANs)、城域网(MANs)、广域网(WANs)、所有或部分全球网络,诸如互联网,或在一个或多个位置的任何其他通信系统。
客户机108耦合到网络106上。客户机108可以执行系统100中的任何各种功能。例如,客户机108允许用户存取服务器110以及执行那个服务器110上的应用程序。客户机108可以使用浏览器122、客户应用程序124,或以任何其他适合的方式来存取服务器110。客户机108可以包括用来与服务器110通信的任何硬件、软件、固件或其组合。
服务器110耦合到网络106上。服务器110表示任何适当的服务器或可用来存储一个或多个选项值的其他计算设备。例如,服务器110可以执行一个或多个应用程序,其中,选项值表示管理对应用程序的存取的用户帐户中的密码。每个服务器110可以以一种操作系统执行,以及由一个服务器110使用的操作系统可以不同于由另一个服务器110使用的操作系统。在本说明书中,术语“每个”是指至少所识别的项的子集的每一个。作为特定的例子,服务器110可以以WINDOWS NT操作系统、UNIX操作系统或基于Java的操作系统执行。
根据操作系统,服务器110可以或可以不将选项值存储在注册表中。例如,WINDOWS NT操作系统支持系统注册表114。UNIX操作系统可以不支持本系统注册表,以及Java环境可以不包含对注册表数据的支持。在这些环境中,可以提供仿真系统注册表的行为的仿真器116。服务器110可以包括用来管理一个或多个选项值的任何硬件、软件、固件或其组合。
在所示的例子中,服务器102包括处理器126和存储器128。处理器126执行指令以及操作数据来执行服务器102的操作。尽管图1示例说明服务器102中的单个处理器126,根据特定需要,可以使用多个处理器126。存储器128存储和有利于取回由处理器126使用的信息以便执行服务器102的功能。存储器128可以是例如存储将由处理器126执行的指令以及由处理器126使用的数据。存储器128可以包括用来存储和有利于取回信息的任何硬件、软件、固件或其组合。
在所示的实施例中,应用程序112细分成Web服务器130、一个或多个小服务程序(servelet)132和管理器134。在该例子中,应用程序112表示能由系统管理员或其他用户使用来管理系统100的一个或多个方面的管理工具。例如,应用程序112能支持终端用户管理,其中能在各种环境,诸如服务器110中创建、修改或删除用户帐户。作为该终端用户管理的一部分,应用程序112可以使用选项存取模块118来存取服务器110以及使每个服务器110中的用户密码同步。这仅表示选项存取模块118可以在其中操作的示例环境。在不背离本公开内容的范围的情况下,能在任何其他适当的环境中使用存取模块118,以及存取任何其他选项值。
在该示例实施例中,Web服务器130允许服务器102与用户,诸如客户机108处的系统管理员通信,以及交换包含在web页中的信息。例如,系统管理员可以希望增加新用户,以及web服务器130能生成包含允许系统管理员输入有关新用户的信息的表格的web页。
小服务程序132表示可以由服务器102执行来执行系统100中的各种功能的小应用程序(applet)。例如,一个小服务程序132能发现系统100中具有IP地址的任何部件和包含在这些部件中的应用程序、目录以及用户帐户。有关每个部件、应用程序、目录和用户帐户的信息可以存储为对象122,以及对象122可以存储在数据库104中或另一对象库中。这一信息允许例如应用程序112来发现和控制在系统100中不同部件上操作的各种安全系统。其他小服务程序132能允许用户在那些部件中创建新用户帐户、创建用户角色以及和将用户指定给角色、创建和管理用户组以及生成表示系统100的拓扑结构或其他方面的各种图。
管理器134管理应用程序112的操作。例如,管理器134可以从系统管理员或其他用户接收请求以执行特定的任务。管理器134可以识别与任务相关联的小服务程序132、调用该小服务程序132以及确保成功地执行小服务程序132。
所示的应用程序132的实施例仅为示例目的。能在系统100中使用任何其他适当的应用程序112。应用程序112可以包括用来执行涉及在服务器110或其他计算设备中选项值的功能的任何硬件、软件、固件或其组合。应用程序112可以表示例如C、C++或Java应用程序。
选项存取模块118允许应用程序112执行服务器110中涉及选项值的操作。例如,选项存取模块118可以包括用于存取、取回和修改服务器110中的选项值的一个或多个函数。应用程序112可以通过API或其他适当的接口,调用选项存取模块118的函数。选项存取模块118可以使用存取信息120来识别和生成用来执行所请求的函数的适当的函数调用。选项存取模块118可以包含用来有利于存取使用一个或多个操作系统操作的计算设备中的选项值的任何硬件、软件、固件或其组合。作为具体的例子,选项存取模块118可以表示由处理器126执行的一个或多个软件例程。选项存取模块的一个示例性实施例如图3所示,描述如下。
在具体的实施例中,应用程序112能调用选项存取模块118中的至少三种函数。在该实施例中,函数调用包括获得、设置和删除。获得函数取回一个或多个选项值,设置函数为选项指定值,以及删除函数移除选项值。来自应用程序112的函数调用可以包括任何适当的信息。例如,调用可以包括识别服务器110或其他远程或本地计算设备、那个服务器110上的部件(诸如应用程序或目录)、选项和/或与选项相关联的值的信息。根据特定需要,可以支持其他和另外的函数和函数调用。
在操作的一个方面中,应用程序112可能需要存取服务器110中的选项值。应用程序112可以调用选项存取模块118,诸如通过使用API来调用选项存取模块118中的函数。选项存取模块118可以识别应用程序112想存取的服务器110或服务器110的类型、取回适当的存取信息120以及使用存取信息120来存取服务器110中的选项值。如果应用程序112请求取回选项值,选项存取模块118可以取回选项值,通过将这些值放入标准格式来规格化选项值,以及将这些值传送到应用程序112。通过允许应用程序112通过选项存取模块118存取选项值,不需要编程应用程序112来存取每种服务器操作系统中的选项值。
尽管图1示例说明了用于管理操作系统选项值的系统100的一个例子,但可以对系统100做各种改变。例如,尽管图1说明了选项存取模块118可以操作的一个示例环境,但能使用任何其他的适当的环境。同时,图1中所示的应用程序112仅用于示例目的。能与选项存取模块118一起使用任何其他适当的应用程序。另外,尽管图1将应用程序112和选项存取模块118示例为单独的元件,但选项存取模块118能形成应用程序112的一部分。另外,选项存取模块118被描述为有利于存取服务器110中的选项值。还能使用选项存取模块118来有利于存取其他部件,诸如连接到网络106的其他计算设备中的选项值。
图2是示例说明了根据本公开内容的一个实施例,用于管理操作系统选项值的另一示例系统200的示例框图。在所示的实施例中,系统200包括具有应用程序212和选项存取模块218的主机250。
在所示的实施例中,主机250可以执行非常公知的MS-DOS、PC-DOS、OS-2、MAC-OS、WINDOWS、UNIX、LINUX或其他适当的操作系统的任何一个。主机250能表示桌面计算机、膝上型计算机、服务器计算机或其他适当的计算或通信设备。主机250可以包括输入设备252、输出设备254、一个或多个处理器256、随机存取存储器(RAM)258、只读存储器(ROM)260和CD、DVD、硬盘驱动器或其他磁性或光存储设备262。输入设备252可以例如包括键盘、鼠标、图形输入板、触摸屏、压敏垫、游戏杆、光笔、麦克风,或其他适当的输入设备。输出设备254可以例如包括视频显示器、打印机、盘驱动器、绘图仪、麦克风或其他适当的输出设备。
图2中的虚线内的项表示系统200的相关部件的示例性功能操作和数据组织。在所示的实施例中,主机250包括应用程序212、选项存取模块218、包含一个或多个选项值264的注册表/仿真器215以及包含存取信息220的数据库204。
应用程序212、选项存取模块218和数据库204可以与图1的应用程序112、选项存取模块118和数据库104相同或类似。应用程序212可以表示存取、取回或修改主机250中的选项值264的任何应用程序。例如,应用程序212能表示使用选项值264来识别主机250的问题的诊断工具。在特定的实施例中,应用程序212能表示可以在不同操作系统环境中运行的应用程序。
注册表/仿真器215可以表示注册表114、注册表仿真器116或包含或者支持一个或多个选项值264的任何其他适当结构。选项存取组件218有利于通过应用程序212存取选项值264。例如,应用程序212可以尝试通过调用选项存取模块218中的获得、设置或删除函数来存取选项值264。选项存取模块218使用存取信息220来识别用来取回、设置或删除注册表/仿真器215中的选项值264的适当的函数调用。数据库204中的存取信息220可以限于或不限于由主机250使用的特定操作系统。选项存取模块218生成适当的函数调用和将函数调用传送到注册表/仿真器215。如果应用程序212请求取回选项值,选项存取模块218可以规格化所取回的值以及将它们传送到应用程序212。
尽管图2示例说明用于管理操作系统选项值的系统200的另一例子,但可以对系统200做出各种改变。例如,尽管图2示例说明了操作存取模块218可以操作的另一示例环境,能使用任何其他适当的环境。同时,尽管图2将应用程序212和选项存取模块218示例为单独的元件,选项存取模块218能形成应用程序212的一部分。
图3是示例说明根据本公开内容的一个实施例的示例存取模块318的示例性框图。存取模块318有利于通过应用程序312来访问由在不同操作系统环境350中操作的计算设备支持的选项值。存取模块318可以例如用作图1的选项存取模块118或图2的选项存取模块218。
在所示的例子中,存取模块318包括存取函数352。存取函数352表示能由应用程序312调用来存取、取回和修改环境350中的选项值的各种函数。例如,存取函数352可以使存取模块318获得、设置或删除选项值。多个存取函数352可以用于这三个操作的每一个。作为特定的例子,一个获得函数352可以使存取函数318从远程计算设备取回单个选项值。另一获得函数352可以使存取模块318从本地计算设备取回单个选项值。然而,另一获得函数352可以使存取模块318从计算设备递归取回多个选项值。在存取模块318中能使用任何其他适当的存取函数。
为允许应用程序312调用存取函数352,存取模块318包括应用程序API354。应用程序API 354允许在不同操作系统环境中操作的应用程序312使用规格化函数调用。调用存取模块318中的函数352。在具体的实施例中,当应用程序312调用函数352时,应用程序312可以传送包含远程或本地计算设备的标识、在那个设备上操作的部件、选项,和/或与选项相关联的值的API调用。使用输入缓冲器,使用单个输入和输入缓冲器的组合,或以任何其他适当的方式,可以单独地、共同地提供这些输入。
一旦应用程序312调用函数352,存取模块318可以识别在所识别的计算设备中执行所请求的函数所需的函数调用。存取模块318包括平台数据库356或者存取平台数据库356。平台数据库356包括识别用来获得、设置或删除特定操作系统环境350中的选项值的一个或多个函数调用的存取信息。例如,环境350a可以支持执行通过注册表API 358调用的函数的系统注册表。在那种情况下,平台数据库356可以识别使环境350a中的注册表取回选项值的API函数调用或多个调用。如另一例子,环境350b可以缺少对系统注册表的支持,但注册表仿真器360可以仿真系统注册表的行为。在这种情况下,平台数据库356可以识别使得仿真器360删除特定选项值的API或仿真器函数调用。其他环境350c可以缺少注册表API 358或仿真器360,诸如具有注册表但不支持注册表API的环境。对这些环境350c,平台数据库356可以识别如何存取和管理选项值。
在识别执行所请求的函数所需的函数调用或多个调用后,函数调用发生器362生成实际的函数调用。例如,发生器362可以创建包含用于特定操作系统环境350的适当参数的函数调用。发生器362也可以基于来自调用应用程序312的输入、为函数调用中的参数提供适当值。作为特定例子,如果应用程序312正设置计算设备中的选项值,发生器362可以将选项名称以及选项值插入到命令中。使用接口364来将所生成的函数调用传送到指定的计算设备。接口364可以表示任何适当的接口,诸如网络接口卡或无线连接。
函数调用可以由在环境350中操作的计算设备或存取模块318生成响应。例如,来自计算设备的响应可以包括表示是否执行所请求的函数的成功码。作为特定的例子,计算设备可以生成表示已经成功地完成该函数,该函数能不成功地完成,或该函数调用具有无效或异常字段参数的响应。存取模块318也能生成错误消息,诸如当存取模块318不能将函数调用传送到远程计算设备时。另外,如果函数调用尝试取回选项值,存取模块318可以从计算设备取回选项值。
可以使响应信息对应用程序312可用。在一个实施例中,当应用程序312调用函数352时,应用程序312识别输出缓冲器。通过存取模块318,可以将响应信息放入输出缓冲器中,以及应用程序312可以从输出缓冲器取回响应信息。
因为选项值和其他响应的格式在环境350间可以不同,规格化模块366规格化该响应。例如,规格化模块366可以从环境350取回选项值,以及将选项值放在标准格式中。能使用任何适当的格式来规格化选项值。
尽管图3示例说明存取模块318的一个例子,可以对存取模块318做出各种改变。例如,图3示例说明存取模块318内的一个示例功能划分。可以结合或省略存取模块318的各种组件,以及根据特定需要,可以增加另外的部件。同时,已经将平台数据库356描述为基于与计算设备相关联的操作系统环境350的类型存储信息。平台数据库356能以任何其他适当的方式存储信息。作为特定的例子,平台数据库356能识别由每个单个计算设备使用的函数调用,即使多个计算设备使用相同的功能调用。
图4是示例说明根据该公开内容的一个实施例,用于在存取模块管理操作系统选项值的示例方法400的示例性流程图。使用图3的存取模块381,相对于图1的系统100,描述方法400。方法400可以与任何其他适当的系统和任何其他适当的存取模块一起使用。
在步骤402,服务器102从请求存取选项值的应用程序112接收请求。这可以包括例如使用API函数调用,调用存取模块318中的存取函数352的应用程序112。在步骤404,服务器102识别与选项值相关联的计算设备。这可以包括例如使用包含在函数调用中的信息,识别服务器110的存取模块318。
在步骤406,服务器102识别所识别的计算设备中,用来执行所请求的函数的一个或多个函数调用或其他命令。这可以包括例如存取平台数据库356、识别与所识别的服务器110相关联的操作系统环境350以及识别所识别的环境350中,用来执行所请求的函数的函数调用的存取模块318。可以将与所请求的函数相关联的函数调用称为“命令集”。在步骤362,服务器102生成函数调用。这可以包括例如使用从平台数据库356取回的函数调用的格式来生成包含适当参数的函数调用的函数调用发生器362。在步骤410,服务器102将函数调用传送到计算设备。这可以包括例如使用接口364、将函数调用传送到服务器110的存取模块318。
在步骤412,服务器102确定在计算设备处是否成功地执行函数调用。这可以包括例如确定是否能够联系到远程计算设备的存取模块318。这也可以包括从计算设备接收响应的存取模块318,其中响应表示是否成功地执行函数调用。如果未成功地执行函数调用,在步骤414,服务器102将错误消息传送到调用函数的应用程序112。这可以包括例如生成包含识别失败原因的代码的消息以及将该消息放入可由应用程序112存取的输出缓冲器中的存取模块318。
如果成功地执行函数调用,在步骤416,服务器102确定所请求的函数是否是取回(获得)函数。如果不是取回函数,所请求的函数可以表示设置函数或删除函数。然后,在步骤418,服务器102可以将成功消息传送到调用设置或删除函数的应用程序112。这可以例如生成包含表示成功的设置或删除操作的代码的消息以及将该消息放入输出缓冲器中的存取模块318。
如果所请求的函数是取回函数,在步骤420,服务器102从计算设备接收所请求的选项值。这可以包括例如使用接口364、从服务器110接收所请求的选项值的存取模块318。在步骤422,服务器102规格化选项值。这可以包括例如将选项值放入标准格式的规格化模块366。由规格化模块366使用的格式可以表示任何适当的格式。标准格式可以允许使用存取模块318的不同应用程序112理解从存取模块318接收的信息。在步骤424,服务器102将规格化选项值传送到调用获得函数的应用程序112。这可以包括例如生成包含选项值的消息以及将消息放入输出缓冲器的存取模块318。
尽管图4示例说明了用于在存取模块管理操作系统选项值的方法400的一个例子,可以对方法400做出各种改变。例如,图4示例说明存取模块318识别与请求相关联的所有函数调用,然后生成和传送函数调用。存取模块318也能每次识别、生成和传送一个函数调用直到所请求的操作失败或成功完成为止。同时,存取模块318还能用来将选项值规格化为多个格式的一个,以及调用存取模块318的应用程序112能识别所需格式。
图5是示例说明根据该公开内容的一个实施例,在应用程序处存取操作系统选项值的示例方法500的示例性流程图。使用图3的存取模块318,相对于图1的系统100,描述方法500。方法500可以与任何其他适当的系统和任何其他适当的存取模块一起使用。
在步骤502,应用程序112传送请求以便存取计算设备中的选项值。这可以包括例如使用API函数调用来调用存取模块318中的存取函数352的应用程序112。所调用的函数可以包括获得单个选项值函数、获得多个选项值函数、设置函数或删除函数。在特定的实施例中,API函数调用可以包括识别远程或本地计算设备、那个计算设备上的部件、选项和/或与选项相关联的值的信息。可以在输入缓冲器中单独地、一起,或以其他任何适当的方式提供一些、全部这些输入,或根本不提供。API函数调用可以进一步识别将由存取模块318使用的输出缓冲器以便将输出结果提供到应用程序112。
在步骤504,应用程序112从存取模块318接收响应。这可以包括例如将消息放入所识别的输出缓冲器中的存取模块318。这还可以包括通知应用程序112消息可用的存取模块318以及存取输出缓冲器的应用程序112。
在步骤506,应用程序112确定是否成功执行所请求的函数。这可以包括例如检查来自存取模块318的消息以及确定该消息是否包括表示成功操作的代码的应用程序112。如果未成功,方法500结束。应用程序112可以在那个点采取任何其他适当的行动。例如,应用程序112能通过错误消息终止执行,通知用户,或再次尝试存取选项值。
如果所请求的函数是成功的取回函数,在步骤510,应用程序112识别所请求的选项值。这可以包括例如检查包含在输出缓冲器中的信息以及识别哪条信息对应于选项值的应用程序112。因为存取模块318可能已将选项值放入规格化格式,应用程序112可以容易识别选项值。同时,依赖于操作系统环境350,选项值的格式以及取回选项值的方法可以不同。通过允许存取模块318取回和规格化选项值,不需要编程应用程序112来执行各种取回方法或以多种格式接收信息。
尽管根据优选实施例和通常相关的方法,描述了本发明,对本领域的技术人员来说,优选实施例和方法的修改和变更将是显而易见的。因此,优选示例实施例的上述描述不限定或限制本公开内容。在不背离由下述权利要求限定的本公开内容的精神和范围的情况下,各种改变、取代和修改也是可能的。
Claims (32)
1.一种用于管理操作系统选项值的方法,包括:
接收执行涉及计算设备中的选项值的函数的请求,所述计算设备包括多个计算设备的一个、与不同操作系统相关联的多个计算设备的至少两个;
识别与所请求的函数相关联的一个或多个命令,所述一个或多个命令用来使所述计算设备执行所请求的函数;
生成所述一个或多个命令;
传送用于在所述计算设备执行的所述一个或多个命令;
接收与所述一个或多个命令相关联的响应;以及
使所述响应的至少一部分可用。
2.如权利要求1所述的方法,其中识别所述一个或多个命令包括:
识别与所述请求相关联的所述计算设备;以及
使用所述计算设备的标识来识别所述一个或多个命令。
3.如权利要求2所述的方法,其中使用所述计算设备的标识,识别所述一个或多个命令包括:
识别与所述计算设备相关联的操作系统;以及
使用所识别的操作系统来识别所述一个或多个命令。
4.如权利要求1所述的方法,其中生成所述一个或多个命令包括将用于一个或多个参数的值插入所识别的命令中。
5.如权利要求1所述的方法,其中接收所述请求包括接收API(应用程序接口)函数调用。
6.如权利要求5所述的方法,其中所述API函数调用调用获得函数、设置函数和删除函数的一个。
7.如权利要求5所述的方法,其中所述一个或多个命令包括注册表API函数调用和注册表仿真器命令的至少一个。
8.如权利要求1所述的方法,其中
所述响应包括选项值;以及
使所述选项值可用包括:
规格化所述选项值;以及
将所规格化的选项值放入输出缓冲器中。
9.如权利要求1所述的方法,其中所述计算设备包括本地计算设备或远程计算设备。
10.如权利要求1所述的方法,其中由软件应用程序产生所述请求。
11.如权利要求1所述的方法,其中所述选项值包括用户密码。
12.一种用于管理操作系统选项值的系统,包括:
存储器,用来存储多个命令集,每个命令集包括用来使多个计算设备的至少一个执行涉及选项值的函数的一个或多个命令、至少两个命令集与使用不同操作系统的计算设备相关联;以及
一个或多个处理器,共同操作用于:
接收在所选择的计算设备上执行所述函数的请求;
识别与所请求的函数相关联的命令集,所识别的命令集中的一个或多个命令用来使选择的计算设备执行所请求的函数;
生成所识别的命令集中的一个或多个命令;
传送用于在所选择的计算设备执行的所述一个或多个命令;
接收与所述一个或多个命令相关联的响应;以及
使所述响应的至少一部分可用。
13.如权利要求12所述的系统,其中所述一个或多个处理器共同操作用于通过下述操作识别所述命令集:
识别所选择的计算设备;以及
使用所述计算设备的标识来识别所述命令集。
14.如权利要求13所述的系统,其中所述一个或多个处理器共同操作用于通过下述操作使用所述计算设备的标识来识别所述命令集:
识别与所识别的计算设备相关联的操作系统;以及
使用所识别的操作系统来识别所述命令集。
15.如权利要求12所述的系统,其中所述一个或多个处理器共同操作用于通过将用于一个或多个参数的值插入所识别的命令中来生成所述一个或多个命令。
16.如权利要求12所述的系统,其中所述一个或多个处理器共同操作用于通过接收API(应用程序接口)函数调用来接收所述请求。
17.如权利要求16所述的系统,其中所述API函数调用调用获得函数、设置函数和删除函数的一个。
18.如权利要求16所述的系统,其中所述一个或多个命令包括注册表API函数调用和注册表仿真器命令的至少一个。
19.如权利要求12所述的系统,其中
所述响应包括选项值;以及
所述一个或多个处理器共同操作用于通过下述操作来使所述选项值可用:
规格化所述选项值;以及
将所规格化的选项值放入输出缓冲器中。
20.一种用于管理操作系统选项值的软件,所述软件嵌在至少一种计算机可读介质上,并当由一个或多个处理器执行时可操作用于:
接收执行涉及计算设备中的选项值的函数的请求,所述计算设备包括多个计算设备的一个、与不同操作系统相关联的多个计算设备的至少两个;
识别与所请求的函数相关联的一个或多个命令,所述一个或多个命令用来使所述计算设备执行所请求的函数;
生成所述一个或多个命令;
传送用于在所述计算设备执行的所述一个或多个命令;
接收与所述一个或多个命令相关联的响应;以及
使所述响应的至少一部分可用。
21.如权利要求20所述的软件,其中所述软件可操作用于通过下述操作来识别所述一个或多个命令:
识别所选择的计算设备;以及
使用所述计算设备的标识来识别所述一个或多个命令。
22.如权利要求21所述的软件,其中所述软件可操作用于通过下述操作、使用所述计算设备的标识来识别所述一个或多个命令:
识别与所识别的计算设备相关联的操作系统;以及
使用所识别的操作系统来识别所述一个或多个命令。
23.如权利要求20所述的软件,其中所述软件可操作用于通过将用于一个或多个参数的值插入所识别的命令中来生成所述一个或多个命令。
24.如权利要求20所述的软件,其中所述软件可操作用于通过接收API(应用程序接口)函数调用来接收所述请求。
25.如权利要求24所述的软件,其中所述API函数调用调用获得函数、设置函数和删除函数的一个。
26.如权利要求24所述的软件,其中所述一个或多个命令包括注册表API函数调用和注册表仿真器命令的至少一个。
27.如权利要求20所述的软件,其中
所述响应包括选项值;以及
所述软件可操作用来通过下述操作使所述选项值可用:
规格化所述选项值;以及
将所规格化的选项值放入输出缓冲器中。
28.一种用于存取操作系统选项值的方法,包括:
传送执行涉及选项值的函数的请求,所述选项值驻留在计算设备中,所述计算设备包括多个计算设备的一个,与不同操作系统相关联的多个计算设备的至少两个;以及
接收响应,所述响应包括来自所述计算设备的规格化数据。
29.如权利要求28所述的方法,其中所述请求包括传送到存取元件的API(应用程序接口)函数调用,所述API函数调用调用所述存取元件中的获得函数、设置函数和删除函数的一个。
30.如权利要求29所述的方法,其中所述存取元件可用来识别与所请求的函数相关联的一个或多个命令,所述一个或多个命令可用来使所述计算设备执行所请求的函数,所述一个或多个命令包括注册表API函数调用和注册表仿真器命令的至少一个。
31.如权利要求28所述的方法,其中接收所述响应包括存取包含所述响应的输出缓冲器以及从所述输出缓冲器取回所述响应。
32.如权利要求28所述的方法,其中所述响应包括规格化格式的选项值。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US37394602P | 2002-04-19 | 2002-04-19 | |
US60/373,946 | 2002-04-19 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN1656450A true CN1656450A (zh) | 2005-08-17 |
Family
ID=29251106
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN03811703.7A Pending CN1656450A (zh) | 2002-04-19 | 2003-04-18 | 用于管理操作系统选项值的系统和方法 |
Country Status (13)
Country | Link |
---|---|
US (1) | US7278144B2 (zh) |
EP (1) | EP1497720B1 (zh) |
JP (1) | JP2005523513A (zh) |
KR (1) | KR20040099442A (zh) |
CN (1) | CN1656450A (zh) |
AT (1) | ATE467175T1 (zh) |
AU (1) | AU2003225058A1 (zh) |
BR (1) | BR0309334A (zh) |
CA (1) | CA2482800A1 (zh) |
DE (1) | DE60332450D1 (zh) |
IL (1) | IL164611A0 (zh) |
WO (1) | WO2003090069A2 (zh) |
ZA (1) | ZA200409129B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102024121A (zh) * | 2009-09-16 | 2011-04-20 | 株式会社泛泰 | 平台安全设备及其方法 |
CN106445071A (zh) * | 2010-11-18 | 2017-02-22 | 谷歌公司 | 计算机的延迟关停 |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8424023B2 (en) * | 2003-10-24 | 2013-04-16 | Hewlett-Packard Development Company, L.P. | Program interface architecture |
US7818756B2 (en) * | 2005-10-12 | 2010-10-19 | Microsoft Corporation | SKU determination mechanism and API |
US20100319010A1 (en) * | 2009-06-12 | 2010-12-16 | International Business Machines Corporation | Systems and Methods for Operating System Identification and Web Application Execution |
KR101707552B1 (ko) * | 2016-07-27 | 2017-02-16 | 주식회사 티맥스 소프트 | 클라우드 환경에서 사용자로 하여금 애플리케이션을 체험할 수 있도록 체험 환경을 제공하는 방법 및 이를 이용한 서버 |
JP6926627B2 (ja) | 2017-04-21 | 2021-08-25 | 富士通株式会社 | 情報処理システム、情報処理装置、api制御方法及びプログラム |
Family Cites Families (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5249260A (en) | 1988-08-12 | 1993-09-28 | Hitachi, Ltd. | Data input system |
US5097533A (en) * | 1988-11-29 | 1992-03-17 | International Business Machines Corporation | System and method for interfacing computer application programs written in different languages to a software system |
US6199117B1 (en) * | 1992-03-30 | 2001-03-06 | International Business Machines Corporation | Generalized control for starting of tasks (processes and threads) |
US6664979B1 (en) | 1994-12-29 | 2003-12-16 | Microsoft Corporation | Aggregation of system settings into objects |
CA2145923C (en) | 1995-03-30 | 2001-05-08 | Gary W. Miller | Computer operating system providing means for formatting information in accordance with specified cultural preferences |
US5903753A (en) * | 1995-08-18 | 1999-05-11 | International Business Machines Corporation | Name space registry with backward compatibility for older applications |
US5901319A (en) * | 1996-06-14 | 1999-05-04 | The Foxboro Company | System and methods for generating operating system specific kernel level code from operating system independent data structures |
US5905492A (en) | 1996-12-06 | 1999-05-18 | Microsoft Corporation | Dynamically updating themes for an operating system shell |
US6112301A (en) | 1997-01-15 | 2000-08-29 | International Business Machines Corporation | System and method for customizing an operating system |
US6065116A (en) * | 1997-05-07 | 2000-05-16 | Unisys Corporation | Method and apparatus for configuring a distributed application program |
US6141565A (en) | 1997-11-13 | 2000-10-31 | Metawave Communications Corporation | Dynamic mobile parameter optimization |
US6131190A (en) | 1997-12-18 | 2000-10-10 | Sidwell; Leland P. | System for modifying JCL parameters to optimize data storage allocations |
US6161176A (en) | 1998-11-20 | 2000-12-12 | Microsoft Corporation | System and method for storing configuration settings for transfer from a first system to a second system |
EP1031920A3 (en) * | 1999-02-24 | 2004-04-07 | International Business Machines Corporation | Editable and automatically generated configuration data |
US6615278B1 (en) * | 1999-03-29 | 2003-09-02 | International Business Machines Corporation | Cross-platform program, system, and method having a global registry object for mapping registry equivalent functions in an OS/2 operating system environment |
US6615277B1 (en) * | 1999-03-29 | 2003-09-02 | International Business Machines Corporation | Cross-platform program, system, and method having a global registry object for mapping registry equivalent functions in an operating system environment |
US6536040B1 (en) * | 1999-03-29 | 2003-03-18 | International Business Machines Corporation | Cross-platform program, system, and method having a system independent registry for use on operating systems irrespective of a registry equivalent |
US6446255B1 (en) * | 1999-03-29 | 2002-09-03 | International Business Machines Corporation | Global registry object for mapping registry functions and registry equivalent functions across multiple operating systems in a cross-platform program |
US6775789B2 (en) | 1999-06-21 | 2004-08-10 | International Business Machines Corporation | Method, system and program products for generating sequence values that are unique across operating system images |
FR2801705B1 (fr) * | 1999-11-26 | 2002-01-25 | Bull Sa | Procede de creation de fichiers de configuration d'objets inclus dans un systeme informatique |
DE10115380A1 (de) * | 2000-05-03 | 2001-11-08 | Ibm | Verfahren zum Ändern eines Parameters eines Betriebssystems eines Computersystems |
US6981043B2 (en) * | 2001-03-27 | 2005-12-27 | International Business Machines Corporation | Apparatus and method for managing multiple user identities on a networked computer system |
US20030177388A1 (en) * | 2002-03-15 | 2003-09-18 | International Business Machines Corporation | Authenticated identity translation within a multiple computing unit environment |
-
2003
- 2003-04-18 KR KR10-2004-7016465A patent/KR20040099442A/ko not_active Application Discontinuation
- 2003-04-18 WO PCT/US2003/012033 patent/WO2003090069A2/en active Application Filing
- 2003-04-18 CN CN03811703.7A patent/CN1656450A/zh active Pending
- 2003-04-18 EP EP03721765A patent/EP1497720B1/en not_active Expired - Lifetime
- 2003-04-18 DE DE60332450T patent/DE60332450D1/de not_active Expired - Lifetime
- 2003-04-18 AU AU2003225058A patent/AU2003225058A1/en not_active Abandoned
- 2003-04-18 CA CA002482800A patent/CA2482800A1/en not_active Abandoned
- 2003-04-18 US US10/418,704 patent/US7278144B2/en not_active Expired - Fee Related
- 2003-04-18 JP JP2003586745A patent/JP2005523513A/ja active Pending
- 2003-04-18 BR BR0309334-4A patent/BR0309334A/pt not_active Application Discontinuation
- 2003-04-18 AT AT03721765T patent/ATE467175T1/de not_active IP Right Cessation
-
2004
- 2004-10-14 IL IL16461104A patent/IL164611A0/xx unknown
- 2004-11-11 ZA ZA200409129A patent/ZA200409129B/en unknown
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102024121A (zh) * | 2009-09-16 | 2011-04-20 | 株式会社泛泰 | 平台安全设备及其方法 |
US8601599B2 (en) | 2009-09-16 | 2013-12-03 | Pantech Co., Ltd. | Platform security apparatus and method thereof |
CN106445071A (zh) * | 2010-11-18 | 2017-02-22 | 谷歌公司 | 计算机的延迟关停 |
US10503521B2 (en) | 2010-11-18 | 2019-12-10 | Google Llc | Delayed shut down of a computer |
CN106445071B (zh) * | 2010-11-18 | 2020-08-18 | 谷歌有限责任公司 | 计算机的延迟关停 |
Also Published As
Publication number | Publication date |
---|---|
ZA200409129B (en) | 2005-09-21 |
EP1497720B1 (en) | 2010-05-05 |
CA2482800A1 (en) | 2003-10-30 |
EP1497720A2 (en) | 2005-01-19 |
WO2003090069A3 (en) | 2004-04-15 |
JP2005523513A (ja) | 2005-08-04 |
AU2003225058A1 (en) | 2003-11-03 |
WO2003090069A2 (en) | 2003-10-30 |
US7278144B2 (en) | 2007-10-02 |
KR20040099442A (ko) | 2004-11-26 |
US20030217188A1 (en) | 2003-11-20 |
ATE467175T1 (de) | 2010-05-15 |
DE60332450D1 (de) | 2010-06-17 |
IL164611A0 (en) | 2005-12-18 |
BR0309334A (pt) | 2005-03-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6237005B1 (en) | Web server mechanism for processing multiple transactions in an interpreted language execution environment | |
CN1145896C (zh) | 用于处理小服务器的装置和方法 | |
US9350610B2 (en) | System and method for configuration management service | |
JP3578221B2 (ja) | データ通信サーバ・システム | |
US8364845B2 (en) | Method and system for thin client configuration | |
US8407688B2 (en) | Methods and apparatus for storing and transmitting historical configuration data associated with information technology assets | |
EP3340063A1 (en) | Method, device, terminal, server, and system for accessing usb device | |
US20060064399A1 (en) | Method and system for testing distributed software applications | |
US20030028513A1 (en) | System and method for providing help services | |
US20040006739A1 (en) | Method and system for converting legacy data | |
JPH1083308A (ja) | スタブ検索及びローディング・サブシステム、スタブ検索及びローディング方法並びにスタブ検索及びローディング用記録媒体 | |
JP2005505051A (ja) | クライアント−サーバネットワークにおいてファイルタイプの関連性により分散型のプログラムの実行方法 | |
CN111897638A (zh) | 分布式任务调度方法及系统 | |
CN111694620B (zh) | 第三方业务的交互方法、装置、设备及计算机存储介质 | |
CN112800410A (zh) | 一种多产品登录管理方法、装置、设备及存储介质 | |
CN112528274A (zh) | 数据处理方法、装置、电子设备及存储介质 | |
US20090257085A1 (en) | Generation of a web page including menu items for web pages | |
CN109597952B (zh) | 网页信息处理方法、系统、电子设备和存储介质 | |
CN1656450A (zh) | 用于管理操作系统选项值的系统和方法 | |
US7165251B2 (en) | In-context launch management method, system therefor, and computer-readable storage medium | |
CN1466050A (zh) | 大规模异构机群的管理系统 | |
JP2006127399A (ja) | アプリケーションプラットフォーム提供システム及び方法並びにそのプログラム | |
US20240232106A1 (en) | Merged input/output for accelerating directory listing phase in client drive redirection | |
US20030037183A1 (en) | System for standardized mainframe connection and method for connecting with a mainframe | |
JP2002014963A (ja) | データベース管理システム及びその開発システム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |