Linux with Operating System Concepts



Download 5,65 Mb.
Pdf ko'rish
bet222/254
Sana22.07.2022
Hajmi5,65 Mb.
#840170
1   ...   218   219   220   221   222   223   224   225   ...   254
Bog'liq
Linux-with-Operating-System-Concepts-Fox-Richard-CRC-Press-2014

#
or 
sar
#
where 
#
is a number.
For each interval, sar provides you with the CPU number (or statistics on all CPUs), per-
centage of time the CPU was used in user and nice modes, system usage, wait time, cycle-
stealing time, and ideal. You are also given averages over the entire recorded time period. 
You can limit the intervals by specifying a different start and/or end time for the report, 
or alter the interval. You can also ask sar to specify different types of statistics than CPU 
usage. These include I/O transfer rate statistics, memory usage statistics, paging statistics 
network statistics, and block device usage.
Another command that reports on the processor’s performance is pidstat. This program 
provides CPU statistics for each running process. These statistics are broken into user, 
system, guest, and CPU usage where CPU usage is the sum total of user, system, and guest. 
You are also told which processor is running the particular process (for a multiprocessor 
system). So, while mpstat reports on each processor, pidstat shows similar information 
broken down at the process level. pidstat has a number of options that allow you to specify 
which type of information is output.
The –d option shows I/O usage, including the amount of reading and writing to hard 
disk. The –r option provides virtual memory information, showing the number of minor 
and major page faults that occur per second (a minor fault does not require a page to be 
loaded from disk while a major fault does), the virtual memory size, and resident size.
Finally, the –w option displays task-switching activity. In this case, you are shown for 
each process the number of voluntary context switches made per second and the number 


590

Linux with Operating System Concepts
of nonvoluntary context switches. Voluntary context switches arise when the process will-
ingly surrenders the processor to the next process because of I/O requirements while a 
nonvoluntary context switch occurs when the timer, which is timing the amount of CPU 
time each process receives, reaches 0.
The uptime program reports on the duration that the system has been running (since 
the last boot/reboot). The output is presented in a single line that states the current time, 
the number of days, hours, and minutes of uptime, the number of current users (logged in), 
and the average load over the past 1, 5, and 15 minutes.
The strace program may or may not be useful as a troubleshooting tool, but it is an inter-
esting program. As stated in Chapter 8, applications software and portions of the operating 
system invoke the kernel through system calls. System calls are the same as function calls 
in a C program except that the calls are made to the kernel rather than to a function within 
the running software. The strace program will map the number and nature of system calls 
of a given Linux command.
As an example, using strace on pwd results in a listing of the system calls made by pwd. 
The output includes the parameters passed to those functions. Pwd calls, in order, brk, 
mmap, access, open, fstat, mmap, close, open, read, fstat, mmap, mprotect, mmap (4 times), 
arch_prctl, mprotect (twice), munmap, brk (twice), open, fstat, mmap, close, getcwd, fstat, 
mmap, write, close, munmap, close, and exit_group.
What strace is doing is invoking the Linux command and tracing what the command 
does while it executes. It intercepts and records the system calls to list them as the result 
of strace. Strace is primarily used as a debugging tool for those who are writing Linux 
commands but can be used by system administrators to troubleshoot problems within the 
operating system itself. Chances are, if you have installed a stable version of Linux and you 
are not modifying Linux, you would not need to resort to strace. However, it can help you 
identify what a command is doing.
14.4.4 Memory System-Monitoring Tools
The program vmstat reports on memory and virtual memory usage. The default report is 
broken into six sections:
• Process information
• Memory usage
• Swap space usage
• I/O usage
• System usage
• CPU usage
These values are all averages, as computed since the last time the system was booted. What 
follows is an example of vmstat’s output (edited to fit within the space below).


Maintaining and Troubleshooting Linux

591
procs- - - -memory- - - - -swap- - - -io- - - system- - - cpu- - -
r b swpd free buff cache si so bi bo in cs us sy id wa st
1 2 64 112976 65360 413114 0 0 71 30 203 60 2 1 85 0 0
Table 14.3 describes the meaning of the abbreviations in the header. Explanations follow 
for some of the terms following the table.
As Linux is a multitasking operating system, it is possible and likely that more than one 
process will be in some state of execution at any time. As covered in Chapter 4, this means 
that there are several active processes although the CPU is only executing one process at 
any moment. It switches off between them. The number of waiting processes (r) are those 
that are active (loaded in memory) but not being executed at that moment by the CPU 
while those in uninterruptible sleep (b) are uninterruptible processes that are waiting on 
hardware. Interrupting such a process when it is executing could damage data. Portions of 
the kernel run in uninterruptible sleep.
The cs value indicates how many context switches occur per second. Recall that there 
are several reasons for a context switch. In multitasking, the system timer will interrupt the 
CPU to force a context switch between a running process and a waiting process. A switch 
can also occur when one process terminates or requires time-consuming I/O and so volun-
tarily surrenders the CPU. Additionally, altering process priority, while not forcing a con-
text switch, will alter the amount of time a process executes before it undergoes a switch.
The four values us, sy, id, and wa provide the amounts of time that the processor is pro-
cessing user processes, is processing system processes, is idle (no process executing), and is 
waiting on I/O. Finally, 
cycle stealing
is a situation where the CPU is forced to wait for some 
I/O process to complete. This often happens with DMA (direct memory access) I/O when 
TABLE 14.3 
vmstat Output Information

Download 5,65 Mb.

Do'stlaringiz bilan baham:
1   ...   218   219   220   221   222   223   224   225   ...   254




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2024
ma'muriyatiga murojaat qiling

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish