Книга: Fedora™ Unleashed, 2008 edition
Printing Resource Usage with top
Printing Resource Usage with top
The top
command is unusual in this list because the few parameters it takes are rarely, if ever, used. Instead, it has a number of commands you can use while it is running to customize the information it shows you. To get the most from these instructions, open two terminal windows. In the first, run the program yes
and leave it running; in the second, switch to root, and run top
.
The default sort order in top
shows the most CPU-intensive tasks first. The first command there should be the yes
process you just launched from the other terminal, but there should be many others, too. First, you want to filter out all the other users and focus on the user running yes
. To do this, press u and enter the username you used when you ran yes
. When you press Enter, top
filters out processes not being run by that user.
The next step is to kill the process ID of the yes
command, so you need to understand what each of the important fields means:
? PID
— The process ID
? User
— The owner of the process
? PR
— Priority
? NI
— Niceness
? Virt
— Virtual image size in kilobytes
? Res
— Resident size in kilobytes
? Shr
— Shared memory size in kilobytes
? S — Status
? %CPU
— CPU use
? %Mem
— Memory use
? Time+
— CPU time
? Command
— The command being run
Several of these fields are unimportant unless you have a specific problem. The ones we are interested in are PID
, User
, Niceness
, %CPU
, %MEM
, Time+,
and Command
. The Niceness
of a process is how much time the CPU allocates to it compared to everything else on the system: 19 is the lowest, and -19 is the highest.
With the columns explained, you should be able to find the process ID of the errant yes
command launched earlier; it is usually the first number below PID
. Now type k
, enter that process ID, and press Enter. You are prompted for a signal number (the manner in which you want the process killed), with 15 provided as the default. Signal 15 (also known as SIGTERM
, for "terminate") is a polite way of asking a process to shut down, and all processes that are not wildly out of control should respond to it. Give top
a few seconds to update itself, and the yes
command should be gone. If not, you need to be more forceful: type k
again, enter the PID, and press Enter. When prompted for a signal to send, enter 9
and press Enter to send SIGKILL
, which means "terminate whether you like it or not."
You can choose the fields to display by pressing f
. A new screen appears that lists all possible fields, along with the letter you need to press to toggle their visibility. Selected fields are marked with an asterisk and have their letter, for example:
* A: PID = Process Id
If you press the a
key, the screen changes to this:
a: PID = Process Id
When you have made your selections, press Enter to return to the normal top
view with your normal column selection.
You can also press F
to select the field you want to use for sorting. This works in the same way as the field selection screen, except that you can select only one field at a time. Again, press Enter to get back to top
after you have made your selection, and the output will be updated with the new sorting.
If you press B, text bolding is enabled. By default, this bolds some of the header bar and any programs that are currently running (as opposed to sleeping), but if you press x
you can also enable bolding of the sorted column. You can use y
to toggle bolding of running processes.
The last command to try is r
, which enables you to re-nice — or adjust the nice
value — of a process. You need to enter the PID of the process, press Enter, and enter a new nice value. Keep in mind that 19 is the lowest and -20 is the highest; anything less than 0 is considered "high" and should be used sparingly.
- Printing the Contents of a File with cat
- Changing Directories with cd
- Changing File Access Permissions with chmod
- Copying Files with cp
- Printing Disk Use with du
- Finding Files by Searching with find
- Searches for a String in Input with grep
- Paging Through Output with less
- Creating Links Between Files with ln
- Finding Files from an Index with locate
- Listing Files in the Current Directory with ls
- Reading Manual Pages with man
- Making Directories with mkdir
- Moving Files with mv
- Listing Processes with ps
- Deleting Files and Directories with rm
- Printing the Last Lines of a File with tail
- Printing Resource Usage with top
- Printing the Location of a Command with which
- 2.1.3. Функция getopt_long()
- Appendix E. Other resources and links
- Using Double Quotes to Resolve Variables in Strings with Embedded Spaces
- Drawbacks with restore
- 7. AGGREGATION WITH INDEPENDENT WORKS
- Конструкция with-do
- 15.4 Resource Synchronization Methods
- 3. Hexadecimal – the way we communicate with micros
- CHAPTER 3 Working with GNOME
- CHAPTER 8 Printing with Fedora
- CHAPTER 15 Remote Access with SSH
- CHAPTER 20 Remote File Serving with FTP