CN100451962C - 在基于磁盘的操作系统中自适应控制程序的装载 - Google Patents

在基于磁盘的操作系统中自适应控制程序的装载 Download PDF

Info

Publication number
CN100451962C
CN100451962C CNB2005100990106A CN200510099010A CN100451962C CN 100451962 C CN100451962 C CN 100451962C CN B2005100990106 A CNB2005100990106 A CN B2005100990106A CN 200510099010 A CN200510099010 A CN 200510099010A CN 100451962 C CN100451962 C CN 100451962C
Authority
CN
China
Prior art keywords
module
loading
program
disk
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.)
Expired - Fee Related
Application number
CNB2005100990106A
Other languages
English (en)
Other versions
CN1744044A (zh
Inventor
克里斯托弗·D.·丽森
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nokia of America Corp
Original Assignee
Lucent Technologies Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Lucent Technologies Inc filed Critical Lucent Technologies Inc
Publication of CN1744044A publication Critical patent/CN1744044A/zh
Application granted granted Critical
Publication of CN100451962C publication Critical patent/CN100451962C/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)
  • Debugging And Monitoring (AREA)

Abstract

一种控制使用基于磁盘的操作系统的计算机系统中的程序装载的实例性方法,而不是允许主流于操作系统内的内建的装载程序处理所述装载。所述方法将程序的装载分为一系列的模块,模块从磁盘装载随机存取存储器,其中每个模块有一个预定的目标时间间隔,在该时间间隔内将完成该模块的装载。计算机系统被释放以处理跟随在一个模块的装载完成之后以及后续模块的装载开始之前的其它任务,由此最小化对运行在计算机系统上的其它任务的处理的中断。

Description

在基于磁盘的操作系统中自适应控制程序的装载
技术领域
本发明通常涉及使用基于磁盘的计算机操作系统的计算机系统,以及更具体地定址存储在磁盘上的程序装载到计算机系统的存储器中。
背景技术
有多种不同的基于磁盘的操作系统用于计算机系统中。例如,微软的Windows XP和UNIX都是基于磁盘的操作系统,它们被大量的计算机系统所利用。其它基于磁盘的操作系统是在已不再生产的计算机系统中使用或利用。
图1示意了示例性的计算机系统10,它包括由如监视器14和键盘16等外围设备支持的计算机12。计算机12也通过已知的通信协议,如以太网或因特网协议的形式与外部网络18连接。计算机12包括一个或多个由只读存储器(ROM)22、随机存取存储器(RAM)24和硬盘26支持的微处理器20。这种计算机12能用于一个其中没有硬盘26的配置中,硬盘26由通过以太网18访问且由远程服务器或计算机27辅助下的磁盘25所代替。输入/输出(I/O)接口28支持微处理器20和外部环境之间的通信。ROM 22包含永久性指令,例如在微处理器20初始引导启动时通常读取的指令。RAM 24支持各种由微处理器20在大量程序和任务的执行期间所利用的可操作码和数据。硬盘驱动器26提供各种程序和数据的永久性存储,并典型地提供通常超出RAM 24存储容量的大容量存储。在初始引导启动的期间,基本指令典型地从ROM 22和硬盘中取出,促使处理器20把存储在硬盘26中的程序和数据装载到RAM 24中,在此上述程序被微处理器20执行。
图2是一个示例性的流程图,示意了利用基于磁盘的UNIX操作系统的微处理器典型地是如何处理服务请求,例如,请求装载存储在硬盘上的程序。在步骤30中,微处理器接收到可能由系统调用或中断发起的服务请求。在步骤32判断请求是否需要实时处理。由步骤32所做否定判断的结果是请求被授予时间片(或者是相当于预定周期数的时间)以继续进行与步骤34中的请求有关的任务。在步骤36,判断时间片是否已经过去或任务是否已经完成。由步骤36所做的否定判断的结果是处理返回到步骤36的开始。由步骤36所做出的肯定判断的结果是在步骤38终止当前的处理。在步骤40中,微处理器被释放以转到下一个请求。如果在步骤36中所做的肯定判断是由已经完成的任务引起的,则已经满足有关的服务请求并且不再需要与本次已完成任务有关的进一步处理请求,因此将不会有附加或追加的请求放入到队列中而导致微处理器的附加处理。如果由于时间片已经过去导致步骤36步的肯定判断,那么与请求有关的任务就还没有完成,追加的请求会放入到队列中以便当所追加的请求到达微处理器时由微处理器遵照处理。这允许需要比该时间片更长时间的任务连同其它需要被微处理器执行的任务和操作一起以时间分隔的方式完成。
由步骤32所做的肯定判断表明需要相关任务的实时处理。根据实时处理的要求,实时任务的处理开始于如步骤42的指示。在步骤44判断任务是否已完成。步骤44步所做的否定判断的结果是处理继续回到该步骤的开始,也就是说,继续任务的处理。步骤44所做的肯定判断表明任务已经完成,微处理器从如步骤40所指明的这个任务的处理中释放。由于微处理器继续执行实时处理请求直到其完成为止,这意味着微处理器处理的其它请求和任务被延迟了为结束当前运行的实时任务的处理所需要的时间间隔。
关于图2说明的在基于磁盘的操作系统计算机环境中的某些实时任务的处理会引发困难,特别是在其它时间关键性请求或任务正在等待被启动或进一步处理的地方。例如,从磁盘操作系统装载相当大小,例如10M字节,的新程序的实时请求可能需要相当数量的处理时间,例如几秒钟。既然其它程序和任务在该段时间内不能获得微处理器的处理,由于未能满足用于处理程序或任务的时间紧关键性要求,某些等待的程序或任务就会导致故障或失败。由此,存在防止任务过分独占微处理器的处理能力而损害其他的任务的需要,尤其是但不局限于从磁盘驱动器装载程序到RAM存储器中。
发明内容
本发明的目的在于最小化与这个问题有关的困难。
一种示例性的方法控制使用基于磁盘的操作系统的计算机中的程序装载,而不是允许驻留在操作系统中的内建装载程序处理装载。该方法把程序的装载分成一系列从磁盘装载到随机存储器的模块,其中每个模块都有预定的目标时间间隔,在该间隔内将完成模块的装载。计算机系统被释放以处理紧随在一个模块装载完成和后续模块的装载启动之前的其他任务,以便最小化对运行于计算机系统上的其它任务的处理的中断。
还提出了包括一个或多个计算机可读单向介质的示例性计算机系统和产品。
根据本发明,提供了一种用于控制使用基于磁盘的操作系统的计算机系统中的程序装载的方法,其中所述基于磁盘的操作系统包括内建的装载程序,以便控制存储于计算机系统的磁盘上的程序的装载,所述方法包括步骤:
监视至少将存储于所述磁盘上的某些程序装载到随机存取存储器(RAM)中的请求;
确定在由基于磁盘的操作系统的内建装载程序开始装载相关的某个程序之前,做出装载所述相关的某个程序的请求;
管理由第一装载程序执行的对于所述相关的某个程序的装载,所述第一装载程序管理所述装载,以便所述相关的某个程序以模块装载的形式装载,其中每个模块都有预定的目标时间间隔,在所述时间间隔内将完成所述模块的装载;
通过释放计算机系统来处理跟随在一个模块的装载完成之后、且在后续模块的装载开始之前的其它任务,所述第一装载程序管理所述模块的装载,由此最小化对于运行在所述计算机系统上的其它任务的处理的中断;
所述方法还包括基于确定已经做出至少装载某个程序的请求的所述请求监视步骤,从预装载库中装载所述第一装载程序的步骤,
其中所述基于磁盘的操作系统包括基于磁盘的UNIX操作系统,
所述装载第一装载程序的步骤包括:
生成系统初始化调用以从所述预装载库装载所述第一装载程序,并在所述内建装载程序运行之前运行所述第一装载程序。
根据本发明,还提供了一种使用基于磁盘的操作系统的计算机系统,其中所述基于磁盘的操作系统包括内建的装载程序,以便控制存储在计算机系统硬盘上的程序的装载,所述计算机系统包括:
用于监视至少将存储于所述磁盘上的某些程序装载到随机存取存储器(RAM)的请求的装置;
用于确定在基于磁盘的操作系统的内建装载程序开始装载相关的某个程序之前,做出装载所述相关的某个程序的请求的装置;
用于运行第一装载程序以便管理所述相关的某个程序的装载的装置,所述运行装置管理所述装载以便所述相关的某个程序以模块装载的形式装载,每个模块都有预定的目标时间间隔,在所述时间间隔内将完成所述模块的装载;
所述运行装置通过释放计算机系统的微处理器,处理跟随在一个模块的装载完成之后、且在后续模块的装载开始之前的其它任务,以管理所述模块的装载,由此最小化对于运行在所述计算机系统上的其它任务的处理的中断;
其中所述运行装置基于确定已经做出装载所述相关的某个程序的请求,从预装载库中装载所述第一装载程序,
其中所述基于磁盘的操作系统包括基于磁盘的UNIX操作系统,
其中所述计算机系统还包括用于生成系统初始化调用以从所述预装载库装载所述第一装载程序,并在所述内建装载程序运行之前运行所述第一装载程序的装置。
附图说明
图1示意了本领域中已知的示例性计算机系统;
图2示意了本领域中已知的服务于计算机系统中的请求的步骤的示例性流程图;
图3是根据本发明实施例用于确定门限时间的示例性方法的流程图;
图4是根据本发明用于控制微处理器完成所请求任务所占用的时间的另一个示例性方法的流程图;
图5是进一步示意了如图4中所示的实现步骤90的示例性步骤的实施例的流程图。
具体实施方式
下面将会描述用在具有如惠普和Solaris现有的基于磁盘的UNIX操作系统的计算机系统之上的本发明的示例性实施例。然而,应理解的是其它具有类似需求的带有基于磁盘的操作系统的其他计算机系统也能受益。该实施例特别但并不唯一适用于控制把存储在硬盘中的可执行程序装载到存储器中,其中不具备本实施例利益的操作系统通常会引起微处理器处理任务将整个程序连续、不间断地装载。根据本发明的该实施例,需要超出预定时间的从硬盘装载到存储器的可执行程序会自动装载为时间分离的模块,以便微处理器在模块的装载之间可以照顾到其它任务。当模块被装载后,优选自动调整装载到存储器中的页数以最大化在分配给装载每个模块的目标时间内所能装载的页数。
图3是根据本发明用于确定目标时间间隔(装载门限-LT)的示例性方法中的步骤流程图,该目标时间间隔将会分配给即将装载的程序的每个模块的装载。优选图3中的步骤在某个点从计算机系统启动脚本中的一个调用开始执行,其中计算机系统在进入执行多个任务(多用户模式)的模式之前每次只执行1个任务(单用户模式)。在步骤50中,变量N设为1。在步骤52中,测量墙时钟时间并保存为T1。这里所使用的“墙时钟时间”指的是对最好具有高精度的运行年时钟所测量的时间。该时间可基于时、分、秒等的传统时间测量表示,或者以以数字表示的即时时间表示。在步骤54,微处理器促使通过应用页故障从磁盘驱动器读取的25页装载并锁定到RAM存储器。在该示意性例子中,工作根据页命名,其中典型的页大小大约是8192或者65536字节。信息在页的基础上被读出和装载。根据本实施例的目的促使页从磁盘读入存储器在下文参考作为应用页故障。只需要请求操作系统在包含于页中的存储器地址读取一个字节。这种读致使存储器中整个页的页故障(默认的操作系统动作,其中操作系统将包含在页中的所有字节从磁盘转移到存储器)。操作系统使用为可执行程序的执行实例建立的存储器映射,以了解相对于存储器中字节的位置字节在磁盘上的位置。在此所使用的在存储器中“锁定”页面意味着防止装载页面的信息从存储器交换回硬盘中。在步骤56中,再次测量墙时钟时间并保存为T2。在步骤58中,将T1和T2之间的流逝时间存入存储器。该流逝时间表示了把25页从硬盘访问、装载和锁定到RAM存储器所需要的累计时间。如果装载到本地计算机系统RAM存储器中的信息位于硬盘驱动器或者外部网络的其他数据存储设备上,那么在计算机系统和外部网络中的数据存储设备之间通信链路中的延迟就包含在所测量的流逝时间内。
在步骤60,判断N是否小于100。步骤60做出的肯定判断的结果是在步骤62中N的增加,即:N=N+1。控制然后就返回到步骤52的输入,在那里会测量另一个流逝时间。步骤60所做的否定判断表示已经做了100次的流逝时间测量,并导致在步骤64中平均所存储的流逝时间测量,结果是计算了平均流逝时间。优选这个平均流逝时间乘以1.5或其它某个线性比例(当计算机系统只运行一个任务时,优选计算这个流逝时间。当计算机系统随后运行多个任务时,一些附加的开销必须考虑到门限中)。在步骤66,存储装载门限(LT)时间间隔并且基于乘以线性比例的平均流逝时间。依赖于特定的应用和计算环境,所选择的LT时间间隔应该是可接受、不可中断的处理间隔。通过图3计算的实际的LT时间间隔是基于平均流逝时间以及附属微处理器的速度因素、存储器等待时间,以及磁盘等待时间。应该理解,也可利用除25页和100个流逝时间测量以外的其它存储器数量。可有利地选取所利用的特定存储器数量和测量流逝时间的次数以更好地反映各种计算机系统的不同能力。
图3中描述的另一个可选方法将手动选择时间间隔并把所选择的时间间隔手动存储到存储器单元或系统可访问的变量中。然而,这种目标时间间隔的手工推导不能从实际使用的系统的测试中受益,因此也许不能准确地计算出计算机系统经历的时间延迟。能够指定必须完成某项任务的最大时间间隔的系统/程序需求会忽略所计算的LT值。LT值最好不超过所需最大时间间隔的50%。在这种情况下,可能期望手动选择间隔。
图4是用于控制微处理器完成所请求任务所占用的时间的示例性方法的流程图。为了更有效地控制以一系列模块装载的可执行程序从硬盘装载到RAM存储器,该示例性方法在嵌入到基于磁盘的操作系统中的正常装载控制函数之前有效地插入了一个装载控制函数。在该示意的例子中,操作系统是基于磁盘的UNIX操作系统,该操作系统不受益于本示例性实施例,但会通过促使可执行程序连续、不可中断地装载直到整个可执行程序装载对实时环境中的可执行程序装载请求起反应。
步骤80表示正在处理大量任务的微处理器。在步骤82,监视新的任务请求,即,检测到了提交到微处理器以启动如装载可执行程序的新任务的请求的出现。例如,这可能包括监视与基于磁盘的UNIX操作系统中的可执行程序的装载有关的特定类型的系统调用。通过在初始调用静态构造器之前立即插入UNIX初始调用就能最好地实现本发明。本发明还可基于命令插入以映射有时称作处理启动装载的映射或随后的动态创建或大存储区映射的新的存储器范围。在步骤84判断是否已做出新的任务请求。步骤84所做出的否定判断导致处理返回到步骤82的开始。步骤84所做出的肯定判断意味着已经请求了一个新的任务并导致在步骤86判断任务类型是否需要装载管理。例如,在实时环境中的可执行程序的装载请求是一种需要装载管理的请求类型。同样,装载某个非实时可执行程序的请求也可能需要装载管理,其中这样的程序有大存储器覆盖区并且从通过图1所示的外部访问的远程磁盘中装载,即在计算机27的帮助下通过网络18从磁盘25中装载。尽管来自非实时可执行的请求运行在非实时环境,通过硬件中断执行的由这种请求引起的低级别任务(即将数据从磁盘转换到存储器)将会延迟,甚至于是实时任务。步骤86的否定的判断导致步骤88致使为响应该请求使用标准操作系统装载程序。该处理然后返回到步骤82的开始以等待新的任务被请求。
步骤86中的肯定判断指出已经被请求的任务需要装载管理。这导致在步骤90装载预装载库以及包含在装载管理程序中的相关装载管理函数。步骤90在图5中有相当详细的讨论。在步骤92判断新任务(可执行程序)的装载是否完成。步骤92的否定判断导致控制运行到步骤90以继续装载的管理。步骤92的肯定判断导致处理继续到步骤82的输入。
图5是示出了图4的实现执行步骤90的示例性步骤的流程图。在步骤100,例如通过使用UNIX命令“LD_PRELOAD_LIBRARY”装载了预装载库。该行为发生在请求执行的开始处以运行可执行程序。在可执行程序开始运行后,该可执行实例即是通常所说的进程。当程序开始运行时图5的进程将其自身插入。UNIX操作系统仅把可执行程序的一小部分装载存储器。当程序需要附加的程序块时它们将会被装载。当需要每一个附加的程序块时,程序会延迟直到从磁盘中读出这些块。在可执行程序的初始化块从硬盘装载到RAM存储器之前本发明将其自身插入到可执行进程的启动之中。
在步骤102中,为了获得从其可执行程序可被装载或映射到存储器中的存储器(页)的映射,读取了与正在启动的可执行程序有关的程序存储器映射。提供这个存储器映射信息作为UNIX操作系统操作性的一部分。确定了装载将要开始的页(映射内的最低存储器地址范围)。在启动第一设置页(第一模块)的初始化期间,还提供了信息装载将要开始的页的地址作为存储器映射信息的一部分。UNIX进程存储器映射包含了一个表,其中每一行都示出了起始存储器地址、存储器数量以及识别装载在这个位置的程序模块的类型的标记。在步骤104,在可执行程序初始装载到RAM存储器时设置变量P为默认值,例如100页。在步骤106,读取墙时钟并将其存储为T5。在步骤108,信息的“P”页是来自硬盘故障应用页,致使它们被存储在RAM存储器中从存储器映射读出的存储器地址处,并且被锁定。在步骤110判断是否装载了整个可执行程序,即整个存储器组映射的地址范围。步骤110的肯定判断导致如结束步骤112所指示的处理的终止。
步骤110的否定判断导致读取作为变量T6存储的墙时钟。在步骤116,根据LT-(T6-T5)计算页容量,其中LT是目标装载门限时间间隔,而(T6-T5)表示应用页故障以及把P页锁定到RAM存储器所需的时间间隔。这通常是用来指这两种时间间隔的比较并且不限于所显示的特定数学表达式。如果当表示从处理页数P的时间的LT减去这两个时间间隔之间的差为一个正数的话,那么执行计算以确定为了将来的重复操作将增加到P的页Q的数量。例如,使用线形插值的方法可以计算出Q。正数Q值指明了附加页能够在LT期间处理。例如如果(T6-T5)小于LT,那么创建一个Q值,并设置为P的10%。然后,步骤116设置P等于一个新值:P+Q,其中将被处理的页P的该新值被存储以在下一附属的可执行程序的装载重复操作(下一模块)期间使用。如果LT-(T6-T5)是一个负数,对页的处理有必要暂停一段时间S。例如可设置S等于(LT-(T6-T5))*5的绝对值。被“暂停”意味着使用操作系统所提供的如睡眠这样的调用。这意味着建立一个持续时间为S的定时器并进入操作系统的定时器队列。然后,程序自发让出微处理器并停止运行。当让出了微处理器,计算机系统就可以自由运行任何自己的其它多个任务。当定时器到期时,程序又重新开始运行。在步骤118,最后被处理的页的特性存入到存储器中,并且在辅助确定在发布睡眠之前将被处理的下一页的过程中的下一个重复操作期间由步骤102使用。步骤120判断S是否大于0,即暂停是否被执行。步骤120的否定判断引起处理返回到步骤102以处理更多的模块。步骤120的肯定判断导致在步骤122中发出睡眠(暂停)指令。在微处理器工作于其它任务的睡眠间隔之后,处理在步骤102重新开始以处理更多的模块。
尽管本发明的实施例已在上文描述并在附图中示意,本领域的技术人员在不偏离本发明的精神的情况下也可以做各种改变、添加和删除。例如,已经知道有不同于墙时钟时间测量的技术用于确定时间间隔。希望为诸如其中将装载特别大的程序或者其中正在处理的其它任务的非实时程序装载请求使用所述附属模块化程序装载技术,所述其它任务能限制重新开始该处理之前能够消逝的最大时间。RAM意指包括微处理器能够直接从中执行程序的所有类型的存储器。硬盘和磁盘包括其中在微处理器能够执行之前信息必须首先转换到RAM中的所有信息存储形式。尽管示意性实施例是在使用基于UNIX磁盘的操作系统的计算机系统中被解释的,本领域的技术人员应理解的是基于其它磁盘的操作系统也能获益。本发明的范围由下面的权利要求书定义。

Claims (8)

1、一种用于控制使用基于磁盘的操作系统的计算机系统中的程序装载的方法,其中所述基于磁盘的操作系统包括内建的装载程序,以便控制存储于计算机系统的磁盘上的程序的装载,所述方法包括步骤:
监视至少将存储于所述磁盘上的某些程序装载到随机存取存储器RAM中的请求;
确定在由基于磁盘的操作系统的内建装载程序开始装载相关的某个程序之前,做出装载所述相关的某个程序的请求;
管理由第一装载程序执行的对于所述相关的某个程序的装载,所述第一装载程序管理所述装载,以便所述相关的某个程序以模块装载的形式装载,其中每个模块都有预定的目标时间间隔,在所述时间间隔内将完成所述模块的装载;
通过释放计算机系统来处理跟随在一个模块的装载完成之后、且在后续模块的装载开始之前的其它任务,所述第一装载程序管理所述模块的装载,由此最小化对于运行在所述计算机系统上的其它任务的处理的中断;
所述方法还包括基于确定已经做出至少装载某个程序的请求的所述请求监视步骤,从预装载库中装载所述第一装载程序的步骤,
其中所述基于磁盘的操作系统包括基于磁盘的UNIX操作系统,
所述装载第一装载程序的步骤包括:
生成系统初始化调用以从所述预装载库装载所述第一装载程序,并在所述内建装载程序运行之前运行所述第一装载程序。
2、根据权利要求1的方法,其中所述确定请求已做出的步骤包括:
监视至少一个用于处理服务的第一预定系统调用。
3.根据权利要求1的方法,其中所述对于以模块形式的相关的某个程序的装载的管理包括:
读取与所述将被装载的某个程序相关的存储器映射,所述存储器映射包括将被装载到RAM存储器中的某个程序的程序段的映射,其中所述映射还识别每一程序段所需的RAM存储器数量,其中所述基于磁盘的操作系统包含基于磁盘的UNIX操作系统。
4、根据权利要求1的方法,还包括运行一系列测试的步骤,其中读取存储在所述磁盘上的信息,并且将所述信息写入到RAM存储器中,并且测量运行每个测试所需要的时间,
所述预定的目标时间间隔基于运行所述测试所需要的测量时间,由此为了获得与所述读取和写入信息相关的实际时间,在所述计算机系统上运行读取和写入信息的实际测试。
5、一种使用基于磁盘的操作系统的计算机系统,其中所述基于磁盘的操作系统包括内建的装载程序,以便控制存储在计算机系统硬盘上的程序的装载,所述计算机系统包括:
用于监视至少将存储于所述磁盘上的某些程序装载到随机存取存储器RAM的请求的装置;
用于确定在基于磁盘的操作系统的内建装载程序开始装载相关的某个程序之前,做出装载所述相关的某个程序的请求的装置;
用于运行第一装载程序以便管理所述相关的某个程序的装载的装置,所述运行装置管理所述装载以便所述相关的某个程序以模块装载的形式装载,每个模块都有预定的目标时间间隔,在所述时间间隔内将完成所述模块的装载;
所述运行装置通过释放计算机系统的微处理器,处理跟随在一个模块的装载完成之后、且在后续模块的装载开始之前的其它任务,以管理所述模块的装载,由此最小化对于运行在所述计算机系统上的其它任务的处理的中断;
其中所述运行装置基于确定已经做出装载所述相关的某个程序的请求,从预装载库中装载所述第一装载程序,
其中所述基于磁盘的操作系统包括基于磁盘的UNIX操作系统,
其中所述计算机系统还包括用于生成系统初始化调用以从所述预装载库装载所述第一装载程序,并在所述内建装载程序运行之前运行所述第一装载程序的装置。
6.根据权利要求5的计算机系统,其中所述运行装置读取与将要被装载的所述某个程序相关的首标信息,所述首标信息包括将被装载到RAM存储器中的所述某个程序的程序段的映射,所述映射还识别每个程序段所需的RAM存储器数量,其中所述基于磁盘的操作系统包含基于磁盘的UNIX操作系统。
7、根据权利要求5的计算机系统,还包括:
用于在每个模块装载开始之前读取第一时钟时间的装置;
用于读取每个模块装载完成之后的第二时钟时间的装置;
用于基于所述第一和第二时钟时间之间的差值,为每个模块确定模块装载的时间间隔的装置;
用于比较与每个模块的装载相关的模块装载的时间间隔和所述预定目标时间间隔的装置;以及
用于确定下一个要装载的模块的大小的装置,其中所述大小是作为所述下一个模块所需要的RAM存储器数量而测量的,所述确定装置用于基于预先确定的模块装载的时间间隔与所述预定目标时间间隔的比较确定所述大小,所述确定装置用于基于先前模块的大小确定当前模块的大小,并且基于所述先前模块的模块装载的时间间隔与所述预定目标时间间隔之间差值的插值,增大或减小所述先前模块的大小。
8、根据权利要求5的计算机系统,还包括用于运行一系列测试的装置,其中读取存储在所述磁盘上的信息,并且将所述信息写入到RAM存储器中,以及用于测量运行每一个测试所需要的时间的装置,所述预定义的目标时间间隔基于运行所述测试所需要的测量时间,由此为了获得与所述读取和写入信息相关的实际时间,在所述计算机系统上运行读取和写入信息的实际测试。
CNB2005100990106A 2004-08-31 2005-08-31 在基于磁盘的操作系统中自适应控制程序的装载 Expired - Fee Related CN100451962C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/930,286 US7555612B2 (en) 2004-08-31 2004-08-31 Adaptive control of loading a program in a disk-based operating system
US10/930,286 2004-08-31

Publications (2)

Publication Number Publication Date
CN1744044A CN1744044A (zh) 2006-03-08
CN100451962C true CN100451962C (zh) 2009-01-14

Family

ID=36035557

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2005100990106A Expired - Fee Related CN100451962C (zh) 2004-08-31 2005-08-31 在基于磁盘的操作系统中自适应控制程序的装载

Country Status (2)

Country Link
US (1) US7555612B2 (zh)
CN (1) CN100451962C (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9477570B2 (en) * 2008-08-26 2016-10-25 Red Hat, Inc. Monitoring software provisioning
CN114876820B (zh) * 2022-04-10 2024-05-03 安徽卧龙泵阀股份有限公司 基于化工泵远程控制系统及方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5948101A (en) * 1996-12-02 1999-09-07 The Foxboro Company Methods and systems for booting a computer in a distributed computing system
CN1467631A (zh) * 2002-07-08 2004-01-14 华为技术有限公司 一种程序动态加载方法
CN1474269A (zh) * 2002-08-08 2004-02-11 力捷电脑股份有限公司 程序模块加载系统的方法
US20040088697A1 (en) * 2002-10-31 2004-05-06 Schwartz Jeffrey D. Software loading system and method

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7827215B2 (en) * 2004-08-31 2010-11-02 Alcatel-Lucent Usa Inc. Real-time operation by a diskless client computer

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5948101A (en) * 1996-12-02 1999-09-07 The Foxboro Company Methods and systems for booting a computer in a distributed computing system
CN1467631A (zh) * 2002-07-08 2004-01-14 华为技术有限公司 一种程序动态加载方法
CN1474269A (zh) * 2002-08-08 2004-02-11 力捷电脑股份有限公司 程序模块加载系统的方法
US20040088697A1 (en) * 2002-10-31 2004-05-06 Schwartz Jeffrey D. Software loading system and method

Also Published As

Publication number Publication date
US7555612B2 (en) 2009-06-30
US20060059493A1 (en) 2006-03-16
CN1744044A (zh) 2006-03-08

Similar Documents

Publication Publication Date Title
US8606919B2 (en) Resource management tool
US7475217B2 (en) Method of managing storage capacity in storage system, a storage device and a computer system
US9501463B2 (en) Spreadsheet cell-based notifications
CN106407190A (zh) 一种事件记录查询方法及装置
JP2004171249A (ja) データベースのバックアップ実行判断方法
EP3605422A1 (en) Transaction control device, transaction control method
CN104516786A (zh) 信息处理装置、故障避免方法和程序存储介质
CN114564284B (zh) 虚拟机的数据备份方法、计算机设备及存储介质
CN111752822A (zh) 一种容器化压测调度方法、计算机设备及可读存储介质
CN106293805A (zh) 程序加载的方法及装置
CN100451962C (zh) 在基于磁盘的操作系统中自适应控制程序的装载
US7827215B2 (en) Real-time operation by a diskless client computer
JP6229733B2 (ja) 情報処理装置、方法、プログラム及び記録媒体
CN114048465B (zh) 一种堆栈状态检测方法、装置、设备及存储介质
CN110990219B (zh) 一种基于预测模型的计算机监控方法
US11368320B2 (en) Mining machine and method for limiting computing power
CN112162963A (zh) 一种数据同步方法、装置、计算机设备及存储介质
CN112181853A (zh) 程序调试方法、装置及系统
CN112559568A (zh) 一种虚拟物品确定方法、装置及计算机可读存储介质
CN112162964B (zh) 一种自适应数据同步方法、装置、计算机设备及存储介质
JP2003271387A (ja) ダウンロード方法、ダウンロードシステム
JP2005339287A (ja) プログラム実行システム、中央装置、プログラム実行方法及びコンピュータプログラム
CN116400871B (zh) 碎片整理方法、装置、存储介质及电子设备
JP6855861B2 (ja) 仮想時刻配信システム、仮想時刻配信装置、仮想時刻配信方法、及びプログラム
CN116431387A (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
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20090114

Termination date: 20160831

CF01 Termination of patent right due to non-payment of annual fee