VM Resident Executables update:
[dragonfly.git] / usr.sbin / resident / resident.8
1 .\" $DragonFly: src/usr.sbin/resident/resident.8,v 1.3 2004/06/03 16:28:15 hmp Exp $
2 .\"
3 .Dd May 21, 2003
4 .Dt RESIDENT 8
5 .Os
6 .Sh NAME
7 .Nm resident
8 .Nd Make a dynamic binary resident.
9 .Sh SYNOPSIS
10 .Nm
11 .Op Fl l
12 .Op Fl f
13 .Op Fl x Ar id
14 .Op Fl d
15 .Op Fl R
16 .Ar "program ..."
17 .Sh DESCRIPTION
18 The
19 .Nm
20 utility may be used to make a dynamic binary memory-resident.  This works
21 by running the binary just past its DLL mmap's and relocation and then
22 making a copy of its vmspace.  The copy is registered in the kernel and later
23 exec's of the program will cause a copy of the copy to be used.  When
24 ld-elf.so detects that it is running resident, it skips all initial library
25 loads (because they are already loaded).
26 .Pp
27 Care must be taken when using this program.  It is recommended that you
28 delete all resident registrations when updating the system shared libraries
29 and binaries.
30 .Pp
31 The following options are available:
32 .Bl -tag -width indent
33 .It Fl l
34 List binaries that are currently memory-resident.
35 .It Fl f
36 Force mode, even if the binary does not appear to be a dynamic binary.  This
37 way you can run resident through statically compiled wrappers.  The first
38 dynamic binary encountered in the exec chain will be operated on.
39 .It Fl x Ar id
40 Delete a registration by id.
41 .It Fl d
42 Delete a registration by program name.  If neither of the above two options
43 are specified a new registration is created.
44 .It Fl R
45 Delete all registrations in the kernel.
46 .El
47 .Sh SEE ALSO
48 .Xr ld 1 ,
49 .Xr ldd 1 ,
50 .Xr nm 1 ,
51 .Xr rtld 1
52 .Sh HISTORY