Browse Prior Art Database

Shortening the Time for Loading a Program

IP.com Disclosure Number: IPCOM000116937D
Original Publication Date: 1995-Nov-01
Included in the Prior Art Database: 2005-Mar-31
Document File: 2 page(s) / 105K

Publishing Venue

IBM

Related People

Fujiwara, T: AUTHOR

Abstract

Disclosed is a method for shortening the time for loading a program. It is possible by making a private thread which loads the function in order before executing, when starting up a program. The method to load a private thread for loading is just to read access the loading address, which makes the mechanism of Operating System load the program by itself. (There are two methods to have a private thread for loading, either inside the application or inside the Operating System.) It is possible to make a private thread for loading from the mechanism which writes the function executed at starting up on a file by compiler's option.

This text was extracted from an ASCII text file.
This is the abbreviated version, containing approximately 52% of the total text.

Shortening the Time for Loading a Program

      Disclosed is a method for shortening the time for loading a
program.  It is possible by making a private thread which loads the
function in order before executing, when starting up a program.  The
method to load a private thread for loading is just to read access
the loading address, which makes the mechanism of Operating System
load the program by itself.  (There are two methods to have a private
thread for loading, either inside the application or inside the
Operating System.)  It is possible to make a private thread for
loading from the mechanism which writes the function executed at
starting up on a file by compiler's option.

      Fig. 1 shows the former mechanism of program loading.  (For
example, OS/2* V2 application.)  At (1), the loader reads executable
files from the hard disk and decides the whole address.  At (2), the
Operating System loads the first executing part from the hard disk,
on a memory decided at (1).  At this time, waiting time for disk
reading occurs.  At (3), the Operating System starts to execute the
loaded program.  At (4), hardware interruption occurs when the
program tries to execute or access the part excepting the part loaded
at (2) in the middle of execution, and then the control moves to the
loader.  At (5), the loader loads the part which has become necessary
at (4) from the hard disk, by using the information from (1).  Then,
waiting time for disk reading occurs.  At (6), the Operating System
returns to the point where hardware interruption occurred, and
continues to execute the loaded program.  At (7), above mentioned
(4), (5) and (6) are repeated.  (Some programs repeat over thousand
times.)  The above stated method is how the program starts up by
loading and executing alternately.  This method is called
'load-on-call', and it loads to the memory only necessary parts for
executing a program.  This merit is that it saves the memory and the
loading time as Operating System does not load unnecessary parts at
starting up.  However, as in Fig. 1, the actual condition of CPU
running rate is under 50% while loading.

      Fig. 2 shows the new method.  First of all, specify the former
'load-on-call' method, then by preparing a private thread for loading
as mentioned below, loading a program becomes possible before it
becomes necessary.  At (1), the loader reads executable files from
the hard disk and decides the whole address.  At (2), Operating
System loads the first memory decided at (1).  Then, waiting time for
disk reading occurs.  At (3), Operating System starts to execute the
loaded program.  Execute the private threa...