CN100350396C - 用于为***对象记录日志的方法和*** - Google Patents
用于为***对象记录日志的方法和*** Download PDFInfo
- Publication number
- CN100350396C CN100350396C CNB2003801032368A CN200380103236A CN100350396C CN 100350396 C CN100350396 C CN 100350396C CN B2003801032368 A CNB2003801032368 A CN B2003801032368A CN 200380103236 A CN200380103236 A CN 200380103236A CN 100350396 C CN100350396 C CN 100350396C
- Authority
- CN
- China
- Prior art keywords
- function
- program
- mute
- copy
- execution
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Lifetime
Links
- 238000000034 method Methods 0.000 title claims abstract description 61
- 230000006870 function Effects 0.000 claims abstract description 91
- 230000010076 replication Effects 0.000 claims abstract description 4
- 230000008859 change Effects 0.000 claims description 41
- 230000015572 biosynthetic process Effects 0.000 claims description 15
- 230000008569 process Effects 0.000 claims description 9
- 238000012545 processing Methods 0.000 claims description 6
- 238000013404 process transfer Methods 0.000 claims 1
- 238000012550 audit Methods 0.000 description 14
- 230000000694 effects Effects 0.000 description 6
- 238000012217 deletion Methods 0.000 description 4
- 230000037430 deletion Effects 0.000 description 4
- 238000004321 preservation Methods 0.000 description 4
- 230000026676 system process Effects 0.000 description 4
- 238000012544 monitoring process Methods 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000008901 benefit Effects 0.000 description 1
- 230000010485 coping Effects 0.000 description 1
- 230000002596 correlated effect Effects 0.000 description 1
- 230000002950 deficient Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/16—Protection against loss of memory contents
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1415—Saving, restoring, recovering or retrying at system level
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1471—Saving, restoring, recovering or retrying involving logging of persistent data for recovery
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/2053—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
- G06F11/2056—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant by mirroring
- G06F11/2071—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant by mirroring using a plurality of controllers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2201/00—Indexing scheme relating to error detection, to error correction, and to monitoring
- G06F2201/855—Details of asynchronous mirroring using a journal to transfer not-yet-mirrored changes
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
一种为***对象的改变记录日志的方法。用哑函数(6)替代***函数(12)。所述***函数(12)在哑函数(6)的操作下被执行(13)。生成(17)因执行***函数而改变的***对象(16)的副本用于记录日志(20)。然后完成哑函数(6)的执行。优选的是,所述***对象是OS/400***对象。所述***对象可以是程序对象、配置对象、队列和空间/存储器映射对象。可以把所述***对象的副本记入日志,用于复制到另一***上。还公开了用于为***对象的改变记录日志的***。
Description
技术领域
本发明涉及一种用于为***对象的创建、改变和删除记录日志的方法、***和软件。更具体地但非排他性地,本发明涉及方法、***和软件,用于为通用的OS/400***对象(包括程序对象、配置对象、队列和空间/存储器映射的对象)的改变记录日志,以便把这些改变复制在同一或者远程***上。
背景技术
IBM OS/400操作***通过集成的***函数提供了数据库变化的日志记录。该日志记录函数主要是用来登记数据库记录级的变化,用于***恢复、提交控制(即保证事务的边界)、审计以及支持对复制数据库(远程的或者本地的)改变的重放(replay)。数据库日志记录函数不支持其他***对象,如程序和配置对象。对这些其他***对象,维持一个独立的***审计日志(System Audit Journal)。可以把***对象的创建、删除和改变记录在该审计日志中,以便提供与这些对象相关的活动的审计。当考虑打算向远程或者本地提供这些对象的复制(副本)时,所述审计日志具有几个明显的缺点,列举如下:
1.只有在已经执行了相关联的对象活动之后,才保存所述审计日志条目并且供***上的其他进程利用。这没有办法“当其发生时”捕获所述对象活动。由于在通过某些监控进程获得相关审计日志条目之前,执行对象活动的进程很可能封锁和/或使用所述对象,因此这使得通过其他***进程对该对象做另外的处理变得十分困难。
2.所述审计日志条目是“全***范围的”——对整个***上的所有对象而言存在一个日志。这就要求任意的监控进程检索所有的日志条目,即使复制只需要小的子集。
3.所述审计日志条目没有包含足够的信息来以使得可以在另外的***上(或者本地副本)执行相关联的对象活动。这要求任意监控进程必须试图定位并且封锁相关联的对象,以便在所述对象上执行另一改变之前制作副本。如果副本无法由所述对象的准确状态来构成,那么该状态“丢失”,并且复制过程将不能向远程(或者本地复制)***提供正确的对象状态。
4.利用数据库日志(database journal)串行化审计日志条目的唯一方法是:试图使用日志条目时间戳来将审计日志条目与相关联的数据库日志条目归并。这在条目的复制处理中会产生明显的***开销。另外,当***具有多个处理器时,包含在独立日志中的时间戳未必正确地反映操作的确切顺序。
考虑到这些缺点,还没有可利用的十分安全的方法,可使用所述审计日志使***对象的改变与相关联的数据库改变同步。在获取***对象的内容和状态时所使用的数据库日志与用于获取实际数据库记录级改变的数据库日志相同,通过这种方法,可以确保数据库和对象的改变能够正确地复制到远程(或者本地副本)***。
由于OS/400***对象是使用标准(有限的)命令集来创建、改变和删除的,所以用于获得状态信息(或者制作对象副本)的最显而易见的方案是提供替换命令或者实现命令退出程序(exit program)。这两个方法都存在明显的缺点。
替换***命令的方法具有如下缺点:
1.相关联的OS/400命令处理程序的***命令参数接口可能(并且常常是)随OS/400的每个版本发布而改变。这将在复制软件和OS/400的给定版本之间产生明显的依赖性。
2.需要被替换的命令的数目和复杂性往往是很高的(超过150个命令、其中某些具有嵌套的参数表)。每个命令往往需要其自身的替换处理程序以及显著的工作量来确保每个参数被正确地处理(即,如同它被原始OS/400命令来处理)。
所述命令退出点程序的方法具有如下缺点:
1.在执行了命令之后,由OS/400提供的两个注册的退出点都不允许激活相关联的退出程序。因此,在对象创建、改变、删除命令的情况下,所述退出程序不能处理由此产生的对象。
2.QIBM_QCA_CHG_COMMAND退出点还根据可以注册的退出程序的数目来限制。如果其他软件使用所述退出点,这样就可以防止某些客户使用此退出点。
本发明的目的在于提供一种方法、***和软件,用于为***对象记录日志,以克服上述缺点或者至少为公众提供有用的选择。
发明内容
根据本发明的第一方面,提供一种用于为***对象的改变记录日志的方法,包括如下步骤:
i)用哑函数替代***函数;
ii)在所述哑函数的操作下执行所述***函数;
iii)生成由***函数的执行而改变的***对象的副本,用于记录日志;并且
iv)完成所述哑函数的执行。
所述哑函数可以通过具有复制的调用名称并且先占(pre-empting)***函数的执行来替代所述***函数。
退出点可以与所述哑函数相关联,并且可以为所述退出点注册退出程序,以便在所述哑函数操作期间可以执行退出程序。
所述退出程序可以处理***函数的执行,并且获取在此执行期间发生的***对象的改变。该改变的副本是通过退出程序生成的,并且可以被保存在盘上,或者直接被流送到数据库***以便记录日志。
作为选择,所述退出程序可用来检索***函数的命令串并且将其传回到所述哑函数。所述哑函数然后可以处理***函数的执行,并且获取在此执行期间所发生的***对象的改变。在这种情况下,所述改变的副本是通过哑函数生成的。
优选的是,所述哑函数包括替代命令以及替代命令处理程序。
可以把所述数据库***与复制***结合,并且可以将改变复制到其他本地或者远程数据库。
可以把通过所述***函数生成的消息或者异常获取到队列中。
所述哑函数可以通过把***函数生成的任意消息或者异常转发回调用该***函数的进程来完成执行。
所述***对象包括程序对象、配置对象、队列和空间/存储器映射对象。
***对象的改变包括***对象的创建、改变和删除。
优选的是,所述***函数是基于OS/400处理器的那些函数。
根据本发明的另一方面,提供了一种用于为***对象的改变记录日志的方法,包括如下步骤:
i)执行***函数,在此期间发生***对象的改变;以及
ii)在执行***函数期间为***对象的改变记录日志。
一种方法是,通过把日志记录命令结合到***函数的代码中,在执行***函数期间可以为***对象的改变记录日志。
另一种方法是,通过把退出点与***函数相关联,以便在执行***函数期间可以调用退出程序来为***对象记录日志,因此在执行***函数期间可以为***对象的改变记录日志。
根据本发明的又一方面,提供了一种用于为***对象的改变记录日志的***,包括:
i)处理器,适于执行替代***函数的哑函数,其中所述哑函数执行所述***函数并且生成因***函数的执行而产生的***对象的副本以便日志记录;以及
ii)存储器,在执行期间由所述处理器使用。
优选的是,所述处理器是AS/400处理器。
根据本发明的再一方面,提供一种用于实现本发明第一和第二方面的方法的软件。
附图说明
现在参照附图、通过举例来描述本发明,其中:
图1示出了与OS/400类(Class)对象有关的对象日志记录的说明。
图2示出了本发明的替换实施例的说明。
具体实施方式
如下的说明部分将描述在OS/400操作***下操作的***对象日志记录方法。应该理解,通过适当的修改,所述方法还可适用于其他***。
所述方法使用组合方式来获得所期望的结果;可以明显减少与采用任何单个方法相关的缺陷。
所述方法的步骤的概要如下:
i.把与对象改变相关联的每个OS/400命令精确复制到新的库中。
ii.把每个复制命令的命令处理程序改变为共同供应商提供的程序,它不需要处理任何命令参数(因此不受命令参数改变的影响)。
iii.在所述新库中为每个(复制)命令注册QIBM_QCA_RTV_COMMAND退出点程序。这意味着所述退出程序将在相关联的命令处理程序(即在步骤ii中说明的程序)之前被调用。
iv.把该新的命令库置于常规OS/400***库(QSYS)之上的***库搜索表中。这样使常规***用户和应用程序从所述新的库调用命令,而不是从它们在OS/400***库(QSYS)的对应物来调用命令。
v.所述退出点程序使用所传递的命令串利用原始OS/400命令(在所述OS/400***库中)来执行所指定的命令。然后,在执行了OS/400命令之后,所述退出点程序能够执行其自身的处理(获取对象的改变)。通过OS/400命令发送到退出点程序的任意消息存储在临时队列中,以便可以把它们“重新发送”给原始请求者(例如,提交该命令的用户和/或应用程序)。
vi.然后由OS/400调用替代的(复制)命令处理程序(当所述退出点程序已经完成)。共同的(替代)命令处理程序只是重新发送临时队列中包含的任意消息(在步骤v中放置在队列中的)。
在所述方法的可替换的实施例中,可以把步骤v和vi替换为:
v.所述退出点程序使用数据队列把所述命令串传递至替代(复制)命令处理程序。
vi.所述替代(复制)命令处理程序执行使用原始OS/400命令(在OS/400***库中)指定的命令。然后,在执行了OS/400命令之后,所述(替代)命令处理程序能够执行其自身的处理(获取对象的改变)。由所述OS/400命令发送至所述(替代)命令处理程序的任意消息被存储在临时队列中,并且“重新发送”至所述原始请求者。
所述方法消除了对用于每个所复制命令的传统替代命令处理程序的需要,而对每个命令使用单一的公共程序。使用所述命令的复制版本,挂接所述退出点程序,可以使所述退出点程序(或者替代实施例中的所述替代命令处理程序)控制实际***命令的处理——在创建/改变/删除相关的对象之前和之后执行复制活动。
参考图1描述本发明,其中在主***上为***对象记录日志,用于复制到远程日志,其中所述***对象的改变是由用户应用创建OS/400类对象,并且其中使用退出点程序控制实际***命令的处理。
所述用户应用1利用***库搜索表2来运行,在操作***命令库5(QSYS)之上设置3复制命令库4(MAXSYS)。
这使得未限定的CRTCLS(创建类描述)命令6绑定7至MAXSYS库版本4。
对CRTCLS命令的MAXSYS版本,所述复制程序MXIICARTET 8被注册为退出程序(使用***定义的QIBM_QCA_RTV_COMMAND退出点9)。这样使得MXIICARTET程序8在调用所述命令的命令处理程序11以前被调用10。按照用户应用的规定,退出点接口把全部命令串文本传递至所述退出程序8。
所述退出程序8执行任何所要求的预处理来确定是否为复制定义了相关联的对象。所指定命令12(在该情况下,是CRTCLS命令)的***版本由所述MXIICARTET程序8来执行13,并且由所述***命令生成14的任何消息被存储在临时队列15中。
由所述MXIICARTET程序把受影响的对象16(在此例子中是新的类描述)保存17至临时保存文件。
然后,把所述临时保存文件复制18到临时OS/400集成文件***(IFS)流文件19,将其记录到由相关联的复制配置使用的日志20中(例如与用于为复制定义的数据库文件相同的日志)。这样可以有效地把保存映象存储到所述日志中。
然后,为了复制,使用标准的OS/400远程日志支持来把生成的日志数据传输21至远程***(各***)。
然后,所述MXIICARTET程序把控制返回至其调用程序9(所述***退出点),然后调用22所述命令处理程序(用于所述MAXSYS库中的所述CRTCLS命令)。对于所述MAXSYS库中的每个命令来说,所述命令处理程序是MXCPPNULL 10。
所述MXCPPNULL程序10检索23存储在临时队列15中的消息(通过所述MXIICARTET程序),其由所述命令的标准***版本12生成,并且把它们发送24至用户应用1。这样使得用户应用1正确地处理所述消息,就好像它已经直接调用了所述命令的***版本一样。
参考图2描述本发明,其中,在主***上为***对象记录日志,用于复制到远程日志,其中所述***对象的改变是由用户应用对OS/400类对象的创建,并且其中替代命令处理程序用于控制实际***命令的处理。
所述用户应用25依照***库搜索表26来运行,在操作***命令库29(QSYS)之上设置27有复制命令库28(MAXSYS)。
这使得未限定的CRTCLS(创建类描述)命令30在运行时绑定31至所述命令的MAXSYS库版本28。
对于CRTCLS命令的MAXSYS版本来说,所述复制程序MXIICARTET 32被注册为退出程序(使用***定义的QIBM_QCA_RTV_COMMAND退出点33)。这样使得MXIICARTET程序32在调用所述命令的命令处理程序35以前将被调用34。按照用户应用的规定,所述退出点接口把全部命令串文本传递至所述退出程序32。
所述退出程序把全部的命令串通过数据队列36传递至所述命令处理程序(用于所述MAXSYS库中的所述CRTCLS命令)。对于所述MAXSYS库中的每个命令来说,所述命令处理程序是MXCPPNULL35。
然后,所述MXIICARTET程序32把控制返回至其调用程序33(所述***退出点),并且执行MXCPPNULL 35程序。
所述MXCPPNULL 35程序执行任何所要求的预处理来确定是否为复制定义了相关联的对象。从所述数据队列36中提取全部的命令串,并且所指定的命令37的***版本(在该情况下,是CRTCLS命令)由所述MXCPPNULL程序35来执行38,并且由所述***命令生成39的任何消息被存储在临时队列40中。
由所述MXCPPNULL程序35把受影响的对象41(在此例子中是新的类描述)保存42至临时保存文件。
然后,把所述临时保存文件复制43到临时OS/400集成文件***(IFS)流文件44,将其记录到由相关联的复制配置使用的日志45中(例如,与用于为复制定义的数据库文件相同的日志)。这样可以有效地把保存映象存储到所述日志中。
然后,为了复制,使用标准的OS/400远程日志支持来把生成的日志数据传输46至远程***(各***)。
所述MXCPPNULL程序35检索47存储在临时队列40中的消息,其由所述命令的标准***版本37生成,并且把它们发送48至用户应用25。这样使得用户应用25正确地处理所述消息,就好像它已经直接调用了所述命令的***版本一样。
定义
类(类描述):用于标识作业的运行属性的对象。
命令:用于请求所述***函数的语句。命令由用于识别所请求的函数的命令名缩写及其参数组成。
命令处理程序(CCP):处理命令的程序。该程序执行某些合法性检查并且处理所述命令以便执行所请求的函数。
退出程序(Exit Program):
1.用户编写的程序,在***函数的操作期间被给予控制。
2.从退出点向其传递控制的程序。
保存文件(Save File):在辅助存储器中分配的文件,可用于在磁盘(不要求软盘或者磁带)上存储所保存的数据。
***审计日志:由***使用的日志,用于记录所发生的与安全相关的事件。
虽然已经通过实施例的描述来举例说明了本发明,并且虽然已经非常详细地描述了实施例,但是申请人不想把所附权利要求书的范围限制或者以任何方式限定在这些细节上。可添加的优点和修改对于本领域技术人员是显而易见的。因此,在较宽方面,本发明不局限于所示出和描述的代表性设备、方法和示例的具体细节上。据此,在不偏离申请人的总体发明构思的精神或者范围的前提下,可以对这些细节做变更。
Claims (42)
1.一种用于为***对象的改变记录日志的方法,包括步骤:
i)用哑函数替代***函数;
ii)在所述哑函数的操作下执行所述***函数;
iii)生成因***函数的执行而改变的***对象的副本,用于记录日志;以及
iv)完成所述哑函数的执行。
2.如权利要求1所述的方法,其中所述哑函数通过具有复制的调用名并且先占所述***函数的执行来替代所述***函数。
3.如权利要求1所述的方法,其中,把退出点与所述哑函数相关联,并且为所述退出点注册退出程序。
4.如权利要求3所述的方法,其中在所述哑函数操作期间,执行所述退出程序。
5.如权利要求4所述的方法,其中所述***函数的执行是通过所述退出程序处理的。
6.如权利要求5所述的方法,其中通过所述退出程序来获取因执行所述***函数而改变的***对象。
7.如权利要求6所述的方法,其中所述退出程序生成由所述退出程序获取的***对象的副本。
8.如权利要求4所述的方法,其中所述***函数的执行是通过所述哑函数来处理的。
9.如权利要求8所述的方法,其中通过所述哑函数来获取因执行所述***函数而改变的***对象。
10.如权利要求9所述的方法,其中所述退出程序生成由所述哑函数获取的***对象的副本。
11.如权利要求1至10中任意一项所述的方法,其中把所述***对象的副本保存到磁盘中。
12.如权利要求1至10中任意一项所述的方法,其中,把所述***对象的副本流送到数据库***,用于记录日志。
13.如权利要求12所述的方法,其中把所述数据库***与复制***结合。
14.如权利要求13所述的方法,其中所述复制***把所述***对象的副本复制到一个或多个本地或者远程数据库。
15.如权利要求1至10中任意一项所述的方法,其中把通过所述***函数生成的消息或者异常获取到队列中。
16.如权利要求15所述的方法,其中,最初通过进程来调用所述***函数,并且通过所述哑函数把所述消息或者异常转送回所述进程。
17.如权利要求1至10中任意一项所述的方法,其中所述***对象是程序对象、配置对象、队列以及空间/存储器映射对象的集合中的一个或多个。
18.如权利要求1至10中任意一项所述的方法,其中所述改变的***对象是已经被创建、改变或者删除的那些***对象。
19.如权利要求1到10中任意一项所述的方法,其中***函数是OS/400***函数。
20.一种为***对象的改变记录日志的方法,包括步骤:
i)执行***函数,在此期间发生***对象的改变;并且
ii)在执行***函数期间为***对象的改变记录日志。
21.如权利要求20所述的方法,其中,通过把日志记录命令并入***函数的代码中,为***对象的改变记录日志。
22.如权利要求20所述的方法,其中,通过把退出点与所述***函数相关联并且在执行所述***函数期间调用退出程序,为***对象的改变记录日志。
23.一种用于为***对象的改变记录日志的***,包括:
i)处理器,适于执行用来替代***函数的哑函数,其中所述哑函数执行所述***函数并且生成因***函数执行而产生的***对象的副本,用于记录日志;以及
ii)存储器,在执行期间由所述处理器使用。
24.如权利要求23所述的***,其中所述哑函数通过具有复制调用名并且先占所述***函数的执行来替代所述***函数。
25.如权利要求23所述的***,其中把退出点与所述哑函数相关联并且为所述退出点注册退出程序。
26.如权利要求25所述的***,其中在所述哑函数的执行期间,执行所述退出程序。
27.如权利要求26所述的***,其中所述***函数的执行是通过所述退出程序处理的。
28.如权利要求27所述的***,其中通过所述退出程序来获取因执行所述***函数而改变的***对象。
29.如权利要求28所述的***,其中所述退出程序生成通过所述退出程序获取的***对象的副本。
30.如权利要求26所述的***,其中所述***函数的执行是通过所述哑程序处理的。
31.如权利要求30所述的***,其中通过所述哑程序来获取因执行所述***函数而改变的***对象。
32.如权利要求31所述的***,其中所述退出程序生成通过所述哑程序获取的***对象的副本。
33.如权利要求23至32中任意一项所述的***,其中所述***对象的副本被保存到磁盘中。
34.如权利要求23至32中任意一项所述的***,其中,所述***对象的副本被流送到数据库***,用于记录日志。
35.如权利要求34所述的***,其中所述数据库***与复制***结合。
36.如权利要求35所述的***,其中所述复制***把所述***对象的副本复制到一个或多个本地或者远程数据库。
37.如权利要求23至32中任意一项所述的***,其中把通过所述***函数生成的消息或者异常获取到队列中。
38.如权利要求37所述的***,其中,最初通过进程调用所述***函数,并且通过所述哑函数把所述消息或者异常转送回所述进程。
39.如权利要求23至32中任意一项所述的***,其中所述***对象是程序对象、配置对象、队列以及空间/存储器映射对象集合中的一个或多个。
40.如权利要求23至32中任意一项所述的***,其中所述改变的***对象是已经被创建、改变或者删除的那些***对象。
41.如权利要求23至32中任意一项所述的***,其中所述处理器是AS/400处理器。
42.如权利要求23至32中任意一项所述的***,其中所述处理器是在所述OS/400操作***下操作的。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
NZ521983 | 2002-10-14 | ||
NZ521983A NZ521983A (en) | 2002-10-14 | 2002-10-14 | Journaling changes to system objects such as programs in the IBM OS/400 operating system |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1739099A CN1739099A (zh) | 2006-02-22 |
CN100350396C true CN100350396C (zh) | 2007-11-21 |
Family
ID=32105745
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB2003801032368A Expired - Lifetime CN100350396C (zh) | 2002-10-14 | 2003-10-14 | 用于为***对象记录日志的方法和*** |
Country Status (14)
Country | Link |
---|---|
US (1) | US20060075002A1 (zh) |
EP (1) | EP1559019B1 (zh) |
JP (1) | JP2006503372A (zh) |
KR (1) | KR101091071B1 (zh) |
CN (1) | CN100350396C (zh) |
AU (1) | AU2003278631B2 (zh) |
CA (1) | CA2501928C (zh) |
DK (1) | DK1559019T3 (zh) |
ES (1) | ES2548087T3 (zh) |
HK (1) | HK1073370A1 (zh) |
IL (1) | IL168001A (zh) |
NZ (1) | NZ521983A (zh) |
WO (1) | WO2004036436A1 (zh) |
ZA (1) | ZA200502951B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090138562A1 (en) * | 2007-11-28 | 2009-05-28 | Loyal Technology Solutions, L.L.C. | Method and system for aggregation of electronic messages |
US8997047B2 (en) * | 2012-12-13 | 2015-03-31 | International Business Machines Corporation | Dynamically updating code without requiring processes to restart |
US9910676B1 (en) * | 2015-09-22 | 2018-03-06 | Microsemi Solutions (U.S.), Inc. | Hardware based XIP exit sequence to enable XIP mode operation on SPI boot interface |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0550372A2 (en) * | 1991-12-31 | 1993-07-07 | International Business Machines Corporation | A data dictionary manager for maintaining an active data dictionary |
EP0767435B1 (en) * | 1995-09-11 | 1999-03-24 | Sun Microsystems, Inc. | Transaction device driver technique for a journaling file system |
CN1312922A (zh) * | 1998-08-11 | 2001-09-12 | 艾利森电话股份有限公司 | 容错计算机*** |
CN1361489A (zh) * | 2000-12-28 | 2002-07-31 | 深圳市中兴通讯股份有限公司 | 一种日志信息的自动循环存储方法和*** |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5530855A (en) * | 1992-10-13 | 1996-06-25 | International Business Machines Corporation | Replicating a database by the sequential application of hierarchically sorted log records |
US5307498A (en) * | 1992-12-04 | 1994-04-26 | International Business Machines Corporation | Automated method for adding hooks to software |
EP0713183A3 (en) * | 1994-11-18 | 1996-10-02 | Microsoft Corp | Network-independent shadow files |
US5634127A (en) * | 1994-11-30 | 1997-05-27 | International Business Machines Corporation | Methods and apparatus for implementing a message driven processor in a client-server environment |
JPH11110194A (ja) * | 1997-10-06 | 1999-04-23 | Toshiba Corp | 外部ライブラリ関数との結合方法ならびに同方法がプログラムされ記録される記録媒体 |
JPH11331891A (ja) * | 1998-05-12 | 1999-11-30 | Fujitsu Ltd | 情報処理方法及び情報処理装置 |
JP2000181634A (ja) * | 1998-12-18 | 2000-06-30 | Nec Corp | ミラーリング装置 |
US6714951B2 (en) * | 2001-04-16 | 2004-03-30 | International Business Machines Corporation | Continuous journaling of objects within a hierarchical directory tree |
US6941322B2 (en) * | 2002-04-25 | 2005-09-06 | International Business Machines Corporation | Method for efficient recording and management of data changes to an object |
US6968349B2 (en) * | 2002-05-16 | 2005-11-22 | International Business Machines Corporation | Apparatus and method for validating a database record before applying journal data |
-
2002
- 2002-10-14 NZ NZ521983A patent/NZ521983A/en not_active IP Right Cessation
-
2003
- 2003-10-14 CA CA2501928A patent/CA2501928C/en not_active Expired - Lifetime
- 2003-10-14 JP JP2004545093A patent/JP2006503372A/ja active Pending
- 2003-10-14 KR KR1020057006455A patent/KR101091071B1/ko active IP Right Grant
- 2003-10-14 WO PCT/NZ2003/000228 patent/WO2004036436A1/en active Application Filing
- 2003-10-14 ES ES03770166.1T patent/ES2548087T3/es not_active Expired - Lifetime
- 2003-10-14 DK DK03770166.1T patent/DK1559019T3/en active
- 2003-10-14 EP EP03770166.1A patent/EP1559019B1/en not_active Expired - Lifetime
- 2003-10-14 US US10/531,260 patent/US20060075002A1/en not_active Abandoned
- 2003-10-14 CN CNB2003801032368A patent/CN100350396C/zh not_active Expired - Lifetime
- 2003-10-14 AU AU2003278631A patent/AU2003278631B2/en not_active Ceased
-
2005
- 2005-04-12 ZA ZA200502951A patent/ZA200502951B/en unknown
- 2005-04-13 IL IL168001A patent/IL168001A/en active IP Right Grant
- 2005-08-09 HK HK05106833.3A patent/HK1073370A1/zh not_active IP Right Cessation
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0550372A2 (en) * | 1991-12-31 | 1993-07-07 | International Business Machines Corporation | A data dictionary manager for maintaining an active data dictionary |
EP0767435B1 (en) * | 1995-09-11 | 1999-03-24 | Sun Microsystems, Inc. | Transaction device driver technique for a journaling file system |
CN1312922A (zh) * | 1998-08-11 | 2001-09-12 | 艾利森电话股份有限公司 | 容错计算机*** |
CN1361489A (zh) * | 2000-12-28 | 2002-07-31 | 深圳市中兴通讯股份有限公司 | 一种日志信息的自动循环存储方法和*** |
Also Published As
Publication number | Publication date |
---|---|
AU2003278631B2 (en) | 2009-10-08 |
CA2501928C (en) | 2012-11-13 |
KR20050070054A (ko) | 2005-07-05 |
US20060075002A1 (en) | 2006-04-06 |
EP1559019A1 (en) | 2005-08-03 |
WO2004036436A1 (en) | 2004-04-29 |
CN1739099A (zh) | 2006-02-22 |
EP1559019A4 (en) | 2006-11-02 |
ES2548087T3 (es) | 2015-10-13 |
EP1559019B1 (en) | 2015-07-15 |
IL168001A (en) | 2012-09-24 |
KR101091071B1 (ko) | 2011-12-08 |
ZA200502951B (en) | 2006-02-22 |
AU2003278631A1 (en) | 2004-05-04 |
HK1073370A1 (zh) | 2005-09-30 |
DK1559019T3 (en) | 2015-10-19 |
JP2006503372A (ja) | 2006-01-26 |
NZ521983A (en) | 2005-05-27 |
CA2501928A1 (en) | 2004-04-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1246776C (zh) | 用于管理网络文件***的方法 | |
CN1149480C (zh) | 文件存储装置 | |
US8595340B2 (en) | Method and system for managing digital content, including streaming media | |
US7849207B2 (en) | Method and system for managing digital content, including streaming media | |
US20070088764A1 (en) | Method and apparatus for synchronizing multimedia content with device which supports multi-server environment | |
CN1149474C (zh) | 路由事件管理器所定义的预订请求的方法 | |
US7945636B2 (en) | Providing a multi-tier enterprise level application | |
CN1894672A (zh) | 用于对存储区中的选定数据执行操作的方法和设备 | |
CN1629823A (zh) | 生成内容地址以指示即将写入存储***的数据单元的方法和设备 | |
Peek et al. | EnsemBlue: Integrating distributed storage and consumer electronics | |
CN1910555A (zh) | 地理分布式集群 | |
CN1809828A (zh) | 用于恢复数据库中单元的***和方法 | |
CN1735890A (zh) | 存储和检索在定义类型的数据库存储外的用户定义类型的字段的***和方法 | |
CN1525328A (zh) | 为复制文件管理多个文件状态的方法 | |
CN1856785A (zh) | 用于基于版本控制的触发器的***和方法 | |
CN1602479A (zh) | 动态远程数据镜像设备组 | |
CN104541251A (zh) | 在存储群集中的擦除编码和复制 | |
CN1551000A (zh) | 方便计算设备和多种媒体设备之间的通信的方法和*** | |
CN1764901A (zh) | 用于将计算机中的文件、目录和面向应用的文件的至少一个恢复成先前状态的设备 | |
CN1910556A (zh) | 具有远程数据镜像的集群数据库 | |
CN1218520C (zh) | 资料传送方法 | |
US20060173864A1 (en) | Systems and methods for reconciling image metadata | |
WO2012117433A1 (en) | Information apparatus | |
CN1303094A (zh) | 记录有数据结构的记录介质及记录/再现方法和设备 | |
CN1629817A (zh) | 复制设备、复制方法和块标识数据获取方法 |
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 | ||
CX01 | Expiry of patent term |
Granted publication date: 20071121 |
|
CX01 | Expiry of patent term |