父母控制定制和通知的方法和系统 【技术领域】
本发明通常涉及计算机软件领域,更具体地涉及一种用于控制通过一个网络进行访问的方法和系统。
背景技术
虽然Internet能够提供关于多种主题的极大量信息,但是Internet还能够引起危险,尤其是对孩子。父母希望他们的孩子对能够在Internet上找到的许多教育资源进行访问。同时,父母希望阻止他们的孩子访问包含暴力、色情、及其它不适于孩子的资料的许多网站。甚至于,父母希望保护他们的孩子以免遇到利用Internet从聊天室中诱惑孩子亲自会面的拐卖儿童者。
在1998年,通过了儿童在线个人情况保护行动(“Children′sOnline Privacy Protection Act,COPPA)以阻止网站在未经父母同意的情况下收集不到13岁儿童的个人信息。虽然COPPA对于保护儿童在Internet上时的个人情况是有意义的和积极地步骤,但是在Internet上有许多COPPA未能解决的其它危险。COPPA不能防止儿童在网站上查看不适当的资料。COPPA也不能防止儿童和可能是拐卖儿童者的陌生人在Internet上通信。
传统的计算机技术提供了很少的、父母能够采取的避免他们的孩子遇到可能有害的资料和个人的步骤。一种用于保护孩子的传统计算机技术是阻止软件,它阻止对某些已经被预先确定为不适当的或者包含诸如亵渎的或者有关性的文字的站点的访问。阻止软件以不同的形式出现,诸如独立软件包、在Internet上的资源、和允许父母限制对某些站点和特征、诸如e-mail、即时消息、或者某些内容进行访问的在线服务。由Internet服务供应商提供普及的在线服务,诸如MSN,由位于Washington Redmond的微软公司提供的MSN(Microsoft Network)。为了确定哪些站点和内容是最适于孩子的,已经涌现了专门用于儿童的搜索引擎、等级、和检查站点。搜索引擎和目录仅仅输出那些已经被确定为适于儿童的站点。当然,这种搜索引擎和阻止软件不会自动地保护儿童远离所有不适当的内容。
虽然传统的计算机技术能够帮助父母控制他们的孩子在Internet上访问的内容,但是传统的计算机技术是不理想的。阻止软件或者在线服务经常遗漏不适当的站点和阻止适当的站点。使父母与孩子就在线控制进行交流并且允许父母基于那些交流为孩子定制在线控制将会是有利的。因此,有必要使孩子和父母就父母控制进行交流,并使父母能够基于该交流来定制父母控制。
【发明内容】
本发明通过提供一种用于父母控制定制和通知的方法和系统而满足了上述需要。通常描述的,父母控制定制和通知方法和系统允许在网络环境中的用户(例如,孩子)和管理员(例如父母)交互式地定制用来过滤用户的在线动作的管理员控制。控制是被用来控制用户的动作的过滤设置。
本发明的一个方面提供了一种用于允许网络环境中的用户和管理员交互式地定制用来过滤用户的在线动作的管理员控制的可计算机实现的方法。计算机接收一个同意执行被阻止的在线动作的用户请求。计算机向管理员提供有关待处理请求的信息,并且从管理员接收请求决定信息。计算机用请求决定信息更新用来过滤用户的在线动作的管理员控制。
本发明的另一个方面提供了一种用于允许网络环境中的用户和管理员交互式地定制用来过滤用户的在线动作的管理员控制的可计算机实现的方法。当计算机从一个用户接收了同意执行一个被阻止的在线动作的请求时,计算机确定管理员是否存在,而且如果管理员存在,则接收管理员的标识。响应于接收管理员的标识,计算机验证管理员而没有拒绝用户对网络环境的访问。在验证管理员之后,计算机向管理员呈现用户的请求,并且确定管理员是否接受用户的请求。如果管理员接受了用户的请求,则计算机更新用于该用户的管理员控制以允许先前被阻止的动作。
本发明还有另一个方面提供了一种用于允许网络环境中的用户和管理员交互式地定制用来过滤用户的在线动作的管理员控制的可计算机实现的方法。计算机跟踪和存储用户的被允许的和被阻止的在线动作。计算机根据所存储的信息生成一个历史记录概要报告,并且把该历史记录概要报告提供给管理员。如果计算机接收了请求阻止用户执行一个在历史记录概要报告中被指示为被允许的动作的一个管理员请求,则计算机更新用来过滤用户的在线动作的管理员控制以包含阻止该动作。
本发明另外的一个方面提供了一种具有下述计算机可执行指令的计算机可读介质,所述计算机可执行指令用于允许网络环境中的用户和管理员交互式地定制用来过滤用户的在线动作的管理员控制。当指令被执行时,通过向管理员提供有关待处理请求的信息,使计算机对请求执行一个被阻止的在线动作的用户请求作出响应。响应于计算机从管理员接收请求决定信息,计算机以请求决定信息更新用来过滤用户的在线动作的管理员控制。
本发明的另一个方面提供了一种具有下述计算机可执行指令的计算机可读介质,所述计算机可执行指令用于允许网络环境中的用户和管理员交互式地定制用来过滤用户的在线动作的管理员控制。当指令被执行时,通过确定管理员是否存在而使计算机对从用户接收一个执行一个被阻止的在线动作的请求作出响应。如果管理员存在,则计算机通过验证管理员而不拒绝用户对网络环境的访问,来对接收管理员的标识作出响应。在验证管理员之后,计算机向管理员呈现用户的请求,并且确定管理员是否接受用户的请求。如果管理员接受了用户的请求,则计算机更新用于该用户的管理员控制以允许先前被阻止的动作。
本发明的另外一个方面提供了一种具有下述计算机可执行指令的计算机可读介质,所述计算机可执行指令用于允许网络环境中的用户和管理员交互式地定制用来过滤用户的在线动作的管理员控制。当指令被执行时,执行一个包含跟踪和存储用户的被允许的和被阻止的在线动作的处理过程。该处理过程包含通过根据所存储的信息生成一个历史记录概要报告而为用户生成一个历史记录概要报告,和把该历史记录概要报告提供给管理员。响应于计算机接收请求阻止用户执行一个在历史记录概要报告中被指示为被允许的动作的一个管理员请求,处理过程包含更新用来过滤用户的在线动作的管理员控制以包含阻止该动作。
本发明的另外一个方面提供了一种在其上存储有下述数据结构的计算机可读介质,所述数据结构用于允许网络环境中的用户和管理员交互式地定制用来过滤用户的在线动作的管理员控制。数据结构的最佳形式包含:一个表示请求标识信息的数据单元,一个表示用户标识信息的数据单元,一个表示管理员标识信息的数据单元,一个表示有关被阻止的在线动作的信息的数据单元,和一个表示请求状态信息的数据单元。数据结构被用来在一个许可数据库中为一个修改用来过滤用户的在线动作的管理员控制的请求创建一个条目。
本发明的另一个方面提供了一种用于允许网络环境中的用户和管理员交互式地定制用来过滤用户的在线动作的管理员控制的计算机系统。计算机系统包含:一个设置数据库组件,用于存储有关用来过滤用户的在线动作的管理员控制的信息;以及一个管理员控制组件。最好是,管理员控制组件可操作用以接收执行一个被阻止的在线动作的用户请求,向管理员提供有关待处理请求的信息,从管理员接收请求决定信息,以及用请求决定信息更新在设置数据库中用于该用户的管理员控制。
本发明的另一个方面提供了一种用于允许网络环境中的用户和管理员交互式地定制用来过滤用户的在线动作的管理员控制的计算机系统。计算机系统包含:一个设置数据库组件,用于存储有关用来过滤用户的在线动作的管理员控制的信息;以及一个管理员控制组件。最好是,管理员控制组件可操作用以从用户接收执行一个被阻止的在线动作的请求,确定管理员是否存在,以及如果管理员存在则接收管理员的标识。响应于接收管理员的标识,计算机控制组件验证管理员而不拒绝用户对网络环境的访问。在验证管理员之后,计算机控制组件向管理员呈现用户的请求,并且确定管理员是否接受用户的请求。如果管理员接受了用户的请求,则更新用于该用户的管理员控制以允许先前被阻止的动作。
本发明的另一个方面提供了一种用于允许网络环境中的用户和管理员交互式地定制用来过滤用户的在线动作的管理员控制的计算机系统。计算机系统包含:一个设置数据库组件,用于存储有关被用来过滤用户的在线动作的管理员控制的信息;以及一个管理员控制组件。最好是,管理员控制组件可操作用以跟踪和存储用户的被允许的和被阻止的在线动作,根据所存储的信息生成一个历史记录概要报告,并且把该历史记录概要报告提供给管理员。响应于接收了阻止用户执行在历史记录概要报告中被指示为被允许的第一动作的一个管理员请求,则管理控制组件更新用于该用户的管理员控制以包含阻止该第一动作。
【附图说明】
通过参考以下结合附图给出的详细说明,这个发明的上述方面及许多伴随的优点将变得更易于理解,其中:
图1是一个互连网络、诸如Internet的一个典型部分的图例。
图2是一个说明了依据本发明一个示范性实施例的一个父母控制系统的方框图。
图3是图2中的父母控制系统的方框图,说明了依据本发明一个示范性实施例获得父母控制。
图4A和4B是图2中的父母控制系统的方框图,说明了依据本发明一个示范性实施例的父母控制的用户操作。
图5A、5B、和5C是图2中的父母控制系统的方框图,说明了依据本发明一个示范性实施例的父母控制的定制。
图6是一个显示了用于依据本发明的一个示范性实施例的说明性操作环境的方框图。
图7A是一个显示了由父母控制系统的一个示范性实施例使用的说明性数据结构的方框图。
图7B是一个显示了依据本发明一个示范性实施例的父母控制的动作的表格的方框图。
图8是一个说明了在本发明一个实施例中使用的逻辑的综述流程图。
图9是一个说明了用于接收依据本发明一个示范性实施例形成的用户请求的例程的流程图。
图10是一个说明了用于向管理员通知依据本发明一个示范性实施例形成的待处理请求的例程的流程图。
图11是一个说明了依据本发明一个示范性实施例形成的请求决定例程的流程图。
图12是一个说明了用于定制依据本发明一个示范性实施例形成的控制的例程的流程图。
图13是一个说明了依据本发明一个示范性实施例形成的即时批准例程的流程图。
图14是一个说明了依据本发明一个示范性实施例形成的历史记录概要报告例程的流程图。
图15和16是说明了依据本发明一个示范性实施例形成的历史记录综合例程的流程图。
图17是一个显示了依据本发明一个示范性实施例的历史记录概要报告的说明性屏幕显示的屏幕图。
【具体实施方式】
如以上简要描述的那样,本发明提供了用于定制父母控制的方法、系统、和计算机可读介质。图6说明了本发明适用于其中的一个典型的操作环境,即个人计算机。说明的计算系统环境仅仅是在其中利用本发明的操作环境的一个例子,并不对本发明的使用或者功能性范围构成任何限制。计算环境也不应该被解释为与在该示范性操作环境中举例说明的组件中的任何一个或者其组合有任何相关性要求。
本发明可在很多其它通用目的或者特定计算环境或配置中实现。可适于实现本发明的公知的计算系统、环境、和/或配置的例子包含但不局限于:个人计算机、服务器计算机、膝上型设备、多处理器系统、基于微处理器的系统、网络PC、小型计算机、大型计算机、包含上述系统中任何一个的分布式计算环境等。
在图6中把客户机和服务器计算机可能包含的个人计算机系统600的许多组件举例说明为一个计算机610,其可以包含但是不局限于:处理单元620、系统存储器630、和把各个系统组件、包括系统存储器连接到处理单元620的系统总线621。系统总线621可以是几种类型的总线结构中的任何一种,其中这几种类型的总线结构包含:使用各种总线体系结构中任何一种的存储器总线或存储控制器、外围总线、和局域总线。例如,而不是限制,这种体系结构包括工业标准结构(Industry Standard Architecture,ISA)总线、微通道结构(Micro Channel Architecture,MCA)总线、增强ISA(EISA)总线、视频电子标准协会(Video Electronics Standards Association,VESA)局域总线、和也被称为夹层(Mezzanine)总线的外部组件互连(Peripheral Component Interconnect,PCI)总线。计算机610通常包括各种计算机可读介质。计算机可读介质可以是能由计算机610访问、并且包含易失性和非易失性介质以及可移动和不可移动的介质的任何可用介质。例如,而不是限制,计算机可读介质可以包含计算机存储介质和通讯介质。计算机存储介质包括以任何用于存储、诸如计算机可读指令、数据结构、程序模块、或者其它数据之类的信息的方法或者技术实现的易失性和非易失性的以及可移动和不可移动的介质。计算机存储介质包括但不局限于:RAM、ROM、EEPROM、闪速存储器或者其它存储器技术、CD-ROM、数字通用盘(DVD)或者其它光盘存储器、磁带盒、磁带、磁盘存储器、或者其它磁存储器设备,或者能够被用来存储所需信息并且能够由计算机610存取的其它任何介质。通讯介质通常包括计算机可读指令、数据结构、程序模块、或者在已调制数据信号、诸如载波或者其它传送机构中的其它数据,并且包含任何信息传送介质。术语”已调制数据信号”是指它的一个或多个特性以这种方式被设置或者改变以便对信号中的信息编码的信号。例如,而不是限制,通讯介质包含有线介质、诸如有线网络或者直接导线联接,以及无线介质、诸如声学、RF、红外、及其它无线介质。以上任何一个的组合也包含在计算机可读介质的范围内。
系统存储器630包含以易失性和/或非易失性存储器形式的计算机存储介质,诸如只读存储器(ROM)631和随机存取存储器(RAM)632。基本输入/输出系统633(BIOS)包含有助于在计算机610内部的单元之间传输信息、诸如可由处理单元620立即访问的和/或当前正由处理单元620对其操作的程序模块的基本例程。例如,而不是限制,图6说明了操作系统634、应用程序635、其它程序模块636、和程序数据637。
计算机610还可以包含其它可移动/不可移动的、易失性/非易失性的计算机存储介质。仅仅举例来说,图6说明了从不可移动的非易失性磁介质中读取或者向其写入的硬盘驱动器641、从可移动的非易失性磁盘652中读取或者向其写入的磁盘驱动器651、和从可移动的非易失性光盘656、诸如CD-ROM或者其它光介质中读取或者向其写入的光盘驱动器655。其它能够被用在示范性操作环境中的可移动/不可移动、易失性/非易失性的计算机存储介质包含但不局限于:磁带盒、闪速存储器卡、数字通用盘、数字录像带、固态RAM、固态ROM等。硬盘驱动器641通常通过一个不可移动的存储器接口、诸如接口640连接到系统总线621,而磁盘驱动器651和光盘驱动器655通常通过一个可移动的存储器接口、诸如接口650连接到系统总线621。
上述讨论的和在图6中说明的这些驱动器以及它们的相关计算机存储介质为计算机610提供了计算机可读指令、数据结构、程序模块、及其它数据的存储。例如,在图6中,硬盘驱动器641被说明为用于存储操作系统644、应用程序645、其它程序模块646、和程序数据647。应当注意,这些组件可以与操作系统634、应用程序635、其它程序模块636、和程序数据637相同或者不同于它们。操作系统644、应用程序645、其它程序模块646、和程序数据647在此被给予了不同的编号以说明它们至少是不同的拷贝。用户可以通过输入设备、诸如键盘662和通常被称为鼠标、跟踪球、或者触摸垫的指示设备661输入命令和信息到计算机。其它输入设备(未显示)可以包含麦克风、操纵杆、游戏垫、卫星反射器、扫描器等。这些及其它输入设备通常经由一个连接到系统总线的用户-输入接口660连接到处理单元620,但是可以通过其它接口和总线结构、诸如并行端口、游戏端口或通用串行总线(USB)进行连接。此外,监视器691或其它类型的显示设备经由一个接口、诸如视频接口690连接到系统总线621。除监视器之外,计算机还可以包含其它外部输出设备,诸如扬声器697和打印机696,其可以通过一个输出外设接口695连接。
如早先讨论的那样,本发明的一个实施例使用到一个或多个远程计算机的逻辑连接在一个联网环境、诸如一个远程计算机中进行操作。该远程计算机可以是个人计算机、服务器、路由器、网络PC、同等级设备、或者其它公用网络节点,并且尽管在图6中仅仅说明了一个存储器设备681,但是通常可包含与上述计算机610有关的多个或者所有单元。在图6中描述的逻辑连接包含局域网(LAN)671和广域网(WAN)673,但是也可以包含其它类型的网络。这种联网环境在办公室、企业范围的计算机网络、企业内部网、和Internet中是常见的。
当用在LAN联网环境中时,计算机610通过一个网络接口或者适配器670连接到LAN 671。当用在WAN联网环境中时,计算机610通常包含一个用于在WAN 673、诸如Internet上建立通信的调制解调器672或者其它装置。调制解调器672可以经由用户输入接口660或者其它适当机构连接到系统总线621,其中调制解调器672可以是内部的或者外部的。在联网环境中,所述与计算机610相关的程序模块、或者其部分可以被保存在远程存储器设备中。例如,而不是限制,图6说明了驻留在存储器设备681上的远程应用程序685。应当理解,所显示的网络连接是示范性的,而且可以使用其它用于在计算机之间建立通信链路的方式。
术语“Internet”是指能够彼此相互通信的网络和路由器的集合。在图1中显示了Internet 100的一个代表性部分。在图1中所示的Internet 100的代表性部分包括通过路由器110互连的多个LANs120和WANs 130。路由器110通常是用于把一个LAN或者WAN连接到另一个的专用计算机。在LANs内的通信链路可以由对绞线、同轴电缆、或者其它任何公知的通信连接技术、包括无线技术形成。在网络之间的通信链路可以由56Kbps的模拟电话线、或者1Mbps的数字T-1线路和/或45Mbps的T-3线路或者其它任何公知的通信连接技术、包括无线技术形成。此外,计算机及其它相关电子设备140能够经由调制解调器和临时电话链路、包含无线电话链路而远程连接到LANs 120或者WANs 130。这种计算机和电子设备140在图1中被显示为连接到一个LAN 120。应当理解,Internet 100包含许许多多的这种互连网络、计算机、和路由器,而在图1中仅仅显示了Internet 100的一个很小的典型部分。
图2是一个说明了依据本发明用于实现父母控制的一个父母控制系统200的方框图。图2中所示的父母控制系统200包括通过互连网络、诸如Internet 100互连的客户机202、父母控制服务器204、过滤器210、即时信使(messenger)212、内容供应商214和216、和电子邮件218。此外在图2中显示了一个与父母控制服务器204通信的设置数据库206和一个也与父母控制服务器204通信的许可数据库208。设置数据库206包括一个如图2中括号所示的允许/阻止列表。在本发明的替换实施例中,设置数据库206可以驻留在父母控制服务器204或者与父母控制服务器204通信的另一个计算设备上。类似地,许可数据库208可以驻留在父母控制服务器204或者与父母控制服务器204通信的另一个计算机设备上。另外,虽然仅仅显示了一个客户机用户设备202,但是应当理解在父母控制系统200中可以包含许多这种设备。类似地,虽然在图2中仅仅显示了两个内容供应商214和216和两个在线服务、电子邮件218和即时信使212,但是应当理解许多其它内容供应商和在线服务也可以连接到Internet 100。此外,虽然过滤器210和包含允许/阻止列表的设置数据库206被显示为通过Internet 100进行通信,但是过滤器210和允许/阻止列表也可以被下载到客户机202,这可以提高性能。下面结合图3、4A-4B、和5A-5B进一步描述在客户机202、父母控制服务器204、设置数据库206、许可数据库208、过滤器210、即时信使212、内容供应商214和216、以及电子邮件218之间的通信。
参见图3,将描述一个用于登录到Internet并且访问父母控制服务器204的说明性的处理过程。该处理过程由连接到Internet 100的客户机202启动。本领域普通技术人员应当理解:有多种不同的方式连接到Internet 100。例如,用户可以拥有一个向个人、公司、及其它组织提供Internet连通性服务的Internet服务供应商(ISP)的帐号。做为选择,用户可以通过能够处理数字通信的高速通信线路、诸如T1载波线路连接到Internet。另一个备选方案是用户通过在标准铜电话线路上提供高速传输的数字用户线路(DSL)连接到Internet。如另一个例子那样,用户可以利用拨号服务,它是提供Internet或者企业内部网访问及其它资源的用于本地或者世界范围的公共电话交换网的电话连接供应商。本发明不局限于任何连接到Internet 100的特定处理过程。
在用户已经连接到Internet 100之后,用户被引导到父母控制服务器204,并且登录到父母控制服务器204上。用户通过提供标识信息、诸如用户名和口令向父母控制服务器204标识他自己。父母控制服务器204利用本领域普通技术人员所公知的验证过程验证用户。父母控制服务器204然后在设置数据库206中查询用于该用户的父母控制。在说明的实施例中,设置数据库206包含允许/阻止列表,其包含受父母控制的动作的列表。允许/阻止列表包含一个被父母允许的动作的允许列表。允许/阻止列表还包含一个被父母阻止的动作的阻止列表。因此,允许/阻止列表包括为登录到客户机202的用户而定制的父母控制。在查询了设置数据库206之后,向父母控制服务器204提供包含用于该用户的允许/阻止列表的父母控制搜索结果。
图4A和4B是说明了依据本发明一个实施例、使用父母控制系统200以过滤用户的在线动作的处理过程的方框图。图4A说明了一个采取被父母控制系统200所允许的一个动作的用户。图4B说明了一个试图采取被父母控制系统200所阻止的一个动作的用户。
图4A说明了提交一个执行动作A的请求的用户,其中动作A包含任何在线动作。例如,动作A可以是使用基于Internet的电子邮件218服务发送一个电子信息。或者动作A可以是使用基于Internet的即时信使212服务发送一个即时信息。或者动作A可以是访问用于存取由内容供应商214和216提供的信息的网站。在用户已经提交了一个采取动作A的请求之后,父母控制服务器204接收用户的采取动作A的请求。或者动作A可以是需要更多在线时间。例如,在本发明的一个实施例中,计算机检测到用户的允许在线时间即将到期。通知用户允许的在线时间即将到期,并且提示用户提交一个要求更多在线时间的请求。在本发明的这个示范性实施例中,父母控制服务器204使用允许/阻止列表来确定用户是否应当被允许执行动作A。做为选择,父母控制服务器204可以下载所有或者一部分的允许/阻止列表到客户机202,以便使客户机202能够应用允许/阻止列表的所下载部分来确定动作A是否应当被允许。如果没有在阻止列表中找到动作A,则动作A是被允许的,如在图4A中说明的那样。
在本发明的一个替换实施例中,父母控制服务器204除允许/阻止列表之外还使用过滤器210来确定用户是否应当被允许执行动作A。例如,过滤器可以是一个不相称的词过滤器。做为选择,父母控制服务器204可以下载所有或者一部分的过滤器、诸如过滤器210和所有或者一部分的允许/阻止列表到客户机202。在本发明的这样一个实施例中,客户机202将应用下载部分的过滤器210和允许/阻止列表来确定动作A是否应当被允许。如果过滤器210没有阻止动作A而且如果在阻止列表中没有找到动作A,则动作A是被允许的,如在图4A中说明的那样。本领域普通技术人员应当理解,可以利用允许/阻止列表和过滤器210的各种配置来实现本发明。
图4B说明了试图采取动作B的用户而且动作B被父母控制服务器204阻止。更具体地说,如果父母控制服务器204确定动作B不在用户的允许列表中和/或动作B被过滤器210阻止,则阻止动作B。即,即使动作B不在用户的阻止列表上,如果动作B被过滤器210阻止,则父母控制服务器200将阻止动作B,反之亦然。如上所述,本发明的不同实施例通过下载所有或者部分的过滤器210和允许/阻止列表在客户机级别阻止动作B。图4B还说明了向用户通知动作B已经被父母控制系统200阻止了。
图5A是一个说明了用户请求同意执行被阻止的动作B的方框图。如图5A所示,用户提交一个由父母控制服务器204接收的许可请求。父母控制服务器204在许可数据库208中为该请求创建一个条目。在所说明的实施例中,父母控制服务器204通过Internet向另一个客户机220传输一个待处理请求通知。另一个客户机220可以是客户机202的父母或者管理员。在一个替换实施例中,当检测到另一个客户机220登录到父母控制服务器204上时,向另一个客户机220提供待处理请求通知。如果找到了来自客户机202的任何待处理请求,则父母控制服务器204查询许可数据库208,并且通知另一个客户机220。
图5B是一个说明了对同意执行动作B的待处理请求的决定的方框图。如图5B所示,另一个客户机220通过Internet向父母控制服务器204提交一个请求决定。请求决定指示接受或者拒绝该请求。父母控制服务器204接收请求决定,并且用请求决定信息更新许可数据库208。父母控制服务器204通过更新在设置数据库208中的用于客户机202的允许/阻止列表以反映出请求决定,来定制父母控制。如果请求决定指示接受,则该动作被添加到用户的允许列表上。另一方面,如果请求决定指示拒绝,则该动作被添加到阻止列表上。最好是,如果被拒绝的动作以前就被阻止了,则该动作不再被添加到阻止列表上。依据所说明的实施例,父母控制服务器204通过Internet向客户机202传输一个请求决定通知。在一个替换实施例中,当检测到客户机202登录到父母控制服务器204上时,提供请求决定通知。如果找到了任何最近决定的请求,则父母控制服务器204查询许可数据库208,并且通知客户机202。
图5C是一个说明了使用由更新的允许/阻止列表提供的定制父母控制的方框图。如图5C所示,客户机202被允许执行先前被阻止了的动作B。在图5C中,根据在设置数据库206中的允许/阻止列表中的定制的父母控制,客户机202被允许执行动作B。在图5C中,客户机202提交一个采取动作B的请求。通过Internet 100向父母控制服务器204传输对动作B的请求。父母控制服务器204利用设置数据库206中的允许/阻止列表来确定用户(即,登录到客户机202上的个人)是否被允许采取动作B。由于动作B已经被添加到用户的允许列表上,借此定制父母控制,从而用户被允许采取动作B。如早先讨论的那样,动作B能够包含任何在线动作。例如,动作B可以是使用Internet服务、诸如即时信使212和电子邮件218。或者,动作B可以是到内容供应商214和216的网站。在本发明的一种实现方式中,客户202是另一个客户220的孩子。图3、4A、4B、和5A-5C说明了本发明的一个用于允许用户(即孩子)和管理员(即父母)交互式地定制用来过滤用户的在线动作的允许/阻止列表的示范性实施例。
图7A说明了一个用来在许可数据库208中创建一个条目的示范性数据结构。所说明的许可数据库条目数据结构702包含多个数据单元,即唯一的请求ID 704、管理员ID 706、用户ID 708、动作710、被请求的URL 712、被请求的电子邮件地址714、状态716、所请求的时间量718、和未用的时间量720。唯一的请求1D 704包含唯一地标识请求的信息。例如,唯一的请求ID 704可以是由父母控制系统200生成的一个全球唯一的标识符(GUID)。管理员ID 706包含用于标识管理员的信息。例如,管理员1D 706可以是管理员在登录到Internet 100上时使用的口令。动作710包含关于与请求有关的动作的信息。动作可以是用户请求同意执行的任何在线动作,诸如访问网站、下载文件、需要更多在线时间、发送电子邮件、和发送即时消息。另外,动作可以是管理员已经请求的、使用本发明的历史记录综合特征将要被允许或者阻止的一个动作,其将在下面结合图15和16进行讨论。被请求的URL 712包含关于网络上一个资源的地址的信息,诸如Internet 100上的一个资源的统一资源标识符。被请求的电子邮件地址714包含有关电子邮件收件人的地址的信息。电子邮件地址是标识一个用户以便使该用户能够接收Internet电子邮件的字符串。电子邮件地址通常包含一个向邮件服务器标识用户的名称,继之以一个at符号(@)和邮件服务器的主机名和域名。状态716包含有关请求状态的信息,诸如待处理、决定、接受、拒绝、和检查。所请求的时间量718包含关于与所分配的允许用户在线的时间量有关的请求的信息。未用的时间量720包含有关用户仍然可利用的在线时间量的信息。
图7B说明了用于使用本发明定制父母控制的许多可能的被请求在线动作752中的几个。例如,用户请求的动作可以包括来自用户的网站请求754、来自用户的电子邮件地址簿输入请求756、来自用户的信使联系人列表输入请求758、来自用户的文件下载请求760、来自用户的更多在线时间请求762、来自用户的运行应用程序请求764、来自用户的安装应用程序请求766、来自用户的观看电影请求768、来自用户的玩游戏请求770、和来自用户的访问共享资源(例如,文件服务器或者打印机)请求772。一些管理员请求的在线动作可以包括来自管理员的允许或者阻止网站请求774、来自管理员的允许或者阻止电子邮件地址输入请求776、来自管理员的允许或者阻止联系人信使列表输入请求778、来自管理员的允许或者阻止文件下载请求780、来自管理员的允许或者阻止更多在线时间请求782、来自管理员的允许或者阻止运行应用程序请求784、来自管理员的允许或者阻止安装应用程序请求786、来自管理员的允许或者阻止观看电影请求788、来自管理员的允许或者阻止玩游戏请求790、和来自管理员的允许或者阻止访问共享资源请求792。允许和阻止动作的管理员请求将在下面结合图15和16进行讨论,其中图15和16说明了本发明的历史记录综合特征。
图8是一个说明了依据本发明一个实施例由父母控制系统200使用的逻辑的总体流程图。在图8中说明的父母控制例程800从块802开始,并且继续进行到判定块804。在判定块804,进行检验以确定是否已经从用户处接收了同意执行一个被阻止的在线动作的请求。如果在判定块804确定已经从用户接收了一个请求,则例程800进行到块806。在块806,例程800在许可数据库208中为该请求创建一个条目。如果在判定块804确定还没有接收到来自用户的请求,则例程800向后循环直到接收了一个请求为止。在于块806处在许可数据库208中为该请求创建了条目之后,例程800进行到判定块808。在判定块808,进行检验以确定是否已经从管理员处接收了一个请求决定。如果在判定块808处确定没有从管理员接收到请求决定,则例程800向后循环直到从管理员接收了一个请求决定为止。如果在判定块808处确定从管理员接收了请求决定,则例程800进行到块810。在块810,例程800用请求决定信息更新许可数据库208。在更新许可数据库208之后,例程800进行到块812以更新用户的允许/阻止列表以与请求决定一致。在更新了用户的允许/阻止列表以与请求决定一致之后,例程800结束。
图9是一个说明了依据本发明一个实施例、用于从用户接收一个请求并且在许可数据库208中创建一个条目的例程900的流程图。(图8中的块804和806。)例程900在块902开始,并且进行到判定块904,在那儿进行检验以确定用户是否已经被阻止执行一个在线动作。例如,在本发明的一个实施例中,计算机确定用户的允许在线时间是否即将到期。如果是,则通知用户允许的在线时间即将到期。如果在判定块904确定用户没有被阻止执行一个在线动作,则例程900向后循环直到判定块904的检验结果为肯定时为止。如果在判定块904确定用户被阻止执行一个在线动作,则例程900进行到判定块906。例如,在判定块906,进行检验以确定是否存在管理员。在本发明的一个实施例中,向用户提示一个关于管理员是否存在的询问用于用户请求的即时批准。如果在判定块906确定管理员存在,则例程900继续即时批准例程。下面将结合图13描述即时批准例程。如果在判定块906确定管理员不存在,则例程900进行到判定块908。
在判定块908进行检验以确定用户是否想要提交一个请求管理员同意执行被阻止的在线动作的请求。如果在判定块908确定用户不想要提交许可请求,则例程900循环返回到判定块904,并且重复上述步骤。如果在判定块908确定接收到对许可的用户请求,则例程900进行到块910,在那儿收集与请求有关的信息。在本发明的一个实施例中,例程900收集与请求有关的数据,其在前面参照图7A所示的数据结构700进行了描述。例如,例程900收集与请求有关的数据,包含管理员ID、用户ID、和所请求的动作。如果请求涉及访问Internet上的资源,则例程900收集被请求的URL。类似地,如果请求涉及发送或者接收电子邮件,则例程900收集电子邮件地址。同样地,如果请求涉及需要更多在线时间,则例程900收集关于所请求的时间量和未用的时间量的信息。
在块910收集了与请求有关的数据之后,例程900进行到块912,并且在许可数据库208中为该请求创建一个条目。在一个实施例中,例程900使用以上参照图7A所述的数据结构700创建条目。在于许可数据库208中为该请求创建了条目之后,例程900进行到块914。在本发明的一个实施例中,例程900向管理员发送待处理请求的通知。可以利用本领域普通技术人员所公知的各种方式中的任何一种来发送通知。例如,可以经由电子邮件和即时消息发送通知。发送给管理员的待处理请求通知可以包含一个链接到一个网站的单元。管理员可以通过点击在待处理请求通知中的链接单元而导航到该网站。网站显示有关待处理请求的信息。在本发明的其它实施例中,当管理员登录时向管理员提供待处理请求的通知,如以下结合图10描述的那样。
图10是一个说明了依据本发明一个实施例、用于向管理员通知一个待处理请求的例程1000的流程图。例程1000在块1002开始,并且进行到判定块1004,在那儿进行检验以确定是否已经检测到管理员登录。如果在判定块1004确定没有检测到管理员登录,则例程1000向后循环直到判定块1004的检验结果为肯定时为止。如果在判定块1004确定检测到管理员登录,则例程1000进行到块1006。在块1006,例程1000在许可数据库208中搜索来自用户的、对同意执行一个被阻止的在线动作的待处理请求。在块1006在许可数据库208中搜索待处理请求之后,例程1000进行到判定块1008。在判定块1008,进行检验以确定在许可数据库208中是否找到一个来自用户的待处理请求。如果在判定块1008,在许可数据库208中没有找到待处理请求,则例程1000循环返回到判定块1004,并且重复上述步骤。如果在判定块1008,在许可数据库208中找到了一个待处理请求,则例程1000循环进行到块1010,在那儿向管理员发送待处理请求的通知。许可数据库208可以包含多个待处理请求。如果这样的话,在判定块1008处将发现多个待处理请求,并且将向管理员发送多个待处理请求的通知。在向管理员发送了待处理请求的通知之后,例程1000循环返回到判定块1004,并且重复上述步骤。
图11说明了依据本发明一个实施例、用于决定一个请求的例程1100。例程1100从块1102开始,并且进行到判定块1104,在那儿进行检验以确定是否已经从管理员接收了一个检查待处理请求的请求。如果在判定块1104确定没有接收到来自管理员的请求,则例程1100向后循环直到判定块1104的检验结果为肯定时为止。如果在判定块1104确定接收了来自管理员的请求,则例程1100进行到判定块1106。在判定块1106,进行检验以确定许可数据库208是否包含任何待处理请求。如果在判定块1106确定在许可数据库208中没有待处理请求,则例程1100循环返回到判定块1104,并且重复上述步骤。如果在判定块1106确定在许可数据库208中有待处理请求,则例程1100进行到块1108。在块1108,例程1100向管理员显示待处理请求信息。
在块1108向管理员显示了待处理请求之后,例程1100进行到判定块1110,在那儿进行检验以确定管理员是否接受该待处理请求。如果在判定块1110确定管理员接受了待处理请求,则例程1100进行到块1112。在块1112,例程1100更新许可数据库208以指示该请求被接受了。在于块1112更新了许可数据库208以指示出请求被接受之后,例程1100进行到块1114。在块1114,例程1100向用户发送请求被接受的通知。本领域普通技术人员应当理解,可以利用本领域已知的用于在网络上交换消息的各种方法中的任何一种、诸如电子邮件并且即时消息传送来发送通知。在块1114向用户发送请求被接受的通知之后,例程1100进行到块1122以定制控制,其将在下面结合图12加以描述。做为选择,本发明的另一个实施例在检测到用户登录时向用户通知决定了的请求。在替换实施例中,在许可数据库208中查询最近决定的请求,并且向用户通知是否找到了任何最近决定的请求。
如果在判定块1110确定管理员没有接受待处理请求,则例程1100进行到判定块1116,在那儿进行检验以确定管理员是否拒绝该待处理请求。如果在判定块1116确定管理员没有拒绝该待处理请求,则例程1100循环返回到判定块1104,并且重复上述步骤。如果在判定块1116确定管理员拒绝了该待处理请求,则例程1100进行到块1118,并且更新许可数据库218 指示该请求被拒绝了。在更新许可数据库208 指示请求被拒绝之后,例程1100进行到块1120。在块1120,例程1100向用户发送该请求被管理员拒绝的通知。例如,用户可以发送一个指示该请求被拒绝的电子邮件或者即时消息。在块1120向用户发送了请求被拒绝的通知之后,例程1100进行到块1122以执行定制控制。如上所述,本发明的一个替换实施例在检测到用户登录时向用户通知决定了的请求。在块1120向用户发送了请求被拒绝的通知之后,例程1100进行到块1122以定制控制,其将在下面结合图12加以描述。
图12说明了依据本发明一个实施例、用于定制控制的例程1200。例程1200从块1202开始,并且进行到判定块1204,在那儿进行检验以确定是否已经检测到用户登录。如果在判定块1204没有检测到用户登录,则例程1200向后循环直到判定块1204的检验结果为肯定时为止。如果在判定块1204确定检测到用户登录,则例程1200进行到块1206。在块1206,例程1200在许可数据库208中查询最近决定的请求。在块1206在许可数据库208中查询最近决定的请求之后,例程1200进行到判定块1208。在判定块1208,进行检验以确定在许可数据库208中是否找到任何最近决定的请求。如果在判定块1208确定在许可数据库208中没有找到最近决定的请求,则例程1200循环返回到判定块1204,并且重复以上所述的步骤。如果在判定块1208确定在许可数据库208中找到了最近决定的请求,则例程1200进行到判定块1210。在判定块1210,进行检验以确定管理员是否接受最近决定的请求。如果在判定块1210确定最近决定的请求被接受了,则例程1200进行到块1212。在块1212,与最近决定的请求有关的动作被添加到设置数据库206中的用户允许列表上。在本发明的不同实施例中,用户的所有或者部分的允许列表可以被下载到用户的客户机上。下载用户的所有或者部分的允许列表可以提高性能,以及在低层提供更多的有效控制。通过把动作添加到用户的允许列表上,本发明已经定制了用来过滤用户的在线动作的管理员控制以允许用户执行先前被阻止的在线动作。在块1212把与最近决定的请求有关的动作添加到用户允许列表之后,例程1200进行到块1214。在块1214,例程1200向用户发送请求被接受的通知,其可以通过使用电子邮件、即时消息、和其它任何在网络上交换消息的常规方法来实现。在向用户通知请求被接受之后,例程1200完成。
如果在判定块1210确定最近决定的请求没有被接受,则例程1200进行到块1216。在块1216,例程1200把请求的动作添加到用户的阻止列表。如果用户已经被阻止执行与来自用户的被拒绝请求有关的动作,则本发明的一个替换实施例不再把该动作添加到用户的阻止列表上。在块1216把请求的动作添加到用户的阻止列表之后,例程1200进行到块1218。在块1218,向用户发送请求被拒绝和例程1200完成的通知。
图13说明了一个依据本发明一个实施例、用于提供即时批准的例程1300。如以上结合图9描述的那样,当已经确定用户被阻止执行一个在线动作而且存在管理员时,执行即时批准例程1300。例程1300在块1302开始,并且进行到块1304,在那儿获得管理员的口令。口令包含由管理员输入以向网络验证他或者她的身份的字符串。在块1304获得管理员的口令之后,例程1300进行到块1306。在块1306,例程1300验证管理员而不必注销用户。在一个实施例中,例程1300通过比较口令和授权的口令及用户的存储列表、并确定口令是合法的来验证管理员。在验证管理员而不必注销用户之后,例程1300进行到块1308,在那儿向管理员显示用户的请求。在块1308向管理员显示用户的请求之后,例程1300进行到判定块1310。在判定块1310,进行检验以确定管理员是否已经接受了用户的请求。如果在判定块1310确定用户的请求被管理员接受了,则例程1300进行到块1312。在块1312,与被接受的请求有关的动作被添加到设置数据库206中的用户允许列表上。在本发明的不同实施例中,用户的所有或者部分的允许/阻止列表可以被下载到用户的客户机计算机上。下载用户的所有或者部分的允许/阻止列表可以提高性能,以及在用户的客户机计算机上在低层提供更多的有效控制。通过把请求的动作添加到用户的允许列表上,管理员定制用户的在线动作过滤器以允许用户执行一个先前被阻止的在线动作。在把所请求的动作添加到用户的允许列表之后,例程1300进行到块1314,在那儿注销管理员。在块1314注销管理员之后,例程1300进行到块1316,而且允许用户执行用户为其请求即时批准的先前被阻止的动作。在块1316允许用户执行所请求的在线动作之后,在块1324完成即时批准例程1300。
如果在判定块1310确定管理员没有接受用户的请求,则例程1300进行到块1318。在块1318,例程1300把所请求的动作添加到用户的阻止列表上。如果用户已经被阻止执行与来自用户的被拒绝请求有关的动作,则本发明的一个替换实施例不再把该动作添加到用户的阻止列表上。如上所述,本发明的其它实施例把用户的所有或者部分的允许/阻止列表下载到用户的客户机计算机上。下载用户的所有或者部分的允许/阻止列表可以提高性能,并且在用户的客户机计算机上在低层提供了更多的有效控制。在块1318把所请求的动作添加到用户的阻止列表之后,例程1300进行到块1320,在那儿注销管理员。在块1320注销了管理员之后,例程1300进行到块1322,在那儿用户被阻止执行所请求的动作。例程1300在块1324完成。
图14说明了依据本发明一个实施例、用于生成一个历史记录概要报告的例程1400。例程1400从块1402开始,并且进行到判定块1404,在那儿进行检验以确定是否已经检测到用户登录。如果在判定块1404没有检测到用户登录,则例程1400向后循环直到判定块1404的检验结果为肯定时为止。如果在判定块1404确定检测到用户登录,则例程1400进行到块1406。在判定块1406,进行检验以确定管理员是否将接收历史记录概要报告。在本发明的一个实施例中,设置数据库206中的父母控制设置指示管理员是否希望接收一个历史记录概要报告。本领域普通技术人员应当理解,有许多方式来确定管理员是否请求接收一个历史记录概要报告。例如,可以就管理员是否希望接收一个历史记录概要报告进行查询。
如果在判定块1406确定管理员将不会接收历史记录概要报告,则例程1400循环返回到判定块1404,并且重复上述步骤。如果在判定块1406确定管理员将接收历史记录概要报告,则例程1400进行到块1408。在块1408,例程1400跟踪当用户在线时用户的动作。在块1408跟踪用户的在线动作之后,例程1400进行到块1410,在那儿存储用户的历史记录概要信息。在块1410存储了用户的历史记录概要信息之后,例程1400进行到判定块1412。
在判定块1412,进行检验以确定是否是生成历史记录概要报告的时候了。在本发明的一个实施例中,定期地生成历史记录概要报告。在另一个实施例中,当自生成上一个历史记录概要报告以来已经七天或更多天时生成历史记录概要报告。如果在判定块1412确定不是生成历史记录概要报告的时间,则例程1400循环返回到判定块1404,并且重复上述步骤。如果在判定块1412确定是生成历史记录概要报告的时间,则例程1400进行到块1414,并且获得所存储的历史记录概要信息。在块1414获得了历史记录概要信息之后,例程1400进行到块1416,并且生成历史记录概要报告。
图17是说明了被实现为一个使用标记语言、诸如超文本标记语言(html)和可扩展的标记语言(“XML”)的网页的示范性历史记录概要报告的屏幕框图。本领域普通技术人员应当理解,可以使用任何用于生成和呈现报告的常规方法来实现本发明而没有背离本发明的范围。
返回到图14,在块1416生成历史记录概要报告之后,例程1400进行到块1418。在块1418,把历史记录概要报告发送给管理员。在块1418发送历史记录概要报告给管理员之后,例程1400进行到块1420,并且清除所存储的历史记录概要信息。在块1420清除了所存储的历史记录信息之后,例程1400循环返回到判定块1404,并且重复上述步骤。
图15和16说明了依据本发明一个实施例的历史记录综合例程1500和1600。通常,本发明中的历史记录综合特征允许管理员检查用户的在线历史记录以确定是否需要修改控制。例如,如果在检查用户的在线历史记录信息过程中,管理员确定用户被允许采取一个不适当的动作,则管理员能够使用本发明的历史记录综合特征来定制控制以阻止用户在将来执行不适当的行动。在本发明的一个实施例中,向管理员提供包含一个用于检查被包括在历史记录概要信息中的在线动作的选项的历史记录概要信息。例如,管理员能够选择该选项来访问被包括在历史记录概要信息内的网站。
图15说明了管理员与其相互作用的历史记录综合特征部分。图15说明了一个例程1500,其从块1502开始,并且进行到判定块1504,在那儿进行检验以确定是否已经检测到管理员登录。如果在判定块1504确定没有检测到管理员登录,则例程1500向后循环直到判定块1504的检验结果为肯定时为止。如果在判定块1504确定检测到管理员登录,则例程1500进行到判定块1506。在判定块1506,进行检验以确定管理员是否已经请求了用户的历史记录概要信息。如果在判定块1506确定管理员还没有请求用户的历史记录概要信息,则例程1500循环返回到判定块1504,并且重复上述步骤。如果在判定块1506确定管理员已经请求了用户的历史记录概要,则例程1500进行到块1508,并且向管理员显示用户的历史记录概要信息。
在块1508向管理员显示了用户的历史记录概要信息之后,例程1500进行到判定块1510。在判定块1510进行检验,以确定是否已经从管理员处接收了一个修改过滤用户的在线动作的控制的请求。如果在判定块1510确定管理员不希望修改控制,则例程1500循环返回到判定块1504,并且重复上述步骤。如果在判定块1510确定已经从管理员接收了一个修改控制的请求,则例程1500进行到块1512。在块1512,例程1500收集与管理员的请求有关的数据。在块1512收集与管理员的请求有关的数据之后,例程1500进行到块1514。在块1514,例程1500响应于管理员的请求在许可数据库208中创建一个条目。在块1514响应于管理员的请求在许可数据库208中创建条目之后,例程1500循环返回到判定块1504,并且重复上述步骤。
图16说明了更新用户的允许或者阻止列表的历史记录综合特征部分。图16说明了一个例程1600,其从块1602开始,并且进行到判定块1604,在那儿进行检验以确定是否已经检测到用户登录。如果在判定块1604确定没有检测到用户登录,则例程1600向后循环直到判定块1604的检验结果为肯定时为止。如果在判定块1604确定检测到用户登录,则例程1600进行到判定块1606。在块1606,例程1600在许可数据库208中查询一个新的、修改用来过滤用户的在线动作的控制的管理员请求。
在块1606在许可数据库208中查询新的管理员请求之后,例程1600进行到判定块1608。在判定块1608,进行检验以确定在许可数据库208中是否找到任何新的管理员请求。如果在判定块1608确定在许可数据库208中没有找到新的管理请求,则例程1600循环返回到判定块1604,并且重复以上所述的步骤。如果在判定块1608确定在许可数据库208中找到了新的管理员请求,则例程1600进行到判定块1610。在判定块1610,进行检验以确定新的管理员请求是否为允许用户执行一个先前被阻止的动作。
如果在判定块1610确定新的管理员请求将允许用户执行一个先前被阻止的动作,则例程1600进行到块1612。在块1612,例程1600把与管理员的请求有关的动作添加到用户的允许列表上。在本发明的其它实施例中,用户的所有或者部分的允许列表被下载到用户的客户机计算机上,用于在用户的客户机计算机上改善性能和在低层提供更有效的控制。通过把动作添加到用户的允许列表上,定制用户的控制以允许用户执行先前被阻止的动作。在块1612把动作添加到用户的允许列表之后,例程1600循环返回到判定块1604,并且重复上述步骤。
如果在判定块1610确定新的管理员请求不是用于允许用户执行一个先前被阻止的动作,则例程1600进行到块1614。在块1614,把与管理员请求有关的动作添加到用户的阻止列表上。通过把动作添加到用户的阻止列表上,定制用于过滤用户的在线动作的控制,以不允许用户执行先前被允许的动作,如在向管理员显示的历史记录概要信息中指示的那样。在块1614把动作添加到用户的阻止列表之后,用户将不再被允许执行与管理员请求有关的在线动作。在把与管理员请求有关的动作添加到用户的阻止列表之后,例程1600循环返回到判定块1604,并且重复上述步骤。
虽然本发明的上述说明已经被描述为在一个网络的孩子用户和父母管理员之间的交互作用,但是本发明不局限于任何特定的用户和管理员关系。例如,该关系能够是职员和老板的关系。父母控制系统提供了允许管理员(父母/老板)和用户(孩子/职员)交互式地定制用来过滤用户在一个网络上的动作的控制的优点。
再次参考图2,在本发明的一个替换实施例中,父母控制系统中的组件可以被实现为可经由通信网络100访问的分布式软件组件。分布式应用程序开发和执行平台的一个例子是来自位于WashingtonRedmond的微软公司的Microsoft.NET平台。如通常描述的那样,Microsoft.NET平台是提供一次性写入、一次性编译、在任何地方都可运行的应用程序开发的应用程序编程和执行平台。只要Microsoft.NET平台应用程序由面向Microsoft.NET通用运行时间(“URT”)的编译器、也被称为公用语言运行时间引擎编译,它们就可以以任何语言创建。这种编译器把.NET应用程序编译成为中间语言(“IL”),而不是直接编译成为可执行的代码。
为了执行.NET平台应用程序,编译的IL由URT翻译或者“实时”编译成为本地机器指令。本地的机器指令然后能由CPU直接执行。Microsoft.NET平台还包含一个包括类库和服务的大的集合的基础库。这些库和服务提供了对URT特征、及其它高级服务的访问,以便使软件开发者不必重复地编码相同的服务。尽管本发明对于.NET平台实现是可以适用的,但是本发明也可以在替换的平台环境中实现。
虽然已经举例说明和描述了本发明的说明性实施例,但是应当理解能够在其中进行各种改变而没有背离本发明的精神和范围。例如,相关领域技术人员就会理解,父母控制系统可以结合遵守简单对象访问协议(“SOAP”)等的接口。所有的这种要求都被认为是在本发明的范围之内。
虽然已经举例说明和描述了本发明的最佳实施例,但是应当理解能够在其中进行各种改变而没有背离本发明的精神和范围。