CN1924814A - 应用程序的控制方法及装置 - Google Patents
应用程序的控制方法及装置 Download PDFInfo
- Publication number
- CN1924814A CN1924814A CNA2006101219971A CN200610121997A CN1924814A CN 1924814 A CN1924814 A CN 1924814A CN A2006101219971 A CNA2006101219971 A CN A2006101219971A CN 200610121997 A CN200610121997 A CN 200610121997A CN 1924814 A CN1924814 A CN 1924814A
- Authority
- CN
- China
- Prior art keywords
- application program
- data
- funcall
- storage space
- operating system
- 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.)
- Granted
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/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/541—Interprogram communication via adapters, e.g. between incompatible applications
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Storage Device Security (AREA)
- Stored Programmes (AREA)
Abstract
本发明的一个目标是比以前更详细地控制应用程序的操作而不用修改现有的操作系统。提供了一种在操作系统上同时执行包括第一和第二应用程序的多个应用程序的信息处理装置。该信息处理装置监控从该第一应用程序对该操作系统的功能调用或在该第一应用程序和该操作系统之间发送和接收的消息。然后,根据该监控结果,该信息处理装置修改或禁止从该第二应用程序对该操作系统的功能调用或用于在该第二应用程序和该操作系统之间发送和接收消息的过程。
Description
技术领域
本发明涉及一种应用程序的控制方法以及装置。更具体地,本发明涉及一种用于控制从应用程序对操作系统的功能调用的控制方法以及装置。
背景技术
通常,操作系统根据系统管理员设定的信息来控制应用程序的操作。例如,操作系统根据激活应用程序的用户的权限来禁止访问特定文件。此外,操作系统确定将被分配给每个应用程序的CPU的计算时间。
但是,由操作系统进行的控制局限于操作系统的设计者预先确定的类型。因此,为了实现不同于操作系统的控制,必须对现有应用程序重新建模或对操作系统重新建模。尽管假设程序或系统已被重新建模,但是存在下述问题,即重新建模需要大量的开发时间和开发成本并且会减小程序的维护性能。
在这点上,如例如日本专利申请公报No.2003-44297内公开的,已经常规地提出了一种用于扩展对文件的访问控制功能而没有对现有的操作系统重新建模的技术。根据此技术的应用程序经由资源管理程序向操作系统发送操作请求。当资源管理程序捕获该操作请求时,资源管理程序规定该操作请求指定的计算机资源,并确定该应用程序是否具有对该资源的访问许可。如果应用程序不具有访问许可,则资源管理程序拒绝该操作请求。根据此技术,尽管访问被操作系统允许,但是还能够独立于操作系统的许可而规定独立的访问许可。
根据此技术,与用户和计算机资源的集合相关联地,确定是否允许对资源的访问。是否允许对资源的访问被管理员等静态地确定。为此,不能根据随着程序的过程的前进而改变的信息来修改是否允许访问。例如,不能根据数据的内容和属性或当前哪些应用程序保持和使用数据来允许或禁止对某些数据的访问。
发明内容
因此,本发明的一个目标是提供可解决上述问题的一种应用程序的控制方法及装置。上述以及其它目标可由独立权利要求内所述的组合来实现。从属权利要求限定了本发明的另外的有利的和示例性的组合。
为了解决上述问题,根据本发明的第一方面,提供了一种在操作系统上同时执行包括第一和第二应用程序的多个应用程序的信息处理装置,该信息处理装置的控制方法以及用于控制该信息处理装置的程序。所述信息处理装置包括:监控组件,该监控组件监控从该第一应用程序对该操作系统的功能调用或在该第一应用程序和操作系统之间发送和接收的消息;和控制组件,该控制组件根据所述监控组件的监控结果,修改或禁止从该第二应用程序对该操作系统的功能调用或用于在该第二应用程序和该操作系统之间发送和接收消息的过程。
根据本发明的第二方面,提供了一种应用于用于执行提供高层功能以及第一和第二低层程序的信息处理装置的方法,该高层程序提供了高层功能,第一和第二低层程序中的每个提供了第一和第二低层功能。该方法包括以下步骤:调用该高层功能以实现该第一低层功能;调用该高层功能以实现该第二低层功能;判定该第一和第二低层功能的组合;并且如果该第一和第二低层功能的组合是预定组合,则禁止对该高层功能的调用。
发明内容并不必然说明了本发明的所有必要的特征。本发明还可以是上述特征的子组合。
根据本发明,能够比以前更详细地控制应用程序的操作而不必修改现有的操作系统。
附图说明
从下文结合附图对本发明的当前优选示例性实施例的说明中将更清楚地看到本发明的上述以及其它目标和特征以及优点,在附图中:
图1是示出信息处理装置的配置的视图;
图2A和2B是示例性地示出共享存储空间的数据结构的视图;
图3A和3B是示例性地示出记录段的数据结构的视图;
图4是示出还将被信息处理装置操作的程序的配置的视图;
图5是示出信息处理装置的全部操作的流程图;
图6是应用程序和监控组件的流程图;
图7是应用程序、控制组件和判定组件的流程图;
图8是示出S710内的过程的细节的流程图(两个图中的第一个图);
图9是示出S710内的过程的细节的流程图(两个图中的第二个图);
图10是应用启动程序和监控组件的流程图;
图11是线程控制应用程序、控制组件和判定组件的流程图;
图12是示出信息处理装置的配置的可选择示例的视图;
图13是示例性地示出信息处理装置的硬件配置的视图;以及
图14是示出显示部分的显示示例的视图。
具体实施方式
现在将根据优选实施例说明本发明,该优选实施例并非意在限制本发明的范围,而是举例说明本发明。实施例内所述的本发明的所有特征及其组合对于本发明并不是必不可少的。
图1是示出信息处理装置10的配置的视图。信息处理装置10操作操作系统60,该操作系统是根据本发明提供高层功能的高层程序的示例。然后,信息处理装置10在操作系统60上并行操作多个应用程序。具体地,信息处理装置10操作第一应用程序,该第一应用程序是在第一存储空间100内提供第一低层功能的第一低层程序的示例。假设此程序是应用程序110。此外,信息处理装置10操作第二应用程序,该第二应用程序是在第二存储空间200内提供第二低层功能的第二低层程序的示例。假设此程序是应用程序210。根据本实施例的信息处理装置10的目标是监控从应用程序110对操作系统60的功能调用以及基于该监控结果的应用程序210的控制操作。
此后,在本实施例内,代表性地说明了用于根据通过监控应用程序110的功能调用获得的监控结果来控制应用程序210的操作的功能。另外,信息处理装置10还可根据通过监控应用程序210的功能调用获得的监控结果来控制应用程序110的操作。在此情况下,信息处理装置10还操作第二存储空间100内的监控组件120和修改组件140,并还操作第一存储空间200内的控制组件220、判定组件230和修改组件250。由于这样添加的每个成员的功能与图1内的每个成员的功能相同,所以将省略对其的说明。
信息处理装置10在下文将说明的存储器1020内具有第一存储空间100、共享存储空间150和第二存储空间200。信息处理装置10操作第一存储空间100内的应用程序110、监控组件120、DLL 130和修改组件140。根据应用程序110的操作启动,修改组件140将从应用程序110对操作系统60的功能调用的调用目的地地址修改为实现监控组件120的监控程序的地址。被修改的调用目的地地址是操作系统60提供的多个功能中的被预定为监控处理内容的对象的功能的调用目的地地址。该预定功能被操作系统60提供作为DLL 130。
监控组件120是由与第一存储空间100上的应用程序110一起操作的监控程序实现的。然后,监控组件120监控从应用程序110对操作系统60的功能调用或在应用程序110和操作系统60之间被发送和接收的消息,并将监控结果记录在共享存储空间150内。具体地,监控组件120从应用程序110调用以启动过程,将该功能调用的参数或返回值记录在共享存储空间150内作为监控结果,并通过该参数来执行对DLL 130的功能调用。
可选择地,监控组件120可将监控结果传递给DLL 130作为参数等,并经由DLL 130将结果记录在共享存储空间150内。DLL 130从监控组件120调用以启动过程(该过程是被监控组件120指定的参数预定的),并将处理结果作为返回值返回给监控组件120。此外,DLL 130可根据过程的内容将数据记录在共享存储空间150内。例如,当调用将数据复制到剪贴板的功能时,DLL 130将数据记录在共享存储空间150内,而监控组件120将应用程序110的标识信息记录在共享存储空间150内。
信息处理装置10操作第二存储空间200内的应用程序210、控制组件220、判定组件230和DLL 240。根据应用程序210的操作启动,修改组件250将从应用程序210对操作系统60的功能调用的调用目的地地址修改为实现控制组件220的控制程序的地址。被修改的调用目的地地址是操作系统60提供的多个功能中的被预定为控制过程的对象的功能的调用目的地地址。该预定功能被操作系统60提供作为DLL 240。
控制组件220是由与第二存储空间200上的应用程序210一起操作的控制程序实现的。然后,控制组件220根据监控组件120的监控结果,修改或禁止从应用程序210对操作系统60的功能调用或用于在应用程序210和操作系统60之间发送和接收的消息的过程。具体地,监控组件220启动从应用程序210调用的过程,从共享存储空间150读取监控结果,并利用与被调用的参数不同的参数来执行对操作系统60的功能调用或将过程返回应用程序210,而没有根据读取的监控结果执行功能调用。
实际上,可通过DLL 240将监控结果作为返回值传递给控制组件220,即,可经由DLL 240将监控结果从共享存储空间150传递给控制组件220。在此情况下,控制组件220可通过调用判定组件230内的功能从共享存储空间150获得监控结果,以便判定从应用程序210调用的功能是否基于所获取的监控结果执行。
判定组件230根据共享存储空间150内记录的监控结果来判定是否应禁止从控制组件220的功能调用或消息的发送和接收。例如,如果从策略管理器50获得的标识信息所标识的应用程序是预定的特定应用程序,则判定组件230可判定禁止该功能调用或消息的发送和接收。
策略管理器50在与第一存储空间100和第二存储空间200不同的存储空间内操作,并具有记录组件55。记录组件55记录各种类型的信息以控制应用程序的过程。策略管理器50根据记录段55上记录的信息来控制监控组件120和DLL 130。例如,记录段55可记录数据复制被禁止的一组复制源和复制目的地应用程序。然后,策略管理器50将示出一组应用程序的信息提供给判定组件230。
图2A和2B是示例性地示出共享存储空间150的数据结构的视图。共享存储空间150是根据本发明的共享存储空间的示例,并且还起到根据本发明的控制存储空间的作用。即,应用程序110或应用程序210均可访问共享存储空间150,并且监控组件120或控制组件220可访问共享空间150。
具体地,如图2A所示,共享存储空间150与从应用程序110获得的数据相关联地存储监控组件120的监控结果。例如,当监控组件120已检测到下述功能调用时,即应用程序110通过该功能调用将数据记录在共享存储空间150内,该监控组件120可将标识应用程序110的标识信息作为监控结果与数据相关联地记录在共享存储空间150内。在此情况下,应用程序110的标识信息作为监控结果记录在共享存储空间150内。这里,应用程序的标识信息是将该应用程序与其它应用程序区分开的数字。例如,字处理器的标识信息是“3415”,而计算机辅助设计(CAD)应用程序的标识信息是“3435”。
此外,当监控部分120已检测到下述功能调用时,即应用程序110通过该功能调用将数据记录在共享存储空间150内,监控组件120可与数据相关联地记录验证数据已被应用程序110记录的电子签名,或可对数据进行编码。在此情况下,电子签名或被编码的数据作为监控结果记录在共享存储空间150内。此外,当监控组件120已检测到下述功能调用时,即应用程序110通过该功能调用将数据记录在共享存储空间150内,监控组件120可与数据相关联地记录功能调用的次数。在此情况下,该次数作为监控结果记录在共享存储空间150内。例如,功能调用的次数是从当前时间回溯的预定时间段内调用功能的次数。例如,如果在过去的15分钟内已对功能调用15次,则“15”就是被记录的次数。
此外,当监控组件120已检测到下述功能调用时,即应用程序110通过该功能调用将数据记录在共享存储空间150内,监控组件120可与数据相关联地记录数据的大小。在此情况下,数据大小作为监控结果记录在共享存储空间150内。数据大小是功能调用在共享存储空间150内记录的数据的大小。可选择地,数据大小可以是在过去的预定时段内已被多次记录的数据的总大小。
此外,当监控组件120已检测到下述功能调用时,即应用程序110通过该功能调用将数据记录在共享存储空间150内,监控组件120可向数据添加数字水印,该数字水印示出已从应用程序110复制该数据。这样,尽管数据被复制到另一个应用程序内,但是仍可知道该数据的源。
此外,如图2B所示,共享存储空间150可记录目前在操作系统60上运行的应用程序的标识信息。此标识信息由下文将说明的监控组件320管理。例如,监控组件320可检测到启动应用程序的功能的调用,以将该功能启动的应用程序的标识信息作为监控结果记录在共享存储空间150内。此外,监控组件320可检测到终止应用程序的功能的调用,以从监控结果中删除该功能终止的应用程序的标识信息。
另外,共享存储空间150可将各种类型的监控结果记录为文件,或者可将该结果记录为数据(例如变量的数值)。此外,共享存储空间150可将监控结果包括在数据文件内,以记录该文件。此外,共享存储空间150可以是可从应用程序110或监控组件120访问的区域,或者可在除了主存储器之外的记录媒体(例如硬盘驱动器或磁光盘)之中提供。
图3A和3B是示例性地示出记录段55的数据结构的视图。如图3A所示,记录段55记录数据复制被禁止的一组复制源和复制目的地应用程序。即,如图3B所示,禁止从标识信息为3412的CAD工具1到标识信息为1564的邮寄器1的数据复制(见本图内的箭头)。另一方面,允许从标识信息为3415的字处理器到标识信息为1564的邮寄器1的数据复制。
图4是示出还将被信息处理装置10操作的程序的配置的视图。信息处理装置10还操作应用启动程序310、监控组件320、DLL 330和修改组件340。修改组件340将从应用启动程序310对DLL 330的功能调用的调用目的地地址修改为实现监控组件320的监控程序的地址。应用启动程序310是用于启动其它应用程序的启动程序。当用户指示该程序启动应用程序时,应用启动程序310调用操作系统60内的功能,该功能启动该应用程序。此功能是由操作系统60内的DLL 330提供的。
监控组件320检测到启动应用程序的功能的调用,以将该功能启动的应用程序的标识信息作为监控结果记录在共享存储空间150内。具体地,监控组件320从应用启动程序310调用以启动过程,并从功能调用的参数获得标识信息以将该信息记录在共享存储空间150内。然后,监控组件320利用该参数来调用DLL 330中的功能。DLL 330从监控组件320调用以启动过程,并启动应用程序。
此外,优选地,信息处理装置10操作线程控制应用410、控制组件420、判定组件430、DLL 440和修改组件450。修改组件450将从线程控制应用410对DLL 440的功能调用的调用目的地地址修改为实现控制组件420的控制程序的地址。线程控制应用410是用于控制线程的应用程序。线程控制应用410在从用户接收到控制线程的指令时调用操作系统60内的功能以控制该线程。此功能由操作系统60内的DLL 440提供。
控制组件420禁止下述过程,即通过该过程线程控制应用410调用操作系统60上的功能,以便终止任何线程。具体地,控制组件420首先从线程控制应用410调用以启动过程。然后,判定组件430判定来自线程控制应用410的调用控制组件420的功能调用是否是对下述过程的调用,即通过该过程终止实现修改程序的线程。如果该功能调用是对终止线程的过程的调用,则控制组件420将过程返回线程控制应用410而不会调用DLL440。
这样,能够防止用于实现修改组件140、修改组件250、修改组件340和修改组件450的线程的终止。
图5是示出信息处理装置10的全部操作的流程图。信息处理装置10将各种类型的程序(例如监控程序和控制程序)加载到存储空间内(S500)。具体地,信息处理装置10与应用程序110一起操作第一存储空间100上的监控程序,该监控程序监控从应用程序110对操作系统60的功能调用。通过此监控程序,信息处理装置10用作监控组件120。此外,信息处理装置10与应用程序210一起操作第二存储空间200上的控制程序,该控制程序根据监控程序的监控结果禁止或修改从应用程序210对操作系统60的功能调用。通过此控制程序,信息处理装置10用作控制组件220。此外,信息处理装置10可操作监控从应用启动程序310对操作系统60的功能调用的监控程序。此外,信息处理装置10可操作控制从线程控制应用410对操作系统60的功能调用的控制程序。
为了将控制程序和监控程序加载到存储空间内,例如,优选地将这些程序的目标文件(例如DLL)注册为操作系统的标准DLL。作为示例,由于Windows(注册商标)在注册表中将这些程序注册为USER32扩展DLL,所以当启动链接USER32.DLL的所有过程时可加载这些程序。在本实施例内,例如,策略管理器50可在注册表中将这些程序注册为USER32扩展DLL。此外,系统管理员可手工修改注册表。
接下来,信息处理装置10操作修改程序(S510)。信息处理装置10利用该修改程序用作修改组件140、修改组件250、修改组件340和修改组件450。修改组件140将从应用程序110对操作系统60的功能调用的调用目的地地址修改为实现监控组件120的监控程序的地址。修改组件250根据应用程序210的操作启动,将从应用程序210对操作系统60的功能调用的调用目的地地址修改为实现监控组件220的监控程序的地址。修改组件340将从应用启动程序310对DLL 330的功能调用的调用目的地地址修改为实现监控组件320的监控程序的地址。修改组件450将从线程控制应用410对DLL 440的功能调用的调用目的地地址修改为实现控制组件420的控制程序的地址。
将参照作为修改组件140、修改组件250、修改组件340和修改组件450的代表的修改组件140来说明修改功能调用的调用目的地地址的过程的示例。修改组件140将把从应用程序110调用的DLL 130内的一部分的前导指令代码备份在另一个区域内。然后,修改组件140将该指令代码重新写入实现监控组件120的监控程序的转移指令。此外,修改组件140从监控组件120调用被备份的前导指令代码,来代替从监控组件120调用DLL 130的过程。希望此过程在停止其它线程之后执行,以便指令代码不会在此过程正在运行的过渡状态下执行。
随后,将使用其中应用程序110经由剪贴板将数据复制到应用程序210的过程来说明信息处理装置10的过程的细节。此过程是由第一低层功能和第二低层功能的组合实现的,在该第一低层功能内应用程序110将数据记录在剪贴板内,在第二低层功能内应用程序210从剪贴板读取数据。首先,应用程序110调用操作系统60内的DLL以便实现第一低层功能。首先将说明此过程。
图6是应用程序110和监控组件120的流程图。监控组件120判定应用程序110进行的功能调用是否是在被应用程序110调用以启动它的过程之后对用于将数据复制到共享存储空间150内的功能的调用(S600)。如果该功能调用是用于复制的功能的调用(S600:是),则监控组件120向将被复制的数据添加各种类型的属性。例如,监控组件120可添加示出该数据已从应用程序110复制的数字水印。
然后,监控组件120根据从应用程序110调用的参数来调用DLL 130内的API(S620)。例如,监控组件120可通过将应用程序110的标识信息作为参数添加到应用程序110指定的数据中而生成新数据,并将新数据作为参数提供给DLL 130内的功能。
接下来,应用程序210调用操作系统60内的DLL以便实现第二低层功能。下文将说明此过程。图7是应用程序210、控制组件220和判定组件230的流程图。当控制组件220已检测到下述功能的调用时,即应用程序210通过该功能从共享空间150读取数据,控制组件220根据判定组件230的判定来修改或禁止针对该功能调用的过程。此后,将说明特定示例。控制组件220判定该功能调用是否是下述功能(用于粘贴的功能)的调用,即当该功能从应用程序210调用以启动其过程时应用程序210通过该功能从共享空间150读取数据(S700)。
如果该功能调用是对用于粘贴的功能的调用,则很明显由应用程序110和210实现的第一和第二低层功能的组合是预定组合。即,可发现由应用程序110和210实现的功能是将数据记录在剪贴板中的第一低层功能和从剪贴板中读取数据的第二低层功能的组合。出于此原因,如果该功能调用是对用于粘贴的功能的调用(S700:是),则控制部件220调用判定组件230来使得判定组件230判定该功能是否可被执行。如果在共享存储空间150上记录的数据满足用于禁止复制的数据类型的条件,则判定组件230判定禁止对该数据的复制(S710)。
随后,控制组件220根据判定组件230的判定来修改或禁止下述功能调用的过程,即应用程序210通过该功能调用从共享存储空间150读取数据。具体地,当用于禁止功能调用的条件已经实现时(S720:是),控制组件220禁止或修改下述过程,即应用程序210通过该过程从共享存储空间150读取数据(S730)。例如,控制组件220可将错误代码返回应用程序210而不会调用DLL 240内的功能。换句话说,控制组件220可将空数据返回给应用程序210而不会调用DLL 240内的功能。
另一方面,当功能调用不是用于粘贴的功能的调用或者用于禁止功能调用的条件没有实现时(S720:否),控制组件220继续下述过程,即应用程序210通过该过程从共享存储空间150读取数据(S740)。例如,控制组件220可按照原样指定从应用程序210指定的参数,作为调用DLL 240内的功能的参数。
图8是示出S710内的过程的细节的流程图(两个图中的第一个图)。判定组件230判定由从共享存储空间150和监控组件120获得的标识信息标识的一组应用程序110是否与在记录段55上记录的一组应用程序相同(S800)。当这两组应用程序彼此相同时(S800:是),判定禁止应用程序110和监控组件120之间的数据的复制(S840)。这样,能够禁止从处理大量数据的应用程序(例如大规模的CAD工具)到与外部通信的应用程序(例如邮寄器)的复制。
此外,如果由从共享存储空间150获得的示出运行的应用程序的标识信息标识的应用程序是预定的特定应用程序(S810:是),则判定组件230判定禁止将共享存储空间150内记录的数据复制到应用程序210(S840)。例如,当与外部装置通信的应用程序(例如邮寄器)正在运行时,可完全禁止复制。
此外,如果共享存储空间150内记录的数据包括禁止复制的特定字符串(S820:是),则判定组件230判定禁止将共享存储空间150内记录的数据复制到应用程序210(S840)。例如,当数据包括字符串(例如“confidential”或“secret”)时,可判定必须防止该数据泄漏给其它人员并因此禁止复制。
此外,如果共享存储空间150内记录的数据满足禁止复制的数据类型的条件(S830:是),则判定组件230判定禁止该数据的复制(S840)。例如,判定组件230首先根据共享存储空间150内记录的文件格式来判定数据类型。例如如果该文件扩展名是“doc”等,则判定组件230可判定该文件内存储了文档。
然后,如果判定的数据类型是预定的特定类型,则判定组件230判定禁止该数据的复制。例如,如果该数据是具有高度机密的信息(例如CAD工具进行的设计信息),则判定组件230可判定禁止该数据的复制。
图9是示出S710内的过程的细节的流程图(两个图中的第二个图)。如果数据没有包括预定的数字水印(S900:否),则判定组件230判定禁止数据复制(S940)。这样,能够禁止从除了被添加有数字水印的特定应用之外的应用来复制数据,并防止未知来源的数据(例如计算机病毒等)妨碍应用程序210的操作。
此外,判定组件230验证共享存储空间150内记录的电子签名(S910)。当共享存储空间150内记录的数据被编码时,判定组件230可将该数据解码。如果验证或译码失败(S910:否),则判定组件230判定禁止与电子签名对应记录的数据的复制(S940)。如果判定组件230进行的验证成功(S910:是),则如果以下其它条件没有实现,控制组件220就允许应用程序210的功能调用。这样,例如,应用程序210可从共享存储空间150读取数据。
此外,如果下述功能调用的次数已超过预定基准(S920:是),即通过该功能调用将数据记录在共享存储空间150内,则判定组件230判定禁止数据复制(S940)。此外,如果共享存储空间150内记录的数据的大小已超过预定基准(S930:是),则判定组件230判定禁止数据复制(S940)。这样,能够限制将被复制的数据量,以减小信息泄漏的危险。
当上述所述任何条件均不被满足时(S930:否),判定组件230判定用于禁止共享存储空间150内记录的数据的复制的条件不被满足(S950),并允许复制该数据。
如上所述,根据本附图的过程,能够很好地控制应用程序之间的数据复制而无需对操作系统重新建模。这样,能够预先防止机密数据泄漏并从而提高系统安全性。另外,本附图的过程是一个示例。因此,策略管理器50可修改用于禁止数据复制的条件。即,系统管理员可通过操作策略管理器50来控制信息处理装置10内的应用程序的操作。
图10是应用启动程序310和监控组件320的流程图。监控组件320被应用启动程序310调用以启动过程,并然后判定应用启动程序310的功能调用是否是启动另一个应用程序的功能(用于启动的功能)的调用(S1000)。如果功能调用是用于启动的功能的调用(S1000:是),则监控组件320将功能调用启动的应用程序的标识信息记录在共享存储空间150中(S1010)。
此外,监控组件320判定应用启动程序310的功能调用是否是用于终止其它应用程序的功能(用于终止的功能)的调用(S1020)。如果该功能调用是用于终止的功能的调用(S1020:是),则从共享存储空间150中删除该功能调用终止的应用程序的标识信息(S1030)。然后,监控组件230调用DLL 330以实际控制应用程序(S1040)。
这里,操作系统60根据终止应用程序的方法之间的差别提供了多个用于终止的功能。因此,为了合适地管理运行的应用程序,即使应用程序被任何用于终止的应用功能终止,也必须检测到该应用程序的终止。因此,尽管调用任何用于终止的功能来代替所述用于终止的功能,但是监控组件320可监控终止使用功能调用的特定功能。此特定功能例如是打开该应用程序从存储空间读取的DLL的功能。能够通过监控对此功能的调用来正确地管理运行的应用程序。
图11是线程控制应用410、控制组件420和监控组件430的流程图。控制组件420启动从线程控制应用410调用的过程,并接着判定线程控制应用410的功能调用是否是用于终止其它线程的功能的调用(S1100)。如果该功能调用是用于终止其它线程的功能的调用(S1100:是),则控制组件420修改或禁止该功能的过程(S1110)。例如,控制组件420可将错误代码返回给线程控制应用410而不会终止该线程。
图12是示出根据可选择示例的信息处理装置10的配置的视图。在此可选择示例内,应用程序110具有记录段115,该记录段115是根据本发明的第一记录段的示例。在WindowS(注册商标)操作系统内,记录段115被称为例如输入地址表。对于每个功能调用,记录段115都从应用程序110引用,并与每个功能的标识信息相关联地记录该功能的调用目的地地址。即,例如,当调用某个功能时,应用程序110利用该功能的标识信息从记录段115检索该功能的调用目的地地址。然后,通过将过程移动到被检索的调用目的地地址而调用该功能。此外,第二存储空间200类似地具有记录段215。记录段215记录从应用程序210引用的调用目的地地址。
此外,根据本可选择示例的修改组件140通过重新写记录段115来修改功能的调用目的地。具体地,修改组件140将与预先设定为监控处理内容的对象的功能对应的记录段115上记录的调用目的地地址修改为实现监控组件120的监控程序的地址。类似地,根据此可选择示例的修改组件250将与预先设定为控制过程的对象的功能对应的记录段215上记录的调用目的地地址修改为实现控制组件220的控制程序的地址。另外,由于其它配置通常与图1内所示的相同符号的成员相同,所以将省略对它们的说明。这样,即使在此可选择示例内所示的配置内,仍可监控或控制从应用程序对操作系统的功能调用。
图13是示例性地示出信息处理装置10的硬件配置的视图。信息处理装置10包括具有通过主机控制器1082相互连接的CPU 1000、RAM 1020和图像控制器1075的CPU外围部分;具有通过输入-输出控制器1084连接到主机控制器1082的通信接口1030、硬盘驱动器1040和CD-ROM驱动器1060的输入-输出部分;以及具有连接到输入-输出控制器1084的BIOS 1010、软盘驱动器1050和输入-输出芯片1070的传统输入-输出部分。
主机控制器1082将RAM 1020连接到用于以高传输速率访问RAM1020的CPU 1000和图像控制器1075。CPU 1000根据BIOS 1010和RAM1020上存储的程序进行操作以控制每个部分。图像控制器1075获得RAM1020内提供的帧缓冲器上由CPU 1000生成的图像数据,并在显示装置1080上显示该数据。可选择地,图像控制器1075其中可包括存储CPU 1000生成的图像数据的帧缓冲器。
输入-输出控制器1084将主机控制器1082连接到作为相对较快的输入-输出装置的通信接口1030、硬盘驱动器1040和CD-ROM驱动器1060。通信接口1030经由网络与外部装置通信。硬盘驱动器1040存储将被信息处理装置10使用的程序和数据。CD-ROM驱动器1060从CD-ROM 1095读取程序或数据,并将该程序或数据提供给RAM 1020或硬盘驱动器1040。
此外,RAM 1020包括第一存储空间100、第二存储空间200和共享存储空间150。即,应用程序110被读入RAM 1020内的第一存储空间100内以被CPU 1000执行。此外,应用程序210被读入RAM 1020内的第二存储空间200以被CPU 1000执行。此外,应用程序110被CPU 1000执行以生成数据,并将该数据记录在RAM 1020内的共享存储空间150内。
此外,作为相对低速的输入-输出装置的BIOS 1010、软盘驱动器1050和输入-输出芯片1070连接到输入-输出控制器1084。BIOS 1010存储将在启动信息处理装置10期间被CPU 100执行的引导程序、依赖于信息处理装置10的硬件的程序等等。软盘驱动器1050从软盘1090读取程序或数据,并经由输入-输出芯片1070将该程序或数据提供给RAM 1020或硬盘驱动器1040。输入-输出芯片1070经由软盘1090、并行端口、串行端口、键盘端口、鼠标端口等来连接各种类型的输入-输出装置。
提供给信息处理装置10的程序被存储在记录媒体(例如软盘1090、CD-ROM 1095或IC卡)内,以便由用户所提供。程序经由输入-输出芯片1070和输入-输出控制器1084从该记录媒体读取以便被安装在信息处理装置10内并在该装置内执行。由于通过由程序在信息处理装置10等之上进行工作所执行的操作与图1到12内所述的信息处理装置10的那些操作相同,所以将省略对它们的说明。
上述程序可被存储在外部存储媒体内。存储媒体除了软盘1090和CD-ROM 1095之外,还可包括光记录媒体(例如DVD和PD)、磁光记录媒体(例如MD、磁带媒体、例如IC卡的半导体存储器)。此外,连接到专用通信网络和因特网的服务器系统内提供的存储设备(例如硬盘或RAM)可被用作记录媒体,以经由网络向信息处理装置10提供程序。
图14示出显示部分1080的显示示例。如本图内所示,当控制组件220禁止数据复制时,信息处理装置10在显示部分1080内的用于应用程序210的操作屏幕上显示了示出此效果的消息或符号。例如,信息处理装置10可在作为用于应用程序210的操作屏幕的窗口上弹出“复制禁止”的消息。此消息可以是之前已由应用程序210准备好的错误消息。即,这种显示可仅通过控制组件220将错误代码返回给应用程序210而不改变现有的应用程序210来实现。
尽管本发明已作为示例性实施例被说明,但是应理解,本领域技术人员可进行许多改变和替换而不会背离本发明的精神和范围。从权利要求的定义中可清楚地看到,具有这些修改的实施例也属于本发明的范围。
Claims (19)
1.一种在操作系统上同时执行包括第一和第二应用程序的多个应用程序的信息处理装置,该信息处理装置包括:
监控组件,该监控组件监控从该第一应用程序对该操作系统的功能调用或在该第一应用程序和该操作系统之间发送和接收的消息;以及
控制组件,该控制组件根据所述监控组件的监控结果,修改或禁止从该第二应用程序对该操作系统的功能调用或用于在该第二应用程序和该操作系统之间发送和接收消息的过程。
2.根据权利要求1的信息处理装置,其中
该第一应用程序在第一存储空间内运行,
该第二应用程序在与该第一存储空间不同的第二存储空间内运行,
所述监控组件是由与在该第一存储空间内的该第一应用程序一起操作的程序实现的,并将监控结果记录在控制存储空间内,该控制存储空间能够被所述监控组件或所述控制组件中的任一个所访问,以及
所述控制组件是由与在该第二存储空间内的该第二应用程序一起操作的程序实现的,并从该控制存储空间读取监控结果以根据所读取的监控结果来禁止或修改功能调用或消息的发送和接收。
3.根据权利要求2的信息处理装置,其中
该信息处理装置还包括:
第一修改组件,该第一修改组件将从该第一应用程序对该操作系统的功能调用的地址修改为实现所述监控组件的程序的地址;以及
第二修改组件,该第二修改组件将从该第二应用程序对该操作系统的功能调用的地址修改为实现所述控制组件的程序的地址,
从该第一应用程序调用所述监控组件以启动一过程,将功能调用的参数或返回值记录在该控制存储空间内作为监控结果,并使用该参数调用对该操作系统的功能调用,以及
从该第二应用程序调用所述控制组件以启动一过程,从该控制存储空间读取监控结果,并根据所读取的监控结果使用与该被调用的参数不同的参数来调用对该操作系统的功能调用,或将该过程返回到该第二应用程序而不执行该功能调用。
4.根据权利要求3的信息处理装置,其中
该第一修改组件将由该操作系统提供的并被指定为将被监控的特定功能的地址修改为实现所述监控组件的程序的地址;以及
该第二修改组件将由该操作系统提供的并被指定为将被控制的特定功能的地址修改为实现所述控制组件的程序的地址。
5.根据权利要求2的信息处理装置,还包括:
第一记录段,该第一记录段具有对于每个功能调用从每个应用程序引用的每个功能的地址的表,该每个功能的地址与每个功能的标识信息相关联;
第一修改组件,该第一修改组件把将被监控的特定功能的地址转换成实现所述监控组件的程序的地址;以及
第二修改组件,该第二修改组件把将被控制的特定功能的地址修改成实现所述控制组件的程序的地址。
6.根据权利要求5的信息处理装置,其中
所述第一修改组件被实现为在该第一存储空间内运行的线程,
所述第二修改组件被实现为在该第二存储空间内运行的线程,以及
所述控制组件还与控制该线程的应用程序相关联地被提供,并禁止在该操作系统上调用功能以便终止来自该应用程序的上述线程中的任何一个。
7.根据权利要求2的信息处理装置,其中
该信息处理装置还包括第二记录段,该第二记录段记录禁止复制数据的一组复制源和复制目的地应用程序,
响应于检测到下述功能调用,即该第一应用程序通过该功能调用将数据记录在能够被该第一和第二应用程序中的任一个所访问的共享存储空间内,所述监控组件将作为标识该第一应用程序的监控结果的标识信息与该数据相关联地记录在该控制存储空间内,
该信息处理装置还包括判定组件,如果由从该控制存储空间和该第二应用程序获得的标识信息所标识的一组应用程序与所述第二记录组件上记录的一组应用程序相同,则该判定组件判定禁止复制数据,以及
响应于检测到下述功能调用,即该第二应用程序通过该功能调用从该共享存储空间读取数据,所述控制组件根据所述判定组件的判定来修改或禁止该功能调用的过程。
8.根据权利要求7的信息处理装置,其中
如果该共享存储空间内记录的数据包括禁止复制的字符串,则所述判定组件还判定禁止复制数据,以及
所述控制组件还根据所述判定组件的判定来修改或禁止下述功能调用的过程,该第二应用程序通过该功能调用从该共享存储空间读取数据。
9.根据权利要求7的信息处理装置,其中
如果该共享存储空间内记录的数据的类型被禁止复制数据,则所述判定组件判定禁止复制数据,以及
所述控制组件还根据所述判定组件的判定来修改或禁止下述功能调用的过程,该第二应用程序通过该功能调用从该共享存储空间读取数据。
10.根据权利要求7的信息处理装置,其中
所述监控组件向该数据添加验证数据已被该第一应用程序记录的电子签名,并将该被添加的数据记录在该共享存储空间内,
所述判定组件验证该共享存储空间内记录的电子签名,以及
如果所述判定组件的验证已成功,则所述控制组件允许下述功能调用,即该第二应用程序通过该功能调用从该共享存储空间读取数据。
11.根据权利要求7的信息处理装置,其中
响应于检测到下述功能调用,即该第一应用程序通过该功能调用将数据记录在共享存储空间内,所述监控组件对数据编码并将被编码数据记录在该共享存储空间内,
所述判定组件对该共享存储空间内记录的被编码数据进行解码,以及
如果所述判定组件进行的解码已成功,则所述控制组件允许下述功能调用,即该第二应用程序通过该功能调用从该共享存储空间读取被解码的数据。
12.根据权利要求7的信息处理装置,其中,响应于检测到下述功能调用,即该第一应用程序通过该功能调用将数据记录在该共享存储空间内,所述监控组件向该数据添加示出该数据已从该第一应用程序被复制的数字水印。
13.根据权利要求7的信息处理装置,其中
响应于检测到下述功能调用,即该第一应用程序通过该功能调用将数据记录在该共享存储空间内,所述监控组件将该功能调用的次数与该数据相关联地记录在该控制存储空间内,并且
如果该功能调用的次数已超过预定基准,则所述判定组件判定禁止该数据复制。
14.根据权利要求7的信息处理装置,其中
响应于检测到下述功能调用,即该第一应用程序通过该功能调用将数据记录在该共享存储空间内,所述监控组件将数据大小与该数据相关联地记录在该控制存储空间内,并且
如果该数据大小已超过预定基准,则所述判定组件判定禁止该数据复制。
15.根据权利要求2的信息处理装置,其中
所述监控组件检测启动应用程序的功能的调用,以将被该功能启动的应用程序的标识信息记录在该控制存储空间内作为监控结果,
该信息处理装置还包括判定组件,如果由从该控制存储空间获得的该标识信息所标识的应用程序是预定的应用程序,则该判定组件判定禁止将该共享存储空间内记录的数据复制到该第二应用程序中,以及
所述控制组件根据所述判定组件的判定来修改或禁止下述功能调用,即该第二应用程序通过该功能调用从该共享存储空间读取数据。
16.一种应用于用于执行提供高层功能以及第一和第二低层程序的信息处理装置的方法,该高层程序提供了高层功能,第一和第二低层程序中的每个提供了第一和第二低层功能,该方法包括以下步骤:
调用该高层功能以实现该第一低层功能;
调用该高层功能以实现该第二低层功能;
判定该第一和第二低层功能的组合;并且
如果该第一和第二低层功能的组合是预定组合,则禁止对该高层功能的调用。
17.一种信息处理装置内的应用程序的控制方法,该信息处理装置在操作系统上并行地操作包括第一和第二应用程序的多个应用程序,该控制方法包括以下步骤:
监控从该第一应用程序对该操作系统的功能调用或在该第一应用程序和该操作系统之间发送和接收的消息;以及
根据所述监控步骤内的监控结果,修改或禁止从该第二应用程序对该操作系统的功能调用或用于在该第二应用程序和该操作系统之间发送和接收消息的过程。
18.一种用于控制信息处理装置内的应用程序的程序,该信息处理装置在操作系统上并行地操作包括第一和第二应用程序的多个应用程序,该程序使得该信息处理装置作用为:
监控组件,该监控组件监控从该第一应用程序对该操作系统的功能调用或在该第一应用程序和该操作系统之间发送和接收的消息;以及
控制组件,该控制组件根据所述监控组件的监控结果,修改或禁止从该第二应用程序对该操作系统的功能调用或用于在该第二应用程序和该操作系统之间发送和接收消息的过程。
19.一种用于设定信息处理装置以便根据用于第一应用程序的过程来控制用于第二应用程序的过程的设定方法,该设定方法包括以下步骤:
与该第一应用程序一起在第一存储空间上操作监控程序,该监控程序监控从该第一应用程序对操作系统的功能调用;
与该第二应用程序一起在第二存储空间上操作控制程序,该控制程序根据该监控程序的监控结果来禁止或修改从该第二应用程序对该操作系统的功能调用;以及
将从该第一应用程序对该操作系统的功能调用的调用目的地地址修改为该监控程序的地址,以及将从该第二应用程序对该操作系统的功能调用的调用目的地地址修改为该控制程序的地址。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005249157A JP4208085B2 (ja) | 2005-08-30 | 2005-08-30 | アプリケーションプログラムの制御方法およびその装置 |
JP249157/2005 | 2005-08-30 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1924814A true CN1924814A (zh) | 2007-03-07 |
CN100468343C CN100468343C (zh) | 2009-03-11 |
Family
ID=37805855
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB2006101219971A Expired - Fee Related CN100468343C (zh) | 2005-08-30 | 2006-08-30 | 应用程序的控制方法及装置 |
Country Status (3)
Country | Link |
---|---|
US (1) | US7600231B2 (zh) |
JP (1) | JP4208085B2 (zh) |
CN (1) | CN100468343C (zh) |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101271404A (zh) * | 2007-03-19 | 2008-09-24 | Lg电子株式会社 | 终端以及控制其窗口的方法 |
CN102982279A (zh) * | 2012-11-07 | 2013-03-20 | 北京奇虎科技有限公司 | 计算机辅助设计病毒感染防止系统和方法 |
CN103034542A (zh) * | 2011-09-30 | 2013-04-10 | 联想(北京)有限公司 | 一种消息处理方法、装置及电子设备 |
CN101510160B (zh) * | 2009-03-26 | 2013-10-16 | 北京中星微电子有限公司 | 嵌入式设备应用功能的程序运行控制方法及嵌入式设备 |
CN103548320A (zh) * | 2011-03-21 | 2014-01-29 | 莫克纳公司 | 不安全应用在装置上的安全执行 |
WO2014190875A1 (zh) * | 2013-05-27 | 2014-12-04 | 华为终端有限公司 | 系统功能调用的方法、装置及终端 |
CN104699658A (zh) * | 2013-12-03 | 2015-06-10 | 罗伯特·博世有限公司 | 用于求得基于数据的函数模型的梯度的方法和装置 |
CN106203167A (zh) * | 2016-07-08 | 2016-12-07 | 北京小米移动软件有限公司 | 应用权限管理方法及装置 |
CN103034542B (zh) * | 2011-09-30 | 2016-12-14 | 联想(北京)有限公司 | 一种消息处理方法、装置及电子设备 |
CN106528081A (zh) * | 2016-09-26 | 2017-03-22 | 北京小米移动软件有限公司 | 操作执行方法及装置 |
WO2017162081A1 (zh) * | 2016-03-22 | 2017-09-28 | 中兴通讯股份有限公司 | 一种剪切板访问控制方法及系统、存储介质 |
CN109416652A (zh) * | 2016-08-19 | 2019-03-01 | 华为技术有限公司 | 应用数据的共享方法、装置和终端设备 |
CN109543402A (zh) * | 2018-11-06 | 2019-03-29 | 北京指掌易科技有限公司 | 一种基于Android应用的复制粘贴保护方法 |
Families Citing this family (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4549809B2 (ja) * | 2004-10-29 | 2010-09-22 | 京セラ株式会社 | 携帯電話端末及びプログラム管理方法並びにそのコンピュータプログラム |
US8561176B1 (en) | 2007-01-24 | 2013-10-15 | Mcafee, Inc. | System, method and computer program product for monitoring and/or analyzing at least one aspect of an invocation of an interface |
JP4959473B2 (ja) | 2007-08-30 | 2012-06-20 | インターナショナル・ビジネス・マシーンズ・コーポレーション | コンピュータの画面の情報を保護するシステム |
JP5382450B2 (ja) * | 2008-02-14 | 2014-01-08 | 日本電気株式会社 | アクセス制御装置、その方法及び情報記録媒体 |
KR100928467B1 (ko) * | 2009-02-02 | 2009-11-25 | 주식회사 파수닷컴 | 클립보드 보안 시스템 및 방법 |
JP4538838B1 (ja) * | 2009-08-18 | 2010-09-08 | システムインテリジェント株式会社 | 仮想シンクライアント化装置、仮想シンクライアント化システム、仮想シンクライアント化プログラム、及び仮想シンクライアント化方法 |
JP5081280B2 (ja) * | 2010-07-08 | 2012-11-28 | 株式会社バッファロー | 可搬記憶媒体 |
KR101064143B1 (ko) * | 2010-08-20 | 2011-09-15 | 주식회사 파수닷컴 | Drm 환경에서의 클립보드 보호 시스템 및 그 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 기록매체 |
US8429744B1 (en) * | 2010-12-15 | 2013-04-23 | Symantec Corporation | Systems and methods for detecting malformed arguments in a function by hooking a generic object |
US9473485B2 (en) | 2011-03-21 | 2016-10-18 | Blue Cedar Networks, Inc. | Secure single sign-on for a group of wrapped applications on a computing device and runtime credential sharing |
US9396325B2 (en) | 2011-03-21 | 2016-07-19 | Mocana Corporation | Provisioning an app on a device and implementing a keystore |
US8812868B2 (en) | 2011-03-21 | 2014-08-19 | Mocana Corporation | Secure execution of unsecured apps on a device |
US8769305B2 (en) | 2011-03-21 | 2014-07-01 | Moncana Corporation | Secure execution of unsecured apps on a device |
US8707434B2 (en) | 2011-08-17 | 2014-04-22 | Mcafee, Inc. | System and method for indirect interface monitoring and plumb-lining |
WO2013057825A1 (ja) * | 2011-10-20 | 2013-04-25 | トヨタ自動車株式会社 | 情報処理装置、データ管理方法、データ管理プログラム |
KR101991687B1 (ko) * | 2012-11-23 | 2019-06-24 | 삼성전자 주식회사 | 동적 라이브러리 프로파일링 방법, 이를 기록한 컴퓨터로 읽을 수 있는 기록 매체 및 동적 라이브러리 프로파일링 시스템 |
JP6381187B2 (ja) * | 2013-08-09 | 2018-08-29 | キヤノン株式会社 | 情報処理装置、情報処理方法、及びプログラム |
CN105426222B (zh) * | 2015-12-18 | 2019-05-03 | 广州华多网络科技有限公司 | 一种对终端应用的处理方法、装置及终端 |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5956514A (en) * | 1991-04-12 | 1999-09-21 | Boeing North American, Inc. | Apparatus and method for multiple processor software development |
JPH10293769A (ja) | 1997-02-19 | 1998-11-04 | Hironobu Matsuoka | プログラムを記録したコンピュータ読み取り可能な記録媒体およびデータ処理システム |
JP4242494B2 (ja) | 1998-12-24 | 2009-03-25 | 大日本印刷株式会社 | 携帯型信号処理装置 |
US6340977B1 (en) * | 1999-05-07 | 2002-01-22 | Philip Lui | System and method for dynamic assistance in software applications using behavior and host application models |
CA2352948A1 (en) * | 1999-10-01 | 2001-04-12 | Carlos Murdock | System and method for providing data security |
JP4278835B2 (ja) | 2000-06-07 | 2009-06-17 | 株式会社リコー | ファイル複写管理方法及び記録媒体 |
JP2003044297A (ja) * | 2000-11-20 | 2003-02-14 | Humming Heads Inc | コンピュータリソースの制御を行なう情報処理方法および装置、情報処理システム及びその制御方法並びに記憶媒体、プログラム |
JP3927376B2 (ja) | 2001-03-27 | 2007-06-06 | 日立ソフトウエアエンジニアリング株式会社 | データ持ち出し禁止用プログラム |
JP3970137B2 (ja) * | 2001-09-14 | 2007-09-05 | キヤノン株式会社 | 文書処理方法及びその装置 |
JP4299249B2 (ja) | 2003-01-20 | 2009-07-22 | 富士通株式会社 | 複製防止装置、複製防止方法およびその方法をコンピュータに実行させるプログラム |
US20050028168A1 (en) * | 2003-06-26 | 2005-02-03 | Cezary Marcjan | Sharing computer objects with associations |
US7478204B2 (en) * | 2004-04-29 | 2009-01-13 | International Business Machines Corporation | Efficient sharing of memory between applications running under different operating systems on a shared hardware system |
US7437617B2 (en) * | 2005-02-11 | 2008-10-14 | International Business Machines Corporation | Method, apparatus, and computer program product in a processor for concurrently sharing a memory controller among a tracing process and non-tracing processes using a programmable variable number of shared memory write buffers |
-
2005
- 2005-08-30 JP JP2005249157A patent/JP4208085B2/ja not_active Expired - Fee Related
-
2006
- 2006-08-28 US US11/510,970 patent/US7600231B2/en not_active Expired - Fee Related
- 2006-08-30 CN CNB2006101219971A patent/CN100468343C/zh not_active Expired - Fee Related
Cited By (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101271404A (zh) * | 2007-03-19 | 2008-09-24 | Lg电子株式会社 | 终端以及控制其窗口的方法 |
US8745527B2 (en) | 2007-03-19 | 2014-06-03 | Lg Electronics Inc. | Terminal and method of controlling windows thereof |
CN101510160B (zh) * | 2009-03-26 | 2013-10-16 | 北京中星微电子有限公司 | 嵌入式设备应用功能的程序运行控制方法及嵌入式设备 |
CN103548320B (zh) * | 2011-03-21 | 2016-12-07 | 蓝雪松网络公司 | 不安全应用在装置上的安全执行 |
CN103548320A (zh) * | 2011-03-21 | 2014-01-29 | 莫克纳公司 | 不安全应用在装置上的安全执行 |
CN103034542A (zh) * | 2011-09-30 | 2013-04-10 | 联想(北京)有限公司 | 一种消息处理方法、装置及电子设备 |
CN103034542B (zh) * | 2011-09-30 | 2016-12-14 | 联想(北京)有限公司 | 一种消息处理方法、装置及电子设备 |
CN102982279B (zh) * | 2012-11-07 | 2016-06-29 | 北京奇虎科技有限公司 | 计算机辅助设计病毒感染防止系统和方法 |
CN102982279A (zh) * | 2012-11-07 | 2013-03-20 | 北京奇虎科技有限公司 | 计算机辅助设计病毒感染防止系统和方法 |
US10452867B2 (en) | 2013-05-27 | 2019-10-22 | Huawei Device Co., Ltd. | System function invoking method and apparatus, and terminal |
WO2014190875A1 (zh) * | 2013-05-27 | 2014-12-04 | 华为终端有限公司 | 系统功能调用的方法、装置及终端 |
CN109063467A (zh) * | 2013-05-27 | 2018-12-21 | 华为终端(东莞)有限公司 | 系统功能调用的方法、装置及终端 |
CN104699658A (zh) * | 2013-12-03 | 2015-06-10 | 罗伯特·博世有限公司 | 用于求得基于数据的函数模型的梯度的方法和装置 |
CN104699658B (zh) * | 2013-12-03 | 2019-09-24 | 罗伯特·博世有限公司 | 用于求得基于数据的函数模型的梯度的方法和装置 |
WO2017162081A1 (zh) * | 2016-03-22 | 2017-09-28 | 中兴通讯股份有限公司 | 一种剪切板访问控制方法及系统、存储介质 |
CN107220555A (zh) * | 2016-03-22 | 2017-09-29 | 中兴通讯股份有限公司 | 一种剪切板访问控制方法及系统 |
CN106203167A (zh) * | 2016-07-08 | 2016-12-07 | 北京小米移动软件有限公司 | 应用权限管理方法及装置 |
CN106203167B (zh) * | 2016-07-08 | 2019-05-07 | 北京小米移动软件有限公司 | 应用权限管理方法及装置 |
CN109416652A (zh) * | 2016-08-19 | 2019-03-01 | 华为技术有限公司 | 应用数据的共享方法、装置和终端设备 |
CN106528081A (zh) * | 2016-09-26 | 2017-03-22 | 北京小米移动软件有限公司 | 操作执行方法及装置 |
CN109543402A (zh) * | 2018-11-06 | 2019-03-29 | 北京指掌易科技有限公司 | 一种基于Android应用的复制粘贴保护方法 |
Also Published As
Publication number | Publication date |
---|---|
JP2007065846A (ja) | 2007-03-15 |
JP4208085B2 (ja) | 2009-01-14 |
US20070050781A1 (en) | 2007-03-01 |
US7600231B2 (en) | 2009-10-06 |
CN100468343C (zh) | 2009-03-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1924814A (zh) | 应用程序的控制方法及装置 | |
US7337291B2 (en) | Software memory access control | |
US8645843B2 (en) | Supporting role-based access control in component-based software systems | |
CN1308832C (zh) | 防御恶意代码而对计算机程序和数据进行保护的方法和装置 | |
EP1946238B1 (en) | Operating system independent data management | |
CN102112990B (zh) | 为计算过程授予最小特权访问 | |
US7380267B2 (en) | Policy setting support tool | |
JP4473256B2 (ja) | アプリケーションプログラムによるリソースアクセスを制御するための情報処理装置、方法、及びプログラム | |
US20110023007A1 (en) | Associating Workflows With Code Sections In A Document Control System | |
GB2398134A (en) | Applying a data handing policy to predetermined system calls | |
US7150018B2 (en) | Method and system for deterministic ordering of software modules | |
CN100419620C (zh) | 一种usb海量存储设备上应用程序与usb海量存储设备进行命令交互和双向数据传输的方法 | |
US10592470B2 (en) | Discovery of calling application for control of file hydration behavior | |
US8353014B2 (en) | Dynamic dual permissions-based data capturing and logging | |
US9158572B1 (en) | Method to automatically redirect SRB routines to a zIIP eligible enclave | |
JP2004158007A (ja) | コンピュータアクセス権限 | |
US9477518B1 (en) | Method to automatically redirect SRB routines to a zIIP eligible enclave | |
CN102663313B (zh) | 一种实现计算机系统信息安全的方法 | |
US7484239B1 (en) | Detecting heap and stack execution in the operating system using regions | |
US20070038572A1 (en) | Method, system and computer program for metering software usage | |
GB2515736A (en) | Controlling access to one or more datasets of an operating system in use | |
US11805125B2 (en) | Task based access rights control | |
KR102525655B1 (ko) | 문서 저장 제어 방법 | |
US8150984B2 (en) | Enhanced data security through file access control of processes in a data processing system | |
US8627068B1 (en) | Selecting access authorities |
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 | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20090311 Termination date: 20150830 |
|
EXPY | Termination of patent right or utility model |