xref: /dragonfly/usr.sbin/resident/resident.8 (revision 7ea5cb81)
1*7ea5cb81SHiten Pandya.\" $DragonFly: src/usr.sbin/resident/resident.8,v 1.4 2004/06/03 16:37:05 hmp Exp $
233a8b578SMatthew Dillon.\"
333a8b578SMatthew Dillon.Dd May 21, 2003
48ca15ec8SMatthew Dillon.Dt RESIDENT 8
533a8b578SMatthew Dillon.Os
633a8b578SMatthew Dillon.Sh NAME
733a8b578SMatthew Dillon.Nm resident
833a8b578SMatthew Dillon.Nd Make a dynamic binary resident.
933a8b578SMatthew Dillon.Sh SYNOPSIS
1033a8b578SMatthew Dillon.Nm
1159e2aa11SHiten Pandya.Op Fl l
128ca15ec8SMatthew Dillon.Op Fl f
138ca15ec8SMatthew Dillon.Op Fl x Ar id
148ca15ec8SMatthew Dillon.Op Fl d
158ca15ec8SMatthew Dillon.Op Fl R
1659e2aa11SHiten Pandya.Ar "program ..."
1733a8b578SMatthew Dillon.Sh DESCRIPTION
188ca15ec8SMatthew DillonThe
198ca15ec8SMatthew Dillon.Nm
20*7ea5cb81SHiten Pandyautility may be used to make a dynamic binary memory-resident.
21*7ea5cb81SHiten PandyaThis works
228ca15ec8SMatthew Dillonby running the binary just past its DLL mmap's and relocation and then
23*7ea5cb81SHiten Pandyamaking a copy of its vmspace.
24*7ea5cb81SHiten PandyaThe copy is registered in the kernel and later
25*7ea5cb81SHiten Pandyaexec's of the program will cause a copy of the copy to be used.
26*7ea5cb81SHiten PandyaWhen
27*7ea5cb81SHiten Pandya.Pa ld-elf.so
28*7ea5cb81SHiten Pandyadetects that it is running resident, it skips all initial library
298ca15ec8SMatthew Dillonloads (because they are already loaded).
308ca15ec8SMatthew Dillon.Pp
31*7ea5cb81SHiten PandyaCare must be taken when using this program.
32*7ea5cb81SHiten PandyaIt is recommended that you
338ca15ec8SMatthew Dillondelete all resident registrations when updating the system shared libraries
348ca15ec8SMatthew Dillonand binaries.
358ca15ec8SMatthew Dillon.Pp
368ca15ec8SMatthew DillonThe following options are available:
378ca15ec8SMatthew Dillon.Bl -tag -width indent
3859e2aa11SHiten Pandya.It Fl l
3959e2aa11SHiten PandyaList binaries that are currently memory-resident.
408ca15ec8SMatthew Dillon.It Fl f
41*7ea5cb81SHiten PandyaForce mode, even if the binary does not appear to be a dynamic binary.
42*7ea5cb81SHiten PandyaThis way you can run resident through statically compiled wrappers.  The first
438ca15ec8SMatthew Dillondynamic binary encountered in the exec chain will be operated on.
448ca15ec8SMatthew Dillon.It Fl x Ar id
458ca15ec8SMatthew DillonDelete a registration by id.
468ca15ec8SMatthew Dillon.It Fl d
47*7ea5cb81SHiten PandyaDelete a registration by program name.
48*7ea5cb81SHiten PandyaIf neither of the above two options are specified a new registration is created.
498ca15ec8SMatthew Dillon.It Fl R
508ca15ec8SMatthew DillonDelete all registrations in the kernel.
518ca15ec8SMatthew Dillon.El
5233a8b578SMatthew Dillon.Sh SEE ALSO
5333a8b578SMatthew Dillon.Xr ld 1 ,
5433a8b578SMatthew Dillon.Xr ldd 1 ,
5533a8b578SMatthew Dillon.Xr nm 1 ,
5633a8b578SMatthew Dillon.Xr rtld 1
57*7ea5cb81SHiten Pandya.Sh AUTHORS
58*7ea5cb81SHiten PandyaThe
59*7ea5cb81SHiten Pandya.Nm
60*7ea5cb81SHiten Pandyaprogram, its kernel supplement and this manual page was written by
61*7ea5cb81SHiten Pandya.An Matthew Dillon Aq dillon@backplane.com .
62