Chain loading
Encyclopedia
|
| Tutorials | Encyclopedia | Dictionary | Directory |
|
![]()
Chain loading
Chain loading is a method used by computer programs to replace the currently executing program with a new program, using a common data area (a so-called core common area) to pass information from the current program to the new program. It occurs in several areas of computing. Chain loading is similar to the use of overlays. Like the use of overlays, the use of chain loading increases the I/O load of an application. Unlike overlays, however, chain loading replaces the currently executing program in its entirety. Overlays usually replace only a portion of the running program.
Chain loading in boot manager programsIn operating system boot manager programs, chain loading is used to pass control from the boot manager to a boot sector. The target boot sector is loaded in from disk, replacing the boot sector from which the boot manager itself was bootstrapped, and executed.. Chain loading in UnixIn Unix (and in Unix-like operating systems), the exec() system call is used to perform chain loading. The program image of the current process is replaced with an entirely new image, and the current thread begins execution of that image. The common data area comprises data such as the process' environment variables, which are preserved across the system call. Chain loading is extensively used in toolsets written by Daniel J. Bernstein, for example. Programs such as Bernstein's This idea is often referred to as Bernstein chaining, but the fundamental technique is as old as the Chain loading in BASIC programsIn BASIC programs, chain loading is the purview of the Chain loading is used in BASIC programs in order to permit the execution of more program code than could fit in the working memory available for program and variable storage. Applications written in BASIC could thus be far larger than the size of working memory, by comprising a set of cooperating programs written to References
Source: Wikipedia | The above article is available under the GNU FDL. | Edit this article
|
|
top
©2008-2009 TutorGig.com. All Rights Reserved. Privacy Statement