นี่คือคำสั่งที่ปรับปรุงให้สามารถเรียกใช้ในผู้ให้บริการโฮสต์ฟรีของ OnWorks โดยใช้หนึ่งในเวิร์กสเตชันออนไลน์ฟรีของเรา เช่น Ubuntu Online, Fedora Online, โปรแกรมจำลองออนไลน์ของ Windows หรือโปรแกรมจำลองออนไลน์ของ MAC OS
โครงการ:
ชื่อ
Reniced - renice ทำงานตามนิพจน์ทั่วไป
เรื่องย่อ
เบื่อหน่าย [-h] [-v] [-o รูป] [ไฟล์คอนฟิก]
ภาพรวม
reniced รับรายการนิพจน์ทั่วไป ค้นหากระบวนการ (และเธรด) ที่ตรงกัน
พวกเขาและ renices กระบวนการเพื่อให้ได้ค่าที่กำหนด reniced ยังเปลี่ยนลำดับความสำคัญของ io ได้อีกด้วย
DESCRIPTION
เมื่อเริ่มต้น reniced จะอ่านไฟล์การกำหนดค่า ประกอบด้วยค่านิยมที่ดีและสม่ำเสมอ
นิพจน์
จากนั้นจะสแกนตารางกระบวนการโดยใช้ปุ่ม ps(1) คำสั่ง เมื่อใดก็ตามที่ชื่อกระบวนการจาก
คอลัมน์ CMD ตรงกับนิพจน์ทั่วไป กระบวนการนั้นถูกปรับปรุงให้เป็นค่าที่กำหนด ถ้า
กระบวนการจับคู่นิพจน์ทั่วไปหลายรายการ การจับคู่กฎทั้งหมดจะดำเนินการตามลำดับและ
นัดสุดท้ายชนะ
เมื่อรันเป็น root reniced จะสแกนกระบวนการทั้งหมด ("`ps H -e`") เมื่อเรียกใช้ในฐานะผู้ใช้
renice สแกนเฉพาะกระบวนการของผู้ใช้ ("`ps H --user`")
สวิทช์
-h ซึ่งจะพิมพ์หมายเลขเวอร์ชัน ข้อความช่วยเหลือสั้นๆ และออกโดยไม่ต้องดำเนินการใดๆ
-v สิ่งนี้จะเปิดใช้งานโหมด verbose ข้อความแสดงข้อผิดพลาด สถิติบางส่วน และการดำเนินการรีไนซ์ทั้งหมด
ถูกพิมพ์ไปที่ stdout
-o รูป
ตั้ง ps(1) รูปแบบเอาต์พุตที่จะกรอง รูปแบบเริ่มต้นคือ "comm" ดู -o
พารามิเตอร์ใน ps(1) manpage สำหรับรายละเอียด
ไฟล์คอนฟิก
สิ่งนี้จะอ่านนิพจน์ทั่วไปจาก configfile อื่น
ตำแหน่งเริ่มต้นของ configfile คือ "/etc/reniced.conf" หากเรียกใช้ reniced เป็น
ราก "~/.เรนิเซด" มิฉะนั้น.
องค์ประกอบ ไฟล์ รูป
ไฟล์การกำหนดค่าประกอบด้วยบรรทัดเดียว บรรทัดว่างและบรรทัดที่ขึ้นต้นด้วย a
# จะถูกละเว้น
ทุกบรรทัดต้องประกอบด้วยคำสั่งตามด้วยช่องว่างและ Perl ปกติ
การแสดงออก
นิพจน์ทั่วไปจับคู่กับ ps(1) การส่งออก สำหรับทุกกระบวนการที่ตรงกัน
คำสั่งถูกดำเนินการ
คำสั่งโดยทั่วไปจะอยู่ในรูปแบบของอักขระตามด้วยตัวเลข คำสั่งหลายคำสั่ง
สามารถให้พร้อมกันได้โดยไม่มีช่องว่างระหว่างกัน บางครั้งตัวเลขก็ไม่จำเป็น
คำสั่ง อักขระ
n ตั้งค่าที่ดีของกระบวนการ ต้องตามด้วยตัวเลข มักจะอยู่ภายใน
ช่วง -20 ถึง 19
สำหรับความเข้ากันได้ย้อนหลัง a n ที่จุดเริ่มต้นของคำสั่งสามารถละเว้นได้ (ถ้า
คำสั่งเริ่มต้นด้วยตัวเลขซึ่งถือว่าเป็นค่าที่ดี)
r ตั้งค่าลำดับความสำคัญ io เป็นคลาสการจัดตารางเวลาแบบเรียลไทม์ หมายเลขทางเลือกคือ
ถือเป็นข้อมูลคลาส (โดยทั่วไปคือ 0-7 ซึ่งต่ำกว่าจะมีลำดับความสำคัญสูงกว่า)
b ตั้งค่าระดับความสำคัญ io เป็นคลาสการจัดตารางเวลาที่ดีที่สุด หมายเลขทางเลือกคือ
ถือเป็นข้อมูลคลาส (โดยทั่วไปคือ 0-7 ซึ่งต่ำกว่าจะมีลำดับความสำคัญสูงกว่า)
i ตั้งค่าลำดับความสำคัญ io เป็นคลาสการจัดตารางเวลาที่ไม่ได้ใช้งาน ไม่ต้องให้ตัวเลขเป็น
คลาสการตั้งเวลาว่างจะละเว้นค่าข้อมูลคลาส
o ตั้งค่าการปรับ OOM killer ใน "/โปรค/$PID/oom_adj" ไปยังหมายเลขที่กำหนด
ตัวอย่าง
"5 ^ทุบตี"
ให้ค่า bash shell ที่รันอยู่ 5
"b2 ^ทาร์"
ตั้งค่า tar-processes ที่กำลังรันอยู่เป็น io ที่มีลำดับความสำคัญดีที่สุดภายในคลาส2
"ฉันทอร์เรนต์"
ตั้งค่าแอปพลิเคชันที่เหมือน torrent ที่กำลังรันอยู่เป็น io Priority idle
"n-10r4 ชุด"
ให้ seti-process ที่ทำงานอยู่ในปัจจุบันมีค่าที่ดีที่ -10 และตั้งค่าให้เป็นเรียลไทม์
io ลำดับความสำคัญในคลาส 4
โมดูล จำเป็น
ใช้ BSD::ทรัพยากร;
สามารถรับโมดูลนี้ได้จากhttp://www.cpan.org>.
โปรแกรม จำเป็น
ps
ไอออนไนซ์
ต้องใช้ไอออนไนซ์เฉพาะในกรณีที่คุณต้องการเปลี่ยนลำดับความสำคัญของ io สามารถหาได้จาก
<http://rlove.org/schedutils/>.
คุณต้องมีเคอร์เนลและตัวกำหนดตารางเวลาที่เหมาะสม เช่น Linux 2.6 พร้อม CFQ
ใช้ reniced ออนไลน์โดยใช้บริการ onworks.net
