Những đơn vị thời gian nào mà đỉnh cao của người dùng sử dụng?


59

Nếu tôi phát lệnh "top" và nhận kết quả như:

PID   USER  PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND   
00001 bob   25   0 77380 1212 1200 R 95.8  0.0  89122:13 fee         
00002 bob   25   0 77380 1196 1184 R 95.4  0.0  88954:14 fi         
00003 sam   18   0  427m  16m 6308 R 30.0  0.1  54:46.43 fo         
00004 sam   18   0  427m  16m 6308 R 26.5  0.1  52:55.33 fum         

Câu hỏi: Các đơn vị trong cột "TIME +" là gì?

Những gì tôi đã thử: (vui lòng đề xuất một chiến lược tốt hơn để tìm kiếm tài liệu ...)

  • man top | grep -C 4 time hoặc là
  • man top | grep <X>khi tôi thay minute, hour, day, hoặc HHcho X...

Câu trả lời:


47

phút: giây. hàng trăm

Tìm kiếm trong THỜI GIAN THỜI GIAN + TRỰC TIẾP hoặc tìm kiếm trong vài giây. Cung cấp câu trả lời, loại (tôi sẽ không gọi trang người đàn ông rõ ràng).

Định dạng này được kế thừa từ BSD, bạn cũng có được nó với ps uhoặc ps ldưới Linux.


cảm ơn ... (tôi đã tìm thấy TIME + từ lần tìm kiếm đầu tiên, nhưng đã nản chí); Tôi có thể giả sử rằng 89122: 13 tính theo đơn vị MM: SS, (89122 phút và 13 giây = 60 ngày) không?
Abe

1
@Abe Có, 89122: 13 = 5347333 giây ≈ 62 ngày.
Gilles 'SO- ngừng trở nên xấu xa'

1
@ Tôi đoán rằng chúng ta có thể chia thời gian đã cho cho số lõi và lấy thời gian đồng hồ kể từ khi nó bắt đầu ...
PJunior

@Gilles Tôi mới dùng Linux. THỜI GIAN + biểu thị thời gian nào? Bao nhiêu thời gian công việc đang chạy?
mithusengupta123

@ mithusengupta123 Đó là lượng thời gian CPU được sử dụng bởi quy trình. Nó có thể ít hơn rất nhiều so với quá trình đã chạy trong bao lâu nếu quá trình không bị ràng buộc bởi CPU, ví dụ như một quá trình dành phần lớn thời gian nhàn rỗi của nó để chờ phục vụ các yêu cầu.
Gilles 'SO- ngừng trở nên xấu xa'

57

pstophiển thị thời gian CPU được sử dụng, không phải thời gian đồng hồ kể từ khi quá trình bắt đầu. Một cách để kiểm tra khi quá trình bắt đầu là sử dụng lệnh sau. Ngày tạo tệp PID là khi quá trình bắt đầu:

ls -ld /proc/pid

Vì vậy, đối với quy trình 2303, nó sẽ là:

ls -ld /proc/2303

2
Tôi không thấy bất cứ nơi nào Gilles nói rằng các giá trị hiển thị thời gian đồng hồ ...
Chris Down

Theo ý kiến ​​của tôi, nó dẫn đến "bất cứ ai".
PJunior

15
Câu trả lời của bạn rất hữu ích, nhưng nói rằng "câu trả lời khác là hoàn toàn sai", theo tôi là không chính xác. Câu hỏi ban đầu là những đơn vị được sử dụng. Câu trả lời 'câu trả lời khác' đó. Nó chỉ không xác định rằng đây là phép đo thời gian của CPU, không phải thời gian của đồng hồ. Câu trả lời của bạn làm rõ điều đó và vì vậy nó rất hữu ích (nhưng không trả lời câu hỏi ban đầu). Tôi sẽ bỏ phiếu cho câu trả lời của bạn nếu bạn loại bỏ câu trả lời của mình rằng câu trả lời khác là 'hoàn toàn sai'.
Jason S

2
Điều này dường như không hoạt động cho quá trình chạy dài (có thể nó cũng không hoạt động cho các công việc ngắn). Tôi thấy tập tin này được cập nhật vì một số lý do khác. Có một cách khác để tính toán khi quá trình được tạo ( stackoverflow.com/questions/5731234/ ))
Ganesh

Không làm việc cho tôi, sau quá trình chạy trong 2 ngày, tệp này đã báo cáo thời gian sửa đổi rất gần đây. Ngoài ra, OP là "đơn vị gì", trong khi điều này thật thú vị ... lạc đề.
Wilbur Whateley
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.