Commit | Line | Data |
---|---|---|
b56edb6d C |
1 | .TH STICKY 8 "4 February 1983" |
2 | .UC 4 | |
3 | .SH NAME | |
4 | sticky \- executable files with persistent text | |
5 | .SH DESCRIPTION | |
6 | While the `sticky bit', mode 01000 (see | |
7 | .IR chmod (2)), | |
8 | is set on a sharable executable file, | |
9 | the text of that file will not be removed from the system swap area. | |
10 | Thus the file does not have to be fetched from the file system | |
11 | upon each execution. | |
12 | As long as a copy remains in the swap area, the | |
13 | original text cannot be overwritten in the file system, | |
14 | nor can the file be deleted. | |
15 | (Directory entries can be removed so long as one link remains.) | |
16 | .PP | |
17 | Sharable files are made by the | |
18 | .B \-n | |
19 | and | |
20 | .B \-z | |
21 | options of | |
22 | .IR ld (1). | |
23 | .PP | |
24 | To replace a sticky file that has been used do: | |
25 | (1) Clear the sticky bit with | |
26 | .IR chmod (1). | |
27 | (2) Execute the old program to flush the swapped copy. | |
28 | This can be done safely even if others are using it. | |
29 | (3) Overwrite the sticky file. | |
30 | If the file is being executed by any process, | |
31 | writing will be prevented; it suffices to simply remove the file | |
32 | and then rewrite it, being careful to reset the owner and mode with | |
33 | .I chmod | |
34 | and | |
35 | .IR chown (2). | |
36 | (4) Set the sticky bit again. | |
37 | .PP | |
38 | Only the super-user can set the sticky bit. | |
39 | .SH BUGS | |
40 | Are self-evident. | |
41 | .PP | |
42 | Is largely unnecessary on the VAX; matters only for large programs that | |
43 | will page heavily to start, since text pages are normally cached incore | |
44 | as long as possible after all instances of a text image exit. |