ใช้คำสั่ง "Nice" และ "Renice" ใน Linux

ทั้งหมดเกี่ยวกับความสำคัญ

ระบบ Linux สามารถทำงานหลายขั้นตอน (งาน) พร้อม ๆ กัน แม้ว่าโปรเซสเซอร์หรือโปรเซสเซอร์หลายตัวจะมีหลายโปรเซสเซอร์หรือหลายแกน แต่จำนวนของกระบวนการโดยทั่วไปจะมีมากกว่าจำนวนแกนที่พร้อมใช้งาน เป็นหน้าที่ของ เคอร์เนลลินุกซ์ ในการแจกจ่ายซีพียูที่มีให้กับกระบวนการที่ใช้งานอยู่

ดีใจที่ได้รับความสำคัญอย่างตรงไปตรงมา

โดยค่าเริ่มต้นกระบวนการทั้งหมดจะได้รับการพิจารณาอย่างเท่าเทียมกันเร่งด่วนและได้รับการจัดสรรเวลา CPU เดียวกัน เพื่อให้ผู้ใช้สามารถเปลี่ยนความสำคัญที่สัมพันธ์กันของกระบวนการ Linux จะเชื่อมโยงพารามิเตอร์ลำดับความสำคัญกับแต่ละงานที่ผู้ใช้สามารถตั้งหรือเปลี่ยนแปลงได้ ลินุกซ์เคอร์เนลขอสงวนเวลาของ CPU สำหรับแต่ละโพรเซสตามค่าลำดับความสำคัญของสัมพัทธ์

พารามิเตอร์ที่ ดี จะใช้เพื่อการนี้ มีค่าตั้งแต่บวก 20 ถึงบวก 19 และสามารถใช้ค่าจำนวนเต็มเท่านั้น ค่าลบ 20 หมายถึงระดับความสำคัญสูงสุดในขณะที่ 19 หมายถึงค่าต่ำสุด ความจริงที่ว่าระดับความสำคัญสูงสุดจะแสดงโดยจำนวนลบที่สุดคือค่อนข้าง unintuitive; อย่างไรก็ตามการเรียกใช้ลำดับความสำคัญที่ต่ำกว่าถือว่าเป็น "nicer" เนื่องจากจะช่วยให้กระบวนการอื่น ๆ สามารถใช้เวลาในการทำงานร่วมกับ CPU ได้มากขึ้น

วิธีการเล่น Nice

การใช้คำสั่ง ดี เริ่มต้นกระบวนการใหม่ (งาน) และกำหนดค่าลำดับความสำคัญ (ดี) ในเวลาเดียวกัน เมื่อต้องการเปลี่ยนลำดับความสำคัญของกระบวนการที่กำลังทำงานอยู่ให้ใช้คำสั่ง renice

ตัวอย่างเช่นบรรทัดคำสั่งต่อไปนี้เริ่มกระบวนการ "งานใหญ่" การตั้งค่าที่ดีเป็น 12:

ดี -12 ใหญ่งาน

โปรดทราบว่าเครื่องหมายขีดกลางหน้า 12 ไม่ได้แสดงเครื่องหมายลบ มันมีหน้าที่ปกติของการทำเครื่องหมายธงส่งผ่านเป็นอาร์กิวเมนต์ไปยังคำสั่งที่ดี

หากต้องการตั้งค่าที่ดีเป็นลบ 12 ให้เพิ่มเครื่องหมายอื่น:

ดี - 12 งานใหญ่

โปรดจำไว้ว่าค่าที่ต่ำกว่าที่สอดคล้องกับลำดับความสำคัญสูงกว่า ดังนั้นค่า -12 มีความสำคัญมากกว่า 12 ค่าเริ่มต้นที่ดีคือ 0 ผู้ใช้ทั่วไปสามารถตั้งค่าลำดับความสำคัญต่ำลงได้ (ค่าดีสุดบวก) เมื่อต้องการใช้ลำดับความสำคัญสูงกว่า (ค่าดีเชิงลบ) จำเป็นต้องมีสิทธิ์ของผู้ดูแลระบบ

คุณสามารถเปลี่ยนลำดับความสำคัญของงานที่กำลังทำงานอยู่โดยใช้ renice:

renice 17 -p 1134

การดำเนินการนี้จะเปลี่ยนค่าที่ดีของงานที่มีรหัสกระบวนการ 1134 ถึง 17 ในกรณีนี้จะไม่ใช้รีบสำหรับตัวเลือกคำสั่งเมื่อระบุค่าที่ดี คำสั่งต่อไปนี้จะเปลี่ยนค่าที่ดีของกระบวนการ 1134 เป็น -3:

renice -3 -p 1134

เมื่อต้องการ พิมพ์รายการกระบวนการปัจจุบัน ให้ใช้คำสั่ง ps การเพิ่มตัวเลือก "l" (เช่นเดียวกับใน "รายการ") จะแสดงค่าที่ดีภายใต้ส่วนหัวของคอลัมน์ "NI" ตัวอย่างเช่น:

ps -al