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