คำถามติดแท็ก process-management

ใช้แท็กนี้เมื่อหัวข้อเกี่ยวกับการจัดการกระบวนการระบบ คำสั่งที่ใช้สำหรับสิ่งนี้เป็นเช่น ps และ kill -9 xxxx และบริการ xyz start | stop | restart และ htop มักใช้ร่วมกับการจัดการหน่วยความจำ

2
SIGQUIT เหมือนกับ SIGTERM หรือไม่
ฉันกำลังเรียนรู้ CentOS / RHEL และกำลังทำบางสิ่งเกี่ยวกับการจัดการกระบวนการ หนังสือ RHCSA ที่ฉันกำลังอ่านกำลังอธิบายว่ากำลังkill 1234ส่ง SIGQUIT ฉันคิดเสมอว่าคำสั่ง kill โดยไม่เพิ่มสวิตช์สำหรับชนิดสัญญาณควรเป็นค่าเริ่มต้นkill -15 SIGTERM เป็นkill -15และ SIGKILL kill -9ใช่ไหม CentOS / RHEL ใช้วิธีที่แตกต่างกันเล็กน้อยkill -15หรือว่าฉันเพิ่งเข้าใจผิด? แก้ไข: kill -lให้ SIGQUIT เป็นkill -3และดูเหมือนว่าจะเกี่ยวข้องกับการใช้แป้นพิมพ์เพื่อยุติกระบวนการ man 7 signalและระบุด้วยว่า SIGQUIT นั้นเป็นkill -3ดังนั้นฉันสามารถสันนิษฐานได้ว่าหนังสือของฉันไม่ถูกต้องในการระบุว่า SIGQUIT นั้นเป็นkill -15ค่าเริ่มต้น

3
จำลองกระบวนการที่ไม่มีทักษะในสถานะ D
สำหรับสถานการณ์การทดสอบหายนะเกี่ยวกับสภาพแวดล้อมของเซิร์ฟเวอร์เรากำลังมองหาวิธีที่ง่ายในการทำให้กระบวนการติดอยู่ในสถานะ D (ไม่หยุดชะงัก) มีวิธีง่าย ๆ ไหม? ตัวอย่างรหัส C ตัวอย่างจะเป็นเครื่องหมายบวก :) แก้ไข - คำตอบแรกคือกึ่งถูกต้องเนื่องจากกระบวนการแสดงให้เห็นว่าอยู่ในสถานะ D แต่ยังคงได้รับสัญญาณและสามารถถูกฆ่าได้


2
เรียกใช้คำสั่งแบบขนานและรอให้กลุ่มคำสั่งกลุ่มหนึ่งเสร็จสิ้นก่อนเริ่มถัดไป
ฉันมีสคริปต์รวมถึงหลายคำสั่ง ฉันจะจัดกลุ่มคำสั่งให้ทำงานร่วมกันได้อย่างไร (ฉันต้องการสร้างกลุ่มคำสั่งหลายกลุ่มภายในแต่ละกลุ่มคำสั่งควรทำงานแบบขนาน (ในเวลาเดียวกัน) กลุ่มควรทำงานต่อเนื่องกันโดยรอกลุ่มหนึ่งให้เสร็จก่อนเริ่ม กลุ่มถัดไป) ... เช่น #!/bin/bash command #1 command #2 command #3 command #4 command #5 command #6 command #7 command #8 command #9 command #10 ฉันจะรันคำสั่งทุก ๆ 3 คำสั่งเพื่อ gether ได้อย่างไร? ฉันเหนื่อย: #!/bin/bash { command #1 command #2 command #3 } & { command #4 command …

3
เหตุใด top และ ps จึงแสดง PID ที่แตกต่างกันสำหรับกระบวนการเดียวกัน
เมื่อฉันเรียกใช้top -Hฉันเห็นว่าหลายmysqlเธรดของฉันทั้งหมดมี PID เดียวกัน อย่างไรก็ตามในps -eLfฉันเห็นแต่ละคนมี PID ที่แตกต่างกัน: ps -eLf UID PID PPID LWP C NLWP STIME TTY TIME CMD mysql 1424 1 1424 0 17 18:41 ? 00:00:00 /usr/sbin/mysqld mysql 1424 1 1481 0 17 18:41 ? 00:00:00 /usr/sbin/mysqld mysql 1424 1 1482 0 17 18:41 ? 00:00:00 /usr/sbin/mysqld …

2
วิธีตรวจสอบขีด จำกัด ใดเกิน (กระบวนการถูกยกเลิกเนื่องจาก ulimit)
สมมติว่ากระบวนการทำงานในสภาพแวดล้อมที่มีตัวคั่น: ( ulimit ... -v ... -t ... -x 0 ... ./program ) โปรแกรมถูกยกเลิก อาจมีสาเหตุหลายประการ: เกินขีด จำกัด หน่วยความจำ / เวลา / ไฟล์; segfault ง่าย ๆ หรือการเลิกจ้างปกติด้วยรหัสส่งคืน 0 จะตรวจสอบสาเหตุของการยกเลิกโปรแกรมได้อย่างไรโดยไม่ต้องแก้ไขโปรแกรม PS ฉันหมายถึง "เมื่อได้รับไบนารี" บางทีเสื้อคลุม (ptrace-ing ฯลฯ ) อาจช่วยได้บ้าง?

4
ระบบการเข้าคิวง่าย ๆ ?
ด้วยพีซีแบบ Commodity เราต้องการใช้มันเพื่อทำงานบางอย่างในพื้นหลังตลอดเวลา โดยทั่วไปเราต้องการมีคำสั่งเช่น: add-task *insert command here* list-tasks remove-task(s) งานที่เพิ่มเข้ามาควรอยู่ในคิวและดำเนินการทีละรายการในพื้นหลัง (ยังคงทำงานหลังจากออกจากระบบของเชลล์) มีสคริปต์ / โปรแกรมง่าย ๆ ที่ทำสิ่งนี้?
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.