ทำไม `htop 'ถึงแสดงกระบวนการมากกว่า" ps` "


174

ใน ps xf

26395 pts/78   Ss     0:00  \_ bash
27016 pts/78   Sl+    0:04  |   \_ unicorn_rails master -c config/unicorn.rb                                           
27042 pts/78   Sl+    0:00  |       \_ unicorn_rails worker[0] -c config/unicorn.rb                                        

ในhtopมันปรากฏขึ้นเช่น: htop แสดงหลายบรรทัด unicorn_rails

เหตุใด htop จึงแสดงกระบวนการมากกว่า ps


คำตอบ:


249

โดยค่าเริ่มต้นhtopรายการแต่ละหัวข้อของกระบวนการแยกจากกันในขณะที่psไม่ได้ หากต้องการปิดการแสดงผลของเธรดให้กดHหรือใช้เมนู "ตั้งค่า / แสดงตัวเลือก", "ซ่อนเธรดผู้ใช้" สิ่งนี้ทำให้บรรทัดต่อไปนี้ใน~/.htoprcหรือ~/.config/htop/htoprc(คุณสามารถใส่มันด้วยตนเอง):

hide_userland_threads=1

(นอกจากนี้hide_kernel_threads=1สลับโดยกดKแต่มันเป็น 1 โดยค่าเริ่มต้น)

อีกตัวเลือกที่มีประโยชน์คือ“ แสดงหัวข้อในสีที่แตกต่าง” ในเมนูเดียวกัน ( highlight_threads=1ใน.htoprc) ซึ่งทำให้กระทู้ที่จะแสดงในสีที่แตกต่าง (สีเขียวในชุดรูปแบบเริ่มต้น)

ในบรรทัดแรกของhtopจอแสดงผลมีบรรทัดเช่น“ งาน: 377, 842 thr, 161 kthr; 2 วิ่ง” สิ่งนี้แสดงจำนวนกระบวนการทั้งหมด, เธรดผู้ใช้, เธรดเคอร์เนล, และเธรดในสถานะที่รันได้ ตัวเลขไม่เปลี่ยนแปลงเมื่อคุณกรองจอแสดงผล แต่ตัวบ่งชี้“ thr” และ“ kthr” หายไปเมื่อคุณปิดการรวมของผู้ใช้ / เคอร์เนลเธรดตามลำดับ

เมื่อคุณเห็นกระบวนการหลายอย่างที่มีคุณสมบัติทั้งหมดเหมือนกันยกเว้นเขตข้อมูลที่เกี่ยวข้องกับ PID และ CPU (ค่า NIce, CPU%, TIME +, ... ) เป็นไปได้สูงว่าจะมีเธรดในกระบวนการเดียวกัน


เบาะแสเกี่ยวกับสาเหตุที่เป็นค่าเริ่มต้นคืออะไร ทำไมจึงมีความเกี่ยวข้อง ดูเหมือนจะเป็นการเพิ่มเสียงรบกวน แต่ฉันคิดว่ามันมีเหตุผลที่ดี
tuxayo

0

สำหรับฉันในระบบ arch linux ที่ปัจจุบันมากขึ้นหรือน้อยลงps xfแสดงให้ฉันเห็นเฉพาะกระบวนการที่เป็นเจ้าของโดย ID ผู้ใช้ของฉัน htopแสดงให้ฉันเห็นกระบวนการทั้งหมด ลองps -efดูรายการกระบวนการทั้งหมดหรืออาจps -ejHจะรับรายการความสัมพันธ์ลูก / ผู้ปกครอง

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.