Remote initial program load

from Wikipedia, the free encyclopedia

Remote Initial Program Load (abbreviation: RIPL ; German: Fernes einleitendes Programmladen) - Describes the process of starting an operating system over the network from a server on which a RIPL service is activated, which is under the network operating systems LAN Manager , LAN Server , Windows NT Server and Novell Netware is supported.

IBM LAN Server

Using the 802.2 / DLC protocol, the IBM LAN server offers clients (so-called RIPL requesters) the option of loading the DOS or OS / 2 operating systems over the local network (usually Token Ring ).

The server monitors the local network and checks the requests from individual stations with the entries in the RPL.MAP assignment table.


During the startup phase of the DOS operating system, the problem usually arises that the RPL code (RPL = Remote Program Load) previously loaded via the network is in the conventional memory that has not yet been allocated (typically at the upper end), but must still not be overwritten , while the freshly loaded operating system has yet to set up its own administrative structures. Normally, the RPL code protects itself from being overwritten by the operating system by taking control of the BIOS function INT 12, which is called by DOS to determine the real-mode memory size available.

This brings with it various difficulties, especially on modern DOS systems, in which free memory areas in the adapter area or in the address space of the video RAM can be used for drivers and parts of the operating system in order to provide DOS applications with more free conventional memory.

These problems can be circumvented with various tricks, but the RPL code has to dig deep into the internals of the loaded operating system, which does not work properly in all cases, especially if other loaded drivers are also involved that use similar methods use.

To safeguard the process, DOS from MS-DOS / PC DOS 5.0 and DR DOS 6.0 checks the code of the INT-2F interrupt vector for the identifier "RPL" when it starts and calls it if necessary. the function INT 2F / AX = 4A06h to find out the true size of the available memory from the RPL code and to include it practically through the back door in the list of memory areas allocated by DOS and thus to encapsulate it from being accessed by others. However, the RPL code is still responsible for removing itself cleanly from the system at the end of the boot phase.

In addition to the RPL interface described above, DR DOS also supports an extended form of the method called RPLOADER, which offers more flexibility. If DR DOS detects the presence of an RPL code with the identifier "RPLOADER" (instead of just "RPL"), the DOS BIOS also sends special INT 2F / AX = 12FFh / BX = 0005h broadcasts after certain stages have been reached within the boot phase the RPL code, in order to give it the opportunity to relocate itself appropriately in the memory (in order not to reduce the memory that can later be used for DOS applications by the RPL code that is "in the way"), to latch itself deeper into the system or to carry out additional "clean-up work" or to remove yourself from the system. In addition to increasing compatibility, being able to handle certain actions via a defined interface and at defined times within the boot phase, avoiding a reduction and fragmentation of the memory and thus increasing the memory that can be used for applications and keeping the RPL code clean after the boot phase from the system, the interface can also be used to load DR DOS as a task under host operating systems such as Concurrent DOS.


Remote loading for DOS workstations via images was supported by the IBM LAN Server 1.2 as early as 1990 through the PCDOSRPL service. Since the LAN Server 2.0 (1992) it was also possible to use OS / 2 stations (from version 1.30.1).

See also


  • GG24-3671-00: IBM Personal System / 2 Advanced Server Planning Guide (IBM Redbook)

Web links

  • RPLD - Remote Boot Server