มาคุยกันเถอะ เกี่ยวกับลำดับความสำคัญของกระบวนการ Windows- ในกรณีส่วนใหญ่ ไม่จำเป็นต้อง "เล่น" กับการตั้งค่าลำดับความสำคัญ แต่บางครั้งผู้ดูแลระบบที่มีความสามารถสามารถช่วยให้ระบบกระจายเวลาโปรเซสเซอร์ระหว่างงานที่กำลังทำงานอยู่ได้ถูกต้องมากขึ้น ไม่มีสูตรเดียว แต่โดย "การเลือกและค้นหา" ก็ค่อนข้างเป็นไปได้ สิ่งนี้อาจจำเป็นที่ไหน? ตัวอย่างเช่นในการรวมกัน 1C-SQL คุณสามารถให้เวลาโปรเซสเซอร์แก่ 1C และ SQL ได้มากขึ้นเนื่องจากเป็นกระบวนการที่มีความสำคัญต่อทรัพยากรมากที่สุด
โดยทั่วไป คุณสามารถดูและเปลี่ยนลำดับความสำคัญของกระบวนการที่ทำงานอยู่ได้ผ่านทางตัวจัดการงาน
หน้าต่างNT/2000/7 /2008
บนวินโดวส์ 2012มันถูก "ฝัง" ลึกลงไปอีกเล็กน้อย
ดังที่เห็นได้จากตัวอย่างข้างต้น มีเพียง 6 ลำดับความสำคัญเท่านั้นที่พร้อมใช้งานสำหรับคุณ (ซึ่งปรากฎในภายหลัง ได้แก่ ชั้นเรียนที่มีลำดับความสำคัญ- เพียงพอ? ไมโครซอฟต์คิดเช่นนั้น แต่มาจำวลี "ตำนาน" ของ Bill Geist ที่กล่าวว่า "RAM 640 KB จะเพียงพอสำหรับทุกคน" แต่เวลาได้แสดงให้เห็นว่าสิ่งนี้ยังห่างไกลจากกรณีนี้ -
ทีนี้เรามาดูกันว่าจริงๆ แล้วมันเป็นเช่นไร
Windows มีระดับความสำคัญอยู่ 32 ระดับ ตั้งแต่ 0 ถึง 31
พวกเขาถูกจัดกลุ่มดังนี้:
- 31 — 16 ระดับเรียลไทม์
- 15 — 1 ระดับไดนามิก
- 0 - ระดับระบบที่สงวนไว้สำหรับเธรดหน้าศูนย์
เมื่อมีการสร้างกระบวนการ กระบวนการนั้นจะถูกกำหนดหนึ่งในหกกระบวนการ ชั้นเรียนที่มีลำดับความสำคัญ:
- คลาสเรียลไทม์ (ค่า 24)
- ไฮคลาส (มูลค่า 13),
- สูงกว่าระดับปกติ (ค่า 10)
- ระดับปกติ (ค่า 8)
- ต่ำกว่าระดับปกติ (ค่า 6)
- หรือคลาสที่ไม่ได้ใช้งาน (ค่า 4)
คุณสามารถดูลำดับความสำคัญของกระบวนการตามที่อธิบายไว้ข้างต้นได้โดยใช้ตัวจัดการงาน
บันทึก: ลำดับความสำคัญเหนือปกติและต่ำกว่าปกติถูกนำมาใช้ตั้งแต่ Windows 2000
ลำดับความสำคัญของแต่ละเธรด ( ลำดับความสำคัญของเธรดฐาน) ประกอบด้วยลำดับความสำคัญของกระบวนการและ ลำดับความสำคัญสัมพัทธ์กระแสนั้นเอง มีลำดับความสำคัญของเธรดสัมพัทธ์เจ็ดประการ:
- ปกติ: เช่นเดียวกับกระบวนการ;
- สูงกว่าปกติ : +1 เพื่อประมวลผลลำดับความสำคัญ
- ต่ำกว่าปกติ : -1;
- สูงสุด: +2;
- ต่ำสุด: -2;
- วิกฤตเวลา: ตั้งค่าลำดับความสำคัญของเธรดพื้นฐานสำหรับคลาสเรียลไทม์เป็น 31 สำหรับคลาสอื่นเป็น 15
- ไม่ได้ใช้งาน: ตั้งค่าลำดับความสำคัญของเธรดพื้นฐานสำหรับคลาสเรียลไทม์เป็น 16 สำหรับคลาสอื่นเป็น 1
ตารางต่อไปนี้แสดงกระบวนการ ลำดับความสำคัญ และลำดับความสำคัญของเธรดพื้นฐาน
ลำดับความสำคัญของเธรด | คลาสกระบวนการ | คลาสกระบวนการ | |||||
ชั้นเรียนว่าง | ต่ำกว่าชั้นเรียนปกติ | ชั้นเรียนปกติ | สูงกว่าชั้นเรียนปกติ | ชั้นสูง | ชั้นเรียนแบบเรียลไทม์ | ||
1 | ไม่ได้ใช้งาน | ไม่ได้ใช้งาน | ไม่ได้ใช้งาน | ไม่ได้ใช้งาน | ไม่ได้ใช้งาน | ||
2 | ต่ำสุด | ||||||
3 | ด้านล่าง... | ||||||
4 | ชั้นเรียนว่าง | ปกติ | ต่ำสุด | ||||
5 | ข้างบน... | ด้านล่าง... | |||||
6 | ต่ำกว่าชั้นเรียนปกติ | สูงสุด | ปกติ | ต่ำสุด | |||
7 | ข้างบน... | ด้านล่าง... | |||||
8 | ชั้นเรียนปกติ | สูงสุด | ปกติ | ต่ำสุด | |||
9 | ข้างบน... | ด้านล่าง... | |||||
10 | สูงกว่าชั้นเรียนปกติ | สูงสุด | ปกติ | ||||
11 | ข้างบน... | ต่ำสุด | |||||
12 | สูงสุด | ด้านล่าง... | |||||
13 | ชั้นสูง | ปกติ | |||||
14 | ข้างบน... | ||||||
15 | สูงสุด | ||||||
15 | เวลาวิกฤติ | เวลาวิกฤติ | เวลาวิกฤติ | เวลาวิกฤติ | เวลาวิกฤติ | ||
16 | ไม่ได้ใช้งาน | ||||||
17 | |||||||
18 | |||||||
19 | |||||||
20 | |||||||
21 | |||||||
22 | ต่ำสุด | ||||||
23 | ด้านล่าง... | ||||||
24 | ชั้นเรียนแบบเรียลไทม์ | ปกติ | |||||
25 | ข้างบน... | ||||||
26 | สูงสุด | ||||||
27 | |||||||
28 | |||||||
29 | |||||||
30 | |||||||
31 | เวลาวิกฤติ |
ตอนนี้เรารู้ทั้งหมดนี้แล้ว เราจะทำอย่างไรกับเรื่องนี้ทั้งหมด? ตัวอย่างเช่นเริ่มใช้
คุณจะรันกระบวนการที่มีลำดับความสำคัญ "ที่ไม่ได้มาตรฐาน" หรือเปลี่ยนแปลงได้อย่างไร
วิธีที่ 1 เรียกใช้งาน/กระบวนการและเปลี่ยนลำดับความสำคัญผ่านตัวจัดการงาน
ข้อเสียของวิธีการ:
- มีลำดับความสำคัญเพียง 6 รายการเท่านั้น
- การสลับลำดับความสำคัญทำได้โดยใช้เมาส์และไม่ใช่แบบอัตโนมัติ
วิธีที่ 2 คุณสามารถใช้คำสั่ง START ด้วยปุ่มที่เหมาะสม
ตัวเลือกลำดับความสำคัญที่ใช้ได้มีดังนี้ (ฉันจงใจละเว้นตัวเลือกบรรทัดคำสั่งสำหรับคำสั่ง เริ่มไม่เกี่ยวข้องกับกระบวนการทำงานตามลำดับความสำคัญที่อธิบายไว้):
ค:\>เริ่ม /?
เริ่มหน้าต่างแยกต่างหากเพื่อรันโปรแกรมหรือคำสั่งที่ระบุ
เริ่ม ["ชื่อ"]
ต่ำเริ่มแอปพลิเคชันในคลาสลำดับความสำคัญ IDLE
ปกติเริ่มแอปพลิเคชันในคลาสลำดับความสำคัญปกติ
สูงเริ่มแอปพลิเคชันในคลาสที่มีลำดับความสำคัญสูง
เรียลไทม์เริ่มแอปพลิเคชันในคลาสลำดับความสำคัญแบบเรียลไทม์
ผิดปกติเริ่มแอปพลิเคชันในคลาสลำดับความสำคัญ ABOVENORMAL
ต่ำกว่าปกติเริ่มแอปพลิเคชันในคลาสลำดับความสำคัญต่ำกว่าปกติ
อย่างที่คุณเห็นคำสั่ง START ทำให้สามารถเริ่มกระบวนการด้วยลำดับความสำคัญ 6 ประการเดียวกันกับที่มีอยู่ในตัวจัดการงาน
ข้อเสียของวิธีการ:
- มีลำดับความสำคัญเพียง 6 รายการเท่านั้น
วิธีที่ 3: การใช้โปรแกรมอรรถประโยชน์ wmic.exe
ดังที่แสดงไว้ข้างต้น ตัวจัดการงานและคำสั่ง START ค่อนข้างยุ่งยากสำหรับงานกำหนดลำดับความสำคัญ เรามาดูวิธีการใช้งานแบบยืดหยุ่นมากขึ้นกัน เราจะใช้ยูทิลิตี้นี้ wmic.exe.
บรรทัดคำสั่ง:
กระบวนการ wmic โดยที่ name = "AppName" CALL setpriority ProcessIDLevel
กระบวนการ wmic โดยที่ name="calc.exe" CALL setpriority 32768
กระบวนการ wmic โดยที่ name="calc.exe" CALL setpriority "สูงกว่าปกติ"
ลำดับความสำคัญ (กำหนดไว้ล่วงหน้า):
- ไม่ได้ใช้งาน: 64
- ต่ำกว่าปกติ: 16384
- ปกติ: 32
- สูงกว่าปกติ: 32768
- ลำดับความสำคัญสูง: 128
- เรียลไทม์: 256
ล่าถอย- จะทำอย่างไรถ้ามีหลายกระบวนการที่มีชื่อเดียวกัน? ลำดับความสำคัญของกระบวนการสามารถเปลี่ยนแปลงได้โดยชื่อกระบวนการหรือโดยใช้ PID (ID กระบวนการ) ของกระบวนการ
ต่อไปนี้คือตัวอย่างสั้นๆ ของการเรียกใช้ wmic.exe เพื่อรับข้อมูลที่คุณต้องการ
เราใช้คำสั่ง:
บันทึก: ฉันจะไม่ยกตัวอย่างการดำเนินการคำสั่งนี้ รายการกระบวนการมีขนาดใหญ่เกินไป คุณสามารถทำได้ด้วยตัวเองถ้าคุณต้องการ
คุณจะได้รับรายการกระบวนการที่ทำงานบนเครื่องคอมพิวเตอร์ของคุณ ตอนนี้รันคำสั่ง:
สรุปรายการกระบวนการ wmic | ค้นหา "cmd.exe"
ผลลัพธ์:
ฉันได้เปิดตัว cmd.exe หลายชุดเป็นพิเศษเพื่อให้ภาพประกอบสมบูรณ์ยิ่งขึ้น
ขณะนี้รายการกระบวนการถูกจำกัดเฉพาะกระบวนการที่มีชื่อโมดูลที่ปฏิบัติการได้ซึ่งมีสตริง “cmd.exe” เท่านั้น ให้ความสนใจกับ PID ของกระบวนการ
ตอนนี้เรามาลองเลือกกระบวนการที่เราสนใจในการใช้ WMI โดยตรงและโดยไม่ต้องใช้เครื่องมือบรรทัดคำสั่งมาตรฐาน หากต้องการทำสิ่งนี้ เพียงเขียน:
กระบวนการ wmic โดยที่รายการ description = "cmd.exe" สั้น ๆ
ผลลัพธ์:
เปรียบเทียบผลลัพธ์ของคุณ จำ PID ของกระบวนการ CMD.EXE
บรรทัดคำสั่งเพื่อเรียกใช้ wmic.exe
กระบวนการ wmic โดยที่ processid="XXXX" CALL setpriority ProcessIDLevel
ตอนนี้เราสามารถเปลี่ยนลำดับความสำคัญของกระบวนการเฉพาะได้ (เช่น ด้วย PID=8476):
กระบวนการ wmic โดยที่ processid="8476" CALL setpriority 32768
กระบวนการ wmic โดยที่ processid="8476" CALL setpriority "สูงกว่าปกติ"
วันที่ดีสำหรับทุกคน วันนี้ตามที่คุณเข้าใจจากหัวข้อแล้วเราจะมาพูดถึงวิธีการ เพิ่มความเร็วให้กับคอมพิวเตอร์และโปรเซสเซอร์ของคุณโดยใช้การจัดลำดับความสำคัญ
หลายๆ คนคงเคยได้ยินมาว่าคุณสามารถใช้ลำดับความสำคัญที่แตกต่างกันได้ (พื้นหลัง ปกติ สูง เรียลไทม์ ฯลฯ) สำหรับกระบวนการที่แตกต่างกัน ซึ่งจะช่วยเพิ่มประสิทธิภาพการทำงานและจัดสรรพลังการประมวลผลมากขึ้น (เวลาประมวลผล) ให้กับพวกเขา
บางครั้งสิ่งนี้ช่วยเร่งความเร็วการทำงานของแอปพลิเคชันเฉพาะหรือระบบโดยรวมได้อย่างมากและแม้แต่ (ping) (โดยหลักการแล้วฉันจะสรุปเหตุผลในการลด ping ขึ้นอยู่กับลำดับความสำคัญของโปรเซสเซอร์และพลังงานในบทความแยกต่างหาก)
วิธีเพิ่มความเร็วคอมพิวเตอร์และโปรเซสเซอร์ในทางทฤษฎี
อย่างไรก็ตาม คุณจะยอมรับว่าเกม 3 มิติและแผ่นจดบันทึกทั่วไปเป็นแอปพลิเคชันที่แตกต่างกันเล็กน้อย และเห็นได้ชัดว่าเกมต้องการทรัพยากรโปรเซสเซอร์เพิ่มเติมแบบเรียลไทม์ เนื่องจากเมื่ออยู่ในแอปพลิเคชัน 3 มิติ คุณไม่น่าจะโต้ตอบกับแผ่นจดบันทึกนี้และ มัน คุณไม่จำเป็นต้องใช้มันในตอนนี้ (และแผ่นจดบันทึกแทบจะไม่ต้องการพลังการประมวลผลพิเศษใดๆ เลย - โปรแกรมนั้นไม่ได้อยู่ที่นั่น... แบบนั้น)
จากจุดนี้ ดูเหมือนสมเหตุสมผลที่แอปพลิเคชันต่างๆ ควรมีลำดับความสำคัญที่แตกต่างกัน (โดยเฉพาะอย่างยิ่งในช่วงเวลาของมัลติคอร์) แต่ในทางปฏิบัติสิ่งนี้ยังห่างไกลจากความเป็นจริง
ดังที่คุณเข้าใจแล้ว ฉันเข้าใจว่าแอปพลิเคชันที่มีคุณสมบัติครบถ้วนควรได้รับลำดับความสำคัญสูงกว่า ซึ่งจะเพิ่มประสิทธิภาพแอปพลิเคชันเหล่านั้นโดยอัตโนมัติโดยการเพิ่มทรัพยากรคอมพิวเตอร์มากขึ้น
แต่ฉันคิดว่าคุณจะเห็นด้วยว่าการทำเช่นนี้ทุกครั้ง (เนื่องจากระบบลืมลำดับความสำคัญที่ตั้งไว้ในตัวจัดการงานหลังจากรีสตาร์ท) ด้วยตนเองถือเป็นการลงโทษที่แท้จริงและโดยทั่วไปขี้เกียจดังนั้นคุณต้องทำให้กระบวนการนี้เป็นไปโดยอัตโนมัติเช่น นั่นคือตามเงื่อนไขการเร่งความเร็วคอมพิวเตอร์และโปรเซสเซอร์นั้นไม่ได้ดำเนินการด้วยตนเองทั้งหมด
นี่คือสิ่งที่เราจะพูดถึงในบทความนี้
วิธีเพิ่มความเร็วคอมพิวเตอร์ในทางปฏิบัติโดยใช้โปรแกรม
ประมาณสองเดือนที่แล้ว ฉันเจอโปรแกรมที่ยอดเยี่ยมชื่อ Mz CPU Accelerator สิ่งที่ทำคือเปลี่ยนลำดับความสำคัญของโปรเซสเซอร์ของหน้าต่างหรือแอปพลิเคชันที่ใช้งานอยู่ไปเป็นค่าที่กำหนดไว้ล่วงหน้าโดยอัตโนมัติ ซึ่งโดยทั่วไปคือสิ่งที่เราต้องการ เพราะนี่คือสิ่งที่จะเร่งความเร็วโปรเซสเซอร์และคอมพิวเตอร์
ยิ่งไปกว่านั้น ทั้งหมดนี้ถูกนำไปใช้ในลักษณะที่สะดวกและสมเหตุสมผลอย่างยิ่ง และไม่จำเป็นต้องมีการเคลื่อนไหวที่ไม่จำเป็นจากผู้ใช้ นอกจากนี้ยังมีการรองรับการประมวลผลหลายตัว (มัลติคอร์) และความสามารถในการเรียกใช้แอปพลิเคชันในส่วนที่แยกจากกัน (กล่าวคือจัดสรรเพียงสองคอร์จากสี่คอร์ให้กับโปรแกรม (ซึ่งใกล้กับการปรับให้เหมาะสมที่ตรงเป้าหมายมากขึ้น))
บันทึก: ไม่เคยเจอปาฏิหาริย์นี้มาก่อนได้ยังไงก็ไม่รู้ :)
กล่าวคือ:
- ใส่วงกลม Realtime ;
- ทำเครื่องหมายในช่องโหลดเมื่อเริ่มต้น Windows (เพื่อให้โปรแกรมโหลดทันทีเมื่อระบบเริ่มทำงาน)
- Start Activated (เพื่อให้โปรแกรมถูกเปิดใช้งานทันที กล่าวคือ ไม่ต้องกดปุ่มเพิ่มเติมเพื่อเริ่มทำงาน) และ..
- เริ่มย่อเล็กสุด (เพื่อที่จะย่อเล็กสุดไปที่ถาดในตอนแรก)
หากต้องการ คุณสามารถตรวจสอบการอัปเดตเมื่อเริ่มต้นระบบได้ (เพื่อให้คุณสามารถตรวจสอบได้ทันทีว่ามีการอัปเดตโปรแกรมออกมาหรือไม่) และเลือกวิธีที่โปรแกรมจะแสดงในถาดตามรสนิยมของคุณ: แสดงไอคอนตัวเร่งความเร็ว CPU Mz (ไอคอนของโปรแกรมจะอยู่ในถาด) หรือแสดงการใช้งาน CPU (แสดงว่างานยุ่งแค่ไหน) (เลือกสีของตัวเลขได้จากรายการแบบเลื่อนลง)
เหลือเพียงการกดปุ่มเปิดใช้งานและเพลิดเพลินไปกับการเร่งความเร็วของคอมพิวเตอร์หรือที่แม่นยำกว่านั้นคือหน้าต่างหรือแอปพลิเคชันที่ใช้งานอยู่
รายการบันทึกที่เป็นประโยชน์ที่ควรรู้
มีอะไรอีกที่ควรรู้และทำความเข้าใจในหัวข้อนี้:
- หมายเหตุ: บนแท็บการยกเว้น คุณสามารถเพิ่มแอปพลิเคชันที่คุณต้องการแยกออกจากรายการที่ได้รับการปรับให้เหมาะสมโดยโปรแกรม เช่น จะไม่จัดลำดับความสำคัญใดๆ ให้กับพวกเขา ในการดำเนินการนี้ ให้ใช้ปุ่มเพิ่มกระบวนการใหม่ และเลือกโปรแกรมที่คุณต้องการยกเว้น
- หมายเหตุ 2: บนแท็บ CPU Manager คุณสามารถกระจายกระบวนการไปยังคอร์ที่แตกต่างกันได้ (เพิ่มกระบวนการใหม่และปุ่มเรียกใช้กระบวนการใหม่) กล่าวคือ กำหนดคอร์บางคอร์ให้กับบางโปรแกรม และคอร์ที่แตกต่างกันให้กับคอร์อื่น ๆ ซึ่งในแง่หนึ่งสามารถทำได้ ส่งผลกระทบต่อประสิทธิภาพที่เพิ่มขึ้น คล้ายกันในหลักการ
- หมายเหตุ 3: ฉันไม่เคยพบมันด้วยตัวเอง แต่ฉันยอมรับ (แม้ว่าจะไม่น่าเป็นไปได้) ว่าในบางเครื่องอาจมีปัญหา (ในรูปแบบของการชะลอตัวของระบบ) เนื่องจากการเลือกลำดับความสำคัญที่สูงเกินไป ในกรณีนี้ ลองใช้วงกลมสูงแทนเรียลไทม์
ตอนนี้เรามาดูคำหลังกันดีกว่า
คำหลัง
นี่คือสิ่งที่ โดยทั่วไปแล้ว ฉันชอบโปรแกรมนี้มาก เพราะมันมีประสิทธิภาพมากและช่วยให้คุณเร่งความเร็วคอมพิวเตอร์ Windows และโปรเซสเซอร์ได้
ตามทฤษฎีแล้ว เจ้าของโปรเซสเซอร์แบบมัลติคอร์จะรู้สึกได้ถึงการเพิ่มขึ้นอย่างมากรวมถึงผู้ใช้เบราว์เซอร์ FireFox (ขึ้นอยู่กับโปรเซสเซอร์และเมื่อได้รับลำดับความสำคัญแบบเรียลไทม์ มันจะเริ่มบินเร็วขึ้นอย่างเห็นได้ชัด ( โดยเฉพาะในช่อง)) และทุกคนที่เชื่อมต่อกับแอปพลิเคชันเต็มรูปแบบที่ขึ้นกับโปรเซสเซอร์ (ฉันกำลังพูดถึงการเรนเดอร์ทุกประเภทในภาพถ่ายวิดีโอและโปรแกรมแก้ไข 3 มิติ)
หากคุณมีคำถามใด ๆ ให้ถามความคิดเห็นในบทความเช่นเคยฉันยินดีที่จะช่วยเหลือ
PS: บทวิจารณ์เกี่ยวกับความรู้สึกส่วนตัวในแง่ของการเพิ่มผลผลิตนั้นน่าสนใจไม่น้อยไปกว่าคำถาม;)
![](https://i2.wp.com/htfi.ru/img/kak_izmenit_prioritet_processa_v_windows_7_2.jpg)
คำว่า "ลำดับความสำคัญ" หมายถึงอะไร? เอ๊ะ อ่อนแอเหรอ? นี่เป็นสิทธิพิเศษ เช่นเดียวกับที่มีลำดับชั้นในอียิปต์: ฟาโรห์และทาส คุณรู้สึกถึงความแตกต่างหรือไม่? บางคนถือหินสำหรับปิรามิดในขณะที่บางคนออกคำสั่ง - ประชาธิปไตย!))
ในทำนองเดียวกัน กระบวนการก็มีลำดับความสำคัญ โอ้ คุณไม่รู้ว่ากระบวนการหมายถึงอะไร!
กระบวนการที่ทำงานอยู่คือแอปพลิเคชันใดๆ ที่ทำงานอยู่: เบราว์เซอร์ เกม โปรแกรม ฯลฯ นี่คือลำดับความสำคัญที่ช่วยให้เราสามารถจัดสรรทรัพยากรทั้งหมดเพื่อสนับสนุนกระบวนการ หรือในทางกลับกัน เป็นการจำกัดความสามารถของกระบวนการ
เหตุใดจึงเปลี่ยนลำดับความสำคัญของกระบวนการ?
ลองจินตนาการว่าคุณกำลังเล่นเกมคอมพิวเตอร์ แต่แอปพลิเคชันอื่นใช้ทรัพยากรบางส่วน โดยเฉพาะอย่างยิ่งแอปพลิเคชันที่ต้องการบริโภคเช่นกัน
ดังนั้น เพื่อให้ระบบปฏิบัติการ Windows เข้าใจว่าต้องมอบพลังงานที่เป็นไปได้ทั้งหมดให้กับกระบวนการเดียว นั่นคือเกม เราจำเป็นต้องตั้งค่าลำดับความสำคัญสูงสุดให้กับกระบวนการนี้ (ในตัวอย่างของเรา เกมคอมพิวเตอร์)
วุ้ย ฉันหวังว่าคุณจะเข้าใจประเด็นของฉัน ตอนนี้เรามาพูดถึงสิ่งสำคัญ ...
ลำดับความสำคัญใน Windows คืออะไร?
- ลำดับความสำคัญแบบเรียลไทม์ - อันที่จริงตอนนี้ Windows ถือว่ากระบวนการนี้เป็นไปตามวัตถุประสงค์ของธรรมชาติ ทรัพยากรที่เป็นไปได้ทั้งหมดจะถูกจัดสรรให้กับกระบวนการนี้เท่านั้น
- ลำดับความสำคัญสูง - ทรัพยากรบางส่วนไปที่แอปพลิเคชันอื่น แต่พายหลักยังคงถูกกำหนดให้กับกระบวนการเดียว
- สูงกว่าค่าเฉลี่ย – มีข้อได้เปรียบเล็กน้อยสำหรับกระบวนการที่เลือก
- ลำดับความสำคัญปานกลาง - โดยปกติแล้ว กระบวนการทั้งหมดจะมีสถานะ "ปานกลาง" ในตอนแรก ดังนั้นเราจึงสามารถพูดได้ว่ากระบวนการนี้ทำงานได้ตามปกติ
- ต่ำ – Windows ขัดขวางกระบวนการอย่างสมบูรณ์และไม่อนุญาตให้กระบวนการนี้แสดงตัวเองออกมาอย่างสง่างาม
จะเปลี่ยนลำดับความสำคัญได้อย่างไร?
ตอนนี้ฉันจะพูดถึง Windows 7 เพราะนี่คือระบบที่ฉันมีอยู่ในปัจจุบัน
1. คุณต้องกดปุ่ม Alt -Ctrl – D และรายการจะเปิดขึ้น คุณต้องเลือก “ตัวจัดการงาน”
2. หากคุณต้องการเปลี่ยนลำดับความสำคัญของแอปพลิเคชันขนาดใหญ่และมองเห็นได้ เช่น เบราว์เซอร์ คุณจะต้องเลือกแท็บ "แอปพลิเคชัน" และคลิกขวาที่แอปพลิเคชันที่ใช้งานอยู่ที่เหมาะสม จากนั้นคลิก "ไปที่กระบวนการ"
3. ถัดไป คุณจะเห็นว่ากระบวนการที่ต้องการถูกเน้นไว้ในแท็บกระบวนการ โดยปกติแล้วจะเรียกว่าเหมือนกับแอปพลิเคชันที่ระบุ สิ่งที่คุณต้องทำคือคลิกขวาที่กระบวนการและวางเมาส์เหนือลำดับความสำคัญ จากนั้น เลือกอันที่เหมาะสม
ตามที่ได้กล่าวไปแล้ว เป็นการดีกว่าที่จะให้ความสำคัญกับแอปพลิเคชันที่ใช้ทรัพยากรจำนวนมากและที่คุณใช้อยู่ในขณะนี้ อาจเป็นอะไรก็ได้: เกม โปรแกรม เบราว์เซอร์ ฯลฯ
ขอบคุณที่รับชม แสดงความคิดเห็นหากคุณมีคำถามใดๆ!
![](https://i0.wp.com/htfi.ru/img/kak_izmenit_prioritet_processa_v_windows_7_6.jpg)
zavlekyxa.ru
การจัดการลำดับความสำคัญของกระบวนการใน Windows Vista และ Windows 7
แน่นอนว่าเกือบทุกคนรู้ว่าลำดับความสำคัญของกระบวนการคืออะไร แต่ถ้าไม่ ฉันจะพยายามอธิบายสั้นๆ แนวคิดนี้ในแง่หนึ่งจะเหมือนกันสำหรับทั้ง Windows และ Linux รวมถึงระบบปฏิบัติการอื่นๆ บางระบบ ตอนนี้เราจะพูดถึงระบบปฏิบัติการ Windows Vista และ Windows 7 อย่างไรก็ตาม Windows Vista และ Wnidows 7 เช่นเดียวกับเวอร์ชันก่อนหน้าระบบเป็นแบบมัลติทาสก์เช่น สามารถรันโปรแกรมหลายโปรแกรมแบบขนานและแบบมัลติเธรดได้ แต่นี่เป็นความเบี่ยงเบนอยู่แล้วหรือเป็นการเจาะลึกในหัวข้อโดยไม่จำเป็น แต่ละโปรแกรมที่ทำงานบน Windows เป็นกระบวนการหรือหลายกระบวนการ สำหรับแต่ละกระบวนการ เมื่อเปิดตัว หน่วยความจำจะถูกจัดสรรในระบบ และลำดับความสำคัญเริ่มต้นจะถูกตั้งค่าด้วย เว้นแต่โปรแกรมจะกล่าวถึงลำดับความสำคัญที่จะต้องเปิดใช้งาน ยิ่งลำดับความสำคัญของกระบวนการสูงเท่าไร เวลาของตัวประมวลผลก็จะยิ่งถูกจัดสรรให้กับกระบวนการนั้นมากขึ้นเท่านั้น ยิ่งลำดับความสำคัญต่ำลง เวลาของตัวประมวลผลก็จะยิ่งถูกจัดสรรให้กับกระบวนการน้อยลงเท่านั้น หรือพูดง่ายๆ ก็คือ ยิ่งมีลำดับความสำคัญสูงเท่าใด โปรเซสเซอร์ก็จะยิ่ง "ให้ความสนใจ" กับกระบวนการและการดำเนินงานบ่อยมากขึ้นเท่านั้น และยิ่งลำดับความสำคัญต่ำลงเท่าใด "ให้ความสนใจ" ก็จะยิ่งน้อยลงเท่านั้น ดังนั้นสิ่งนี้จึงส่งผลต่อความเร็วของการทำงานของโปรแกรมใดโปรแกรมหนึ่ง ใน Windows 7 ฉันรู้สึกประหลาดใจในตอนแรกที่กระบวนการตกแต่งเพียงอย่างเดียว เช่น sidebar.exe (อุปกรณ์สำหรับเดสก์ท็อป) ได้รับเวลา CPU เท่ากันทุกประการกับกระบวนการอื่น ๆ ในเวลาเดียวกัน sidebar.exe เองก็ไม่ได้ทำหน้าที่ที่สำคัญหรือไม่จำเป็นมากเกินไป เหตุใดจึงควรอุทิศเวลา CPU เท่ากันกับแอปพลิเคชันที่ใช้ทรัพยากรจำนวนมาก เช่น เกม 3 มิติหรือโปรแกรมแก้ไข 3 มิติที่มีฉากขนาดใหญ่ จากคำถามนี้ ฉันเริ่มเล่นกับลำดับความสำคัญของกระบวนการตามที่พวกเขาพูดกัน สิ่งสำคัญที่ฉันเข้าใจคือ เป็นการดีกว่าสำหรับโปรแกรมผู้ใช้ที่จะไม่ไปสูงกว่าลำดับความสำคัญปกติ เพราะ Windows Vista/7 อาจเริ่มกระจายเวลาโปรเซสเซอร์ไม่ถูกต้อง และกระบวนการของระบบที่สำคัญบางอย่างจะเริ่ม "ช้าลง" ทางเลือกสุดท้าย คุณสามารถตั้งค่าลำดับความสำคัญเป็น AboveNormal สำหรับกระบวนการของผู้ใช้ที่คุณต้องการได้ แต่ในกรณีที่หายากมาก สิ่งนี้จะเพิ่มความแตกต่างที่เห็นได้ชัดเจนในประสิทธิภาพของโปรแกรม แต่ในขณะเดียวกันก็ไม่มีใครห้ามไม่ให้ลดลำดับความสำคัญของกระบวนการอื่น ๆ ที่มีความสำคัญน้อยกว่าหรือน้อยกว่า เพื่อไม่ให้กินเวลาประมวลผลอันมีค่า เช่น จากเกม บ่อยครั้งที่การยักย้ายดังกล่าวทำให้คุณชนะ 5-10FPS ได้ ข้อเสียเปรียบที่หลายคนทราบก็คือเมื่อคุณเปลี่ยนลำดับความสำคัญผ่าน "ตัวจัดการงาน" จะถูกบันทึกจนกว่ากระบวนการจะเสร็จสิ้นเท่านั้น จากนั้นกระบวนการจะเริ่มต้นอีกครั้งด้วยลำดับความสำคัญเริ่มต้น เหล่านั้น. การตั้งค่าลำดับความสำคัญของคุณจะไม่ถูกจดจำ ด้วยเหตุนี้ จึงมีโปรแกรมจำนวนมากปรากฏบนอินเทอร์เน็ตเพื่อจดจำการเลือกลำดับความสำคัญของคุณ และครั้งต่อไปที่คุณเริ่มโปรแกรม โปรแกรมเหล่านั้นจะเปลี่ยนให้คุณโดยอัตโนมัติ ในตอนแรกฉันไม่เชื่อว่า Windows ไม่มีเครื่องมือสำหรับจัดการและจดจำลำดับความสำคัญของกระบวนการ และฉันก็เริ่มค้นหาเอกสารบนเว็บไซต์ Microsoft ฉันจะไม่เริ่มการอภิปรายในหัวข้อเอกสารที่ไม่ดีเกี่ยวกับความสามารถของ Windows แต่ฉันกลับกลายเป็นว่าพูดถูก สำหรับกระบวนการใด ๆ ใน Windows คุณสามารถระบุลำดับความสำคัญและคุณสมบัติอื่น ๆ ที่จะเรียกใช้ผ่านรีจิสทรีได้ด้วยตนเอง เส้นทางไปยังคีย์รีจิสทรี: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\windows NT\CurrentVersion\Image File Execution Options วิธีเปิดตัวแก้ไขรีจิสทรี กดคีย์ผสม Win+R (ทางลัดไปยังคำสั่ง "run") ในหน้าต่างที่ปรากฏขึ้น พิมพ์ regedit ในบรรทัดข้อความแล้วกด Enter =) เพื่อระบุลำดับความสำคัญสำหรับกระบวนการที่ควรเริ่มต้นทันทีคุณต้องสร้างส่วนที่มีชื่อในสาขารีจิสทรีด้านบนจากนั้นสร้างส่วนอื่นในนั้นเช่น ส่วนย่อยที่เรียกว่า PerfOptions อยู่แล้วและในนั้นสร้างพารามิเตอร์ DWORD (32 บิต) ชื่อ CpuPriorityClass และตั้งค่าเป็นค่าทศนิยมค่าใดค่าหนึ่ง - 1, 2, 3, 5, 6
1 - ลำดับความสำคัญไม่ได้ใช้งาน (ต่ำ); 2 - ลำดับความสำคัญ ปกติ (ปานกลาง); 3 - ลำดับความสำคัญสูง (สูง); 5 - ลำดับความสำคัญต่ำกว่าปกติ (ต่ำกว่าค่าเฉลี่ย);
6 - ลำดับความสำคัญสูงกว่าปกติ (สูงกว่าค่าเฉลี่ย);
ลองดู sidebar.exe เป็นตัวอย่าง
ในสาขารีจิสทรี HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\windows NT\CurrentVersion\Image File Execution Options ฉันสร้างส่วน sidebar.exe ในนั้นฉันสร้างส่วนย่อย PerfOptions และในส่วนย่อยนี้ ฉันสร้างพารามิเตอร์ DWORD (32 บิต) ชื่อ CpuPriorityClass ด้วยค่าทศนิยม 1
ดังนั้น sidebar.exe จะทำงานโดยมีลำดับความสำคัญต่ำเสมอ (ไม่ได้ใช้งาน)
การดำเนินการทั้งหมดข้างต้นสามารถทำได้ผ่านบรรทัดคำสั่ง (cmd)
ฉันเขียนไฟล์แบตช์สากลขนาดเล็กที่ทำทั้งหมดนี้ให้กับผู้ใช้ ลิงก์ไปยังไฟล์แบตช์: save_process_priority.cmd ในไฟล์แบตช์ รายการทั้งหมดเขียนเป็นภาษารัสเซีย ผู้ใช้เพียงกรอกชื่อกระบวนการที่ต้องการและเลือกลำดับความสำคัญ เพื่อให้การตั้งค่าลำดับความสำคัญของคุณมีผล คุณต้องเริ่มกระบวนการใหม่ หากคุณแนะนำกระบวนการของระบบหลายกระบวนการพร้อมกัน ให้รีบูทระบบซึ่งจะง่ายกว่า นี่เป็นสิ่งจำเป็นเนื่องจากข้อมูลจากรีจิสทรีจะอ่านได้เฉพาะเมื่อมีการโหลดและเรียกใช้โปรแกรมเท่านั้น แต่จะไม่อ่านในขณะที่กำลังทำงานอยู่ ขอขอบคุณสำหรับความสนใจของคุณ =) หากคุณสังเกตเห็นข้อผิดพลาด โปรดแจ้งให้เราทราบ เราจะขอบคุณมาก
ลิขสิทธิ์ © 2011 Tsiryuta G.N.
stopgame.ru
การจัดการลำดับความสำคัญของกระบวนการใน Windows
พูดคุยเกี่ยวกับลำดับความสำคัญของกระบวนการ windows ในกรณีส่วนใหญ่ ไม่จำเป็นต้อง "เล่น" กับการตั้งค่าลำดับความสำคัญ แต่บางครั้งผู้ดูแลระบบที่มีความสามารถสามารถช่วยให้ระบบกระจายเวลาโปรเซสเซอร์ระหว่างงานที่กำลังทำงานอยู่ได้ถูกต้องมากขึ้น ไม่มีสูตรเดียว แต่โดย "การเลือกและค้นหา" ก็ค่อนข้างเป็นไปได้ สิ่งนี้อาจจำเป็นที่ไหน? ตัวอย่างเช่นในการรวมกัน 1C-SQL คุณสามารถให้เวลาโปรเซสเซอร์แก่ 1C และ SQL ได้มากขึ้นเนื่องจากเป็นกระบวนการที่มีความสำคัญต่อทรัพยากรมากที่สุด
โดยทั่วไป คุณสามารถดูและเปลี่ยนลำดับความสำคัญของกระบวนการที่ทำงานอยู่ได้ผ่านทางตัวจัดการงาน
Windows NT/2000/7/2008
ใน Windows 2012 สิ่งนี้ถูก "ฝัง" ลึกลงไปเล็กน้อย
ดังที่คุณเห็นจากตัวอย่างที่ให้มา ลำดับความสำคัญของคุณมีเพียง 6 ลำดับความสำคัญเท่านั้น (ดังที่คุณจะพบในภายหลัง ลำดับความสำคัญเหล่านี้เป็นลำดับความสำคัญ) เพียงพอ? ไมโครซอฟต์คิดเช่นนั้น แต่มาจำวลี "ในตำนาน" ของ Bill Geist ที่กล่าวว่า "RAM 640 KB จะเพียงพอสำหรับทุกคน" แต่เวลาได้แสดงให้เห็นว่าสิ่งนี้ยังห่างไกลจากกรณีนี้ -
ทีนี้เรามาดูกันว่าจริงๆ แล้วมันเป็นเช่นไร
จริงๆ แล้วมีลำดับความสำคัญ 32 ระดับใน windows ตั้งแต่ 0 ถึง 31
พวกเขาถูกจัดกลุ่มดังนี้:
- 31 - 16 ระดับเรียลไทม์;
- 15 - 1 ระดับไดนามิก;
- 0 - ระดับระบบที่สงวนไว้สำหรับเธรดหน้าศูนย์
เมื่อกระบวนการถูกสร้างขึ้น กระบวนการจะถูกกำหนดคลาสลำดับความสำคัญหนึ่งในหกคลาส:
- คลาสเรียลไทม์ (ค่า 24)
- ไฮคลาส (มูลค่า 13),
- สูงกว่าระดับปกติ (ค่า 10)
- ระดับปกติ (ค่า 8)
- ต่ำกว่าระดับปกติ (ค่า 6)
- หรือคลาสที่ไม่ได้ใช้งาน (ค่า 4)
คุณสามารถดูลำดับความสำคัญของกระบวนการตามที่อธิบายไว้ข้างต้นได้โดยใช้ตัวจัดการงาน
ลำดับความสำคัญของแต่ละเธรด (ลำดับความสำคัญของเธรดฐาน) คือผลรวมของลำดับความสำคัญของกระบวนการและลำดับความสำคัญสัมพัทธ์ของเธรดเอง มีลำดับความสำคัญของเธรดสัมพัทธ์เจ็ดประการ:
- ปกติ: เช่นเดียวกับกระบวนการ;
- สูงกว่าปกติ: +1 เพื่อประมวลผลลำดับความสำคัญ;
- ต่ำกว่าปกติ: -1;
- สูงสุด: +2;
- ต่ำสุด: -2;
- วิกฤตเวลา: ตั้งค่าลำดับความสำคัญของเธรดพื้นฐานสำหรับคลาสเรียลไทม์เป็น 31 สำหรับคลาสอื่นเป็น 15
- ไม่ได้ใช้งาน: ตั้งค่าลำดับความสำคัญของเธรดพื้นฐานสำหรับคลาสเรียลไทม์เป็น 16 สำหรับคลาสอื่นเป็น 1
ตารางต่อไปนี้แสดงกระบวนการ ลำดับความสำคัญ และลำดับความสำคัญของเธรดพื้นฐาน
ลำดับความสำคัญของเธรด | คลาสกระบวนการ | คลาสกระบวนการ | |||||
ชั้นเรียนว่าง | ต่ำกว่าชั้นเรียนปกติ | ชั้นเรียนปกติ | สูงกว่าชั้นเรียนปกติ | ชั้นสูง | ชั้นเรียนแบบเรียลไทม์ | ||
1 | ไม่ได้ใช้งาน | ไม่ได้ใช้งาน | ไม่ได้ใช้งาน | ไม่ได้ใช้งาน | ไม่ได้ใช้งาน | ||
2 | ต่ำสุด | ||||||
3 | ด้านล่าง... | ||||||
4 | ชั้นเรียนว่าง | ปกติ | ต่ำสุด | ||||
5 | ข้างบน... | ด้านล่าง... | |||||
6 | ต่ำกว่าชั้นเรียนปกติ | สูงสุด | ปกติ | ต่ำสุด | |||
7 | ข้างบน... | ด้านล่าง... | |||||
8 | ชั้นเรียนปกติ | สูงสุด | ปกติ | ต่ำสุด | |||
9 | ข้างบน... | ด้านล่าง... | |||||
10 | สูงกว่าชั้นเรียนปกติ | สูงสุด | ปกติ | ||||
11 | ข้างบน... | ต่ำสุด | |||||
12 | สูงสุด | ด้านล่าง... | |||||
13 | ชั้นสูง | ปกติ | |||||
14 | ข้างบน... | ||||||
15 | สูงสุด | ||||||
15 | เวลาวิกฤติ | เวลาวิกฤติ | เวลาวิกฤติ | เวลาวิกฤติ | เวลาวิกฤติ | ||
16 | ไม่ได้ใช้งาน | ||||||
17 | |||||||
18 | |||||||
19 | |||||||
20 | |||||||
21 | |||||||
22 | ต่ำสุด | ||||||
23 | ด้านล่าง... | ||||||
24 | ชั้นเรียนแบบเรียลไทม์ | ปกติ | |||||
25 | ข้างบน... | ||||||
26 | สูงสุด | ||||||
27 | |||||||
28 | |||||||
29 | |||||||
30 | |||||||
31 | เวลาวิกฤติ |
ตอนนี้เรารู้ทั้งหมดนี้แล้ว เราจะทำอย่างไรกับเรื่องนี้ทั้งหมด? ตัวอย่างเช่นเริ่มใช้
คุณจะรันกระบวนการที่มีลำดับความสำคัญ "ที่ไม่ได้มาตรฐาน" หรือเปลี่ยนแปลงได้อย่างไร
วิธีที่ 1 เรียกใช้งาน/กระบวนการและเปลี่ยนลำดับความสำคัญผ่านตัวจัดการงาน
ข้อเสียของวิธีการ:
- มีลำดับความสำคัญเพียง 6 รายการเท่านั้น
- การสลับลำดับความสำคัญทำได้โดยใช้เมาส์และไม่ใช่แบบอัตโนมัติ
วิธีที่ 2 คุณสามารถใช้คำสั่ง START ด้วยปุ่มที่เหมาะสม
คีย์ที่มีอยู่ซึ่งรับผิดชอบลำดับความสำคัญมีดังต่อไปนี้ (ฉันจงใจละเว้นคีย์บรรทัดคำสั่งของคำสั่ง START ที่ไม่เกี่ยวข้องกับกระบวนการอธิบายการทำงานกับลำดับความสำคัญ):
ค:\>เริ่ม /? เริ่มหน้าต่างแยกต่างหากเพื่อรันโปรแกรมหรือคำสั่งที่ระบุ เริ่ม ["ชื่อ"]
ต่ำ เริ่มแอปพลิเคชันในคลาสลำดับความสำคัญ IDLE
NORMAL เริ่มแอปพลิเคชันในคลาสลำดับความสำคัญ NORMAL HIGH เริ่มแอปพลิเคชันในคลาสที่มีลำดับความสำคัญสูง REALTIME เริ่มแอปพลิเคชันในคลาสลำดับความสำคัญ REALTIME ABOVENORMAL เริ่มแอปพลิเคชันในคลาสลำดับความสำคัญ ABOVENORMAL BELOWNORMAL เริ่มแอปพลิเคชันในคลาสลำดับความสำคัญ BELOWNORMAL
อย่างที่คุณเห็นคำสั่ง START ทำให้สามารถเริ่มกระบวนการด้วยลำดับความสำคัญ 6 ประการเดียวกันกับที่มีอยู่ในตัวจัดการงาน
ข้อเสียของวิธีการ:
- มีลำดับความสำคัญเพียง 6 รายการเท่านั้น
วิธีที่ 3: การใช้โปรแกรมอรรถประโยชน์ wmic.exe
ดังที่แสดงไว้ข้างต้น ตัวจัดการงานและคำสั่ง START ค่อนข้างยุ่งยากสำหรับงานกำหนดลำดับความสำคัญ มาดูวิธีการใช้งานที่ยืดหยุ่นกว่านี้กัน เราจะใช้ยูทิลิตี้ wmic.exe
บรรทัดคำสั่ง:
กระบวนการ wmic โดยที่ name = "AppName" CALL setpriority ProcessIDLevel
กระบวนการ wmic โดยที่ name="calc.exe" CALL setpriority 32768
กระบวนการ wmic โดยที่ name="calc.exe" CALL setpriority "สูงกว่าปกติ"
ลำดับความสำคัญ (กำหนดไว้ล่วงหน้า):
- ไม่ได้ใช้งาน: 64
- ต่ำกว่าปกติ: 16384
- ปกติ: 32
- สูงกว่าปกติ: 32768
- ลำดับความสำคัญสูง: 128
- เรียลไทม์: 256
ต่อไปนี้คือตัวอย่างสั้นๆ ของการเรียกใช้ wmic.exe เพื่อรับข้อมูลที่คุณต้องการ
เราใช้คำสั่ง:
สรุปรายการกระบวนการ wmic
คุณจะได้รับรายการกระบวนการที่ทำงานบนเครื่องคอมพิวเตอร์ของคุณ ตอนนี้รันคำสั่ง:
สรุปรายการกระบวนการ wmic | ค้นหา "cmd.exe"
ผลลัพธ์:
ฉันได้เปิดตัว cmd.exe หลายชุดเป็นพิเศษเพื่อให้ภาพประกอบสมบูรณ์ยิ่งขึ้น
ขณะนี้รายการกระบวนการถูกจำกัดเฉพาะกระบวนการที่มีชื่อโมดูลที่ปฏิบัติการได้ซึ่งมีสตริง “cmd.exe” เท่านั้น ให้ความสนใจกับ PID ของกระบวนการ
ตอนนี้เรามาลองเลือกกระบวนการที่เราสนใจในการใช้ WMI โดยตรงและโดยไม่ต้องใช้เครื่องมือบรรทัดคำสั่งมาตรฐาน หากต้องการทำสิ่งนี้ เพียงเขียน:
กระบวนการ wmic โดยที่รายการ description = "cmd.exe" สั้น ๆ
ผลลัพธ์:
เปรียบเทียบผลลัพธ์ของคุณ จำ PID ของกระบวนการ CMD.EXE
บรรทัดคำสั่งเพื่อเรียกใช้ wmic.exe
กระบวนการ wmic โดยที่ processid="XXXX" CALL setpriority ProcessIDLevel
ตอนนี้เราสามารถเปลี่ยนลำดับความสำคัญของกระบวนการเฉพาะได้ (เช่น ด้วย PID=8476):
กระบวนการ wmic โดยที่ processid="8476" CALL setpriority 32768
กระบวนการ wmic โดยที่ processid="8476" CALL setpriority "สูงกว่าปกติ"
winitpro.ru
การปรับแต่งและเพิ่มประสิทธิภาพของ Windows 7
ความเร็วของคอมพิวเตอร์เป็นที่สนใจของผู้ใช้ทุกคน ไม่มากก็น้อย เพื่อให้ได้รับประโยชน์สูงสุดจาก Windows 7 คุณสามารถใช้วิธีการที่รู้จักกันดีหลายวิธี ทั้งวิธีที่ง่ายที่สุดและซับซ้อนกว่าสำหรับผู้ใช้ทั่วไป
ในบทความนี้เราจะดูวิธีการปรับแต่งระบบด้วยตนเองและจะไม่หันไปใช้โปรแกรมพิเศษที่ออกแบบมาเพื่อเพิ่มประสิทธิภาพของระบบ
การเริ่มต้นการทำความสะอาด
หลายโปรแกรมที่คุณติดตั้งจะถูกเพิ่มลงในการเริ่มต้นระบบเมื่อ Windows เริ่มทำงาน สิ่งเหล่านี้จะเริ่มทำงานโดยอัตโนมัติเมื่อคุณเปิดคอมพิวเตอร์ ด้วยการตรวจสอบรายชื่อโปรแกรมเหล่านี้และลบโปรแกรมที่คุณไม่ได้ใช้บ่อย (หรือไม่ได้ใช้เลย) คุณสามารถเร่งความเร็วระบบของคุณได้
ในการดำเนินการนี้ คุณจะต้องเรียกใช้เครื่องมือการจัดการการกำหนดค่าระบบ:
เริ่ม -> แผงควบคุม -> ระบบและความปลอดภัย -> เครื่องมือการดูแลระบบ -> การกำหนดค่าระบบ
หรือกรอกค่า "
msconfig" แล้วกด Enter
บนแท็บเริ่มต้น คุณจะพบโปรแกรมทั้งหมดที่เริ่มทำงานโดยอัตโนมัติเมื่อ Windows เริ่มทำงาน และคุณสามารถลบโปรแกรมที่คุณไม่ต้องการออกได้ ซึ่งสามารถทำได้ด้วยตนเองโดยการลบค่าที่เกี่ยวข้องออกจากรีจิสทรีของระบบ รายชื่อโปรแกรมที่อยู่ในการเริ่มต้นระบบจะอยู่ในสาขารีจิสทรีต่อไปนี้:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\windows\CurrentVersion\Run
HKEY_CURRENT_USER\ซอฟต์แวร์\Microsoft\windows\CurrentVersion\Run
ปิดการใช้งานบริการที่ไม่จำเป็น (บริการ)
การปิดใช้งานบริการที่ไม่จำเป็นหรือไม่ค่อยได้ใช้จะช่วยลดภาระ RAM บางส่วน ซึ่งจะทำให้แอปพลิเคชันอื่นทำงานได้เร็วขึ้น ก่อนที่จะปิดใช้งานบริการใด ๆ เราขอแนะนำให้สร้างจุดคืนค่าระบบในกรณีที่มีภาวะแทรกซ้อน (โดยเฉพาะสำหรับผู้ใช้ที่ไม่มีประสบการณ์): แผงควบคุม -> ระบบ -> การป้องกันระบบ -> สร้าง... ดังนั้นรายการบริการอยู่ที่นี่: เริ่ม - > แผงควบคุม -> ระบบและความปลอดภัย -> เครื่องมือการดูแลระบบ -> บริการ
ที่นี่คุณสามารถปิดการใช้งานบริการที่ใช้งานน้อยได้ สิ่งต่อไปนี้สามารถปิดการใช้งานได้อย่างปลอดภัย:
· บริการป้อนข้อมูลแท็บเล็ตพีซี · เบราว์เซอร์คอมพิวเตอร์ · บริการช่วยเหลือ IP · การลงทะเบียนระยะไกล · บริการช่วยเหลือความเข้ากันได้ของโปรแกรม (ผู้ใช้ขั้นสูง)
การตั้งค่าลำดับความสำคัญของกระบวนการ
เพื่อให้แอปพลิเคชันทำงานเร็วขึ้น คุณจะต้องให้ความสำคัญกับแอปพลิเคชันเหล่านั้นให้สูงกว่าเมื่อเทียบกับกระบวนการในเบื้องหลัง ในกรณีนี้ แอปพลิเคชันที่ใช้งานอยู่จะได้รับการจัดสรรเวลาประมวลผลมากขึ้น ตามค่าเริ่มต้น ระบบจะได้รับการกำหนดค่าด้วยวิธีนี้ แต่ความสมดุลระหว่างทรัพยากรสำหรับกระบวนการที่ใช้งานอยู่และกระบวนการเบื้องหลังสามารถถูกเปลี่ยนเพิ่มเติมได้ ค่าที่รับผิดชอบคือ Win32PrioritySeparation ซึ่งอยู่ในคีย์รีจิสทรี HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\PriorityControl หากต้องการเปิดรีจิสทรีของระบบ ให้พิมพ์ “regedit” ที่บรรทัดคำสั่ง
ค่าเลขฐานสิบหกเริ่มต้นคือ 2 (ฐานสิบหก) ค่าที่แนะนำคือ 6 (ฐานสิบหก) ช่วงของค่าที่ถูกต้อง: ตั้งแต่ 1 ถึง 26 (ฐานสิบหก)
คุณสามารถลองใช้ค่าอื่นเพื่อเร่งความเร็วระบบของคุณให้มากที่สุด ข้อควรสนใจ: คุณไม่สามารถใช้ค่า 0 ได้คอมพิวเตอร์ของคุณจะหยุดทำงานทันที!
นอกจากการเปลี่ยนแปลงความสมดุลโดยรวมของทรัพยากรตัวประมวลผลแล้ว คุณยังสามารถตั้งค่าลำดับความสำคัญที่สูงขึ้นให้กับแต่ละโปรแกรมได้ ซึ่งสามารถทำได้ผ่านตัวจัดการงาน
บางครั้งสิ่งนี้ก็มีประโยชน์ ตัวอย่างเช่น หากบางโปรแกรมดำเนินการเป็นเวลานานมากและคุณต้องการให้มันดำเนินการเร็วขึ้น การตั้งค่าลำดับความสำคัญที่สูงกว่าอาจช่วยได้
การเปลี่ยนตัวเลือกประสิทธิภาพ
ระบบปฏิบัติการ Windows 7 ช่วยให้คุณสามารถกำหนดการตั้งค่าบางอย่างที่สามารถเพิ่มความเร็วของระบบได้ หากต้องการเปิดกล่องโต้ตอบตัวเลือกการโต้ตอบ ให้ไปที่นี่: เริ่ม -> แผงควบคุม -> ระบบและความปลอดภัย -> ระบบ -> การตั้งค่าระบบขั้นสูง -> การตั้งค่า (บนแท็บขั้นสูง)
ที่นี่ในแท็บ Visual Effects คุณสามารถปิดภาพเคลื่อนไหวของเมนู Start, Aero Peek, ความโปร่งใสของหน้าต่าง และตัวเลือกอื่นๆ ได้ หากคุณเลือกตัวเลือก "ตรวจสอบประสิทธิภาพที่ดีที่สุด" เอฟเฟกต์ภาพ Aero ของ Windows ทั้งหมดจะถูกปิดใช้งานและระบบจะทำงานเร็วขึ้น อย่างไรก็ตาม คุณจะเสียสละความสวยงามทั้งหมดที่ Windows 7 มอบให้เรา
การเร่งความเร็วแบบ Aero Peek
Aero Peek เป็นคุณสมบัติที่ทำให้หน้าต่างทั้งหมดโปร่งใสเมื่อคุณวางเมาส์เหนือสี่เหลี่ยมเล็กๆ ทางด้านขวาของนาฬิกา เพื่อลดเวลาตอบสนองของฟังก์ชันนี้ คุณต้องเปลี่ยนคีย์ DesktopLivePreviewHoverTime DWORD ซึ่งอยู่ในคีย์รีจิสทรี HKEY_CURRENT_USER\Software\Microsoft\windows\CurrentVersion\Explorer\Advanced
หากไม่มีคีย์ดังกล่าวในสาขาที่กำหนด คุณจะต้องสร้างมันขึ้นมาแล้วจึงเปลี่ยนค่าของมัน ค่าทศนิยม 1,000 เท่ากับความล่าช้าหนึ่งวินาที 500 เท่ากับครึ่งวินาที และต่อๆ ไป
ปิดการใช้งานการควบคุมบัญชีผู้ใช้ (UAC)
การควบคุมบัญชีผู้ใช้ (UAC) แจ้งให้ผู้ใช้ทราบถึงการเปลี่ยนแปลงระบบที่ต้องใช้สิทธิ์ของผู้ดูแลระบบ บริการนี้จะแสดงการแจ้งเตือนเมื่อคุณพยายามติดตั้งโปรแกรมใหม่ เมื่อมีการเปลี่ยนแปลงระบบไฟล์ ฯลฯ สิ่งนี้มีประโยชน์สำหรับผู้เริ่มต้น แต่มักจะทำให้ผู้ใช้ที่มีประสบการณ์หงุดหงิด หากต้องการปิดใช้งานการแจ้งเตือนจากการควบคุมบัญชีผู้ใช้ คุณต้องดำเนินการดังต่อไปนี้:
· เรียกใช้การกำหนดค่าระบบ (“msconfig” โดยไม่มีเครื่องหมายคำพูดในบรรทัดคำสั่ง) · ไปที่แท็บ "บริการ" และค้นหารายการ "การตั้งค่าการควบคุมบัญชีผู้ใช้" ในรายการ · เลือกรายการนี้แล้วคลิกปุ่ม "เรียกใช้" · กล่องโต้ตอบจะเปิดขึ้นซึ่งคุณสามารถใช้แถบเลื่อนเพื่อปรับเปลี่ยนการออกการแจ้งเตือนได้
การเปลี่ยนแปลงที่ทำจะถูกเปิดใช้งานหลังจากรีสตาร์ทคอมพิวเตอร์
mydiv.net
วิธีเปลี่ยนลำดับความสำคัญของการรันโปรแกรม
ในระหว่างการทำงาน คอมพิวเตอร์จะแก้ไขปัญหาต่างๆ มากมายไปพร้อมๆ กัน อย่างไรก็ตามในเวลาเดียวกันสิ่งนี้ไม่เป็นความจริงเลยโปรเซสเซอร์เพียงแค่สลับระหว่างงานต่าง ๆ เรียกใช้แอปพลิเคชันและดำเนินการทีละงาน สิ่งนี้เกิดขึ้นเร็วมากจนให้ความรู้สึกถึงการทำงานไปพร้อมกัน โปรแกรมเหล่านั้นที่คอมพิวเตอร์พิจารณาว่าสำคัญกว่าจะได้รับลำดับความสำคัญสูงกว่าโปรแกรมอื่นๆ ดังนั้นเวลาประมวลผลจึงมากขึ้นจะถูกจัดสรรให้กับโปรแกรมดังกล่าว โดยปกติแล้ว ลำดับความสำคัญพื้นฐานจะถูกระบุโดยโค้ดโปรแกรม ระดับความสำคัญถูกกำหนดโดยพารามิเตอร์: เรียลไทม์ สูง สูงกว่าค่าเฉลี่ย ค่าเฉลี่ย ต่ำกว่าค่าเฉลี่ย และต่ำ เมื่อใช้ตัวจัดการงาน ผู้ใช้สามารถเปลี่ยนลำดับความสำคัญพื้นฐานของโปรแกรมที่รันอยู่แล้วได้ตามต้องการ หากเขาเชื่อว่าโปรแกรมจำเป็นต้องได้รับเวลา CPU มากขึ้น หรือลดลำดับความสำคัญลงในสถานการณ์ที่เมื่อหลายแอปพลิเคชันทำงานพร้อมกัน บางโปรแกรมที่ใช้ทรัพยากรมากโดยเฉพาะจะใช้เวลาประมวลผลมากเกินไป ซึ่งจะทำให้การดำเนินการของกระบวนการอื่นๆ ช้าลง การเปลี่ยนแปลงเหล่านี้ที่ทำโดยผู้ใช้จะมีผลในช่วงระยะเวลาของกระบวนการที่ทำงานอยู่เท่านั้น ครั้งถัดไปที่กระบวนการเริ่มต้น กระบวนการจะทำงานที่ค่าลำดับความสำคัญพื้นฐาน หากต้องการเปลี่ยนลำดับความสำคัญ คุณต้องเปิดตัวจัดการงานโดยคลิกขวาในบริเวณทาสก์บาร์แล้วเลือก:![](https://i0.wp.com/htfi.ru/img/kak_izmenit_prioritet_processa_v_windows_7_21.jpg)
![](https://i1.wp.com/htfi.ru/img/kak_izmenit_prioritet_processa_v_windows_7_22.jpg)
tipskettle.blogspot.ru
7 คำตอบ
เธรดที่มีลำดับความสำคัญแบบเรียลไทม์ไม่สามารถป้องกันได้โดยการขัดจังหวะตัวจับเวลา และรันด้วยลำดับความสำคัญที่สูงกว่าเธรดอื่น ๆ บนระบบ เนื่องจากเธรดลำดับความสำคัญแบบเรียลไทม์ที่เชื่อมโยงกับ CPU ดังกล่าวสามารถทำลายเครื่องได้อย่างสมบูรณ์
การสร้างเธรดลำดับความสำคัญแบบเรียลไทม์ต้องใช้สิทธิ์ (SeIncreaseBasePriorityPrivilege) ดังนั้นผู้ดูแลระบบเท่านั้นที่สามารถทำได้
สำหรับ Vista และนอกเหนือจากนั้น ทางเลือกหนึ่งสำหรับแอปพลิเคชันที่ต้องการให้แอปพลิเคชันทำงานตามลำดับความสำคัญแบบเรียลไทม์คือการใช้บริการ Multimedia Class Scheduler (MMCSS) และปล่อยให้แอปพลิเคชันจัดการลำดับความสำคัญของเธรดของคุณ MMCSS จะป้องกันไม่ให้แอปพลิเคชันของคุณใช้เวลา CPU มากเกินไป ดังนั้นคุณจึงไม่ต้องกังวลกับการเติมพลังให้กับเครื่อง
เพียงแต่ว่าคลาสลำดับความสำคัญ "เรียลไทม์" นั้นสูงกว่าคลาสลำดับความสำคัญ "สูง" ฉันไม่คิดว่าจะมีอะไรมากไปกว่านั้น โอ้ ใช่ คุณต้องมี SeIncreaseBasePriorityPrivilege เพื่อใส่เธรดในคลาสแบบเรียลไทม์
บางครั้ง Windows จะเพิ่มลำดับความสำคัญของเธรดด้วยเหตุผลหลายประการ แต่จะไม่เพิ่มลำดับความสำคัญของเธรดในคลาสลำดับความสำคัญอื่น นอกจากนี้ จะไม่เพิ่มลำดับความสำคัญของเธรดในคลาสลำดับความสำคัญแบบเรียลไทม์ ดังนั้น เธรดที่มีลำดับความสำคัญสูงจะไม่ได้รับการเลื่อนระดับชั่วคราวอัตโนมัติใดๆ ให้เป็นคลาสลำดับความสำคัญแบบเรียลไทม์
บท "Inside Windows" ของ Russinovich เกี่ยวกับวิธีที่ Windows จัดการกับลำดับความสำคัญเป็นแหล่งข้อมูลที่ดีเยี่ยมสำหรับการเรียนรู้วิธีการทำงานของมัน:
โปรดทราบว่าไม่มีปัญหาใด ๆ กับเธรดที่มีลำดับความสำคัญแบบเรียลไทม์บนระบบ Windows ปกติ - ไม่จำเป็นสำหรับกระบวนการพิเศษที่ทำงานบนเครื่องเฉพาะ ฉันเชื่อว่าไดรเวอร์สื่อและ/หรือกระบวนการอาจต้องใช้เธรดที่มีลำดับความสำคัญแบบเรียลไทม์ อย่างไรก็ตาม เธรดดังกล่าวไม่ควรต้องใช้ CPU จำนวนมาก - ควรบล็อกเวลาส่วนใหญ่เพื่อให้สามารถประมวลผลเหตุการณ์ของระบบปกติได้
นี่จะเป็นการตั้งค่าลำดับความสำคัญสูงสุดที่มีอยู่ และโดยทั่วไปจะใช้เฉพาะในฟิลด์ที่ตั้งใจจะรันโปรแกรมนั้นเท่านั้น จริงๆ แล้วสูงพอที่จะทำให้เธรดของแป้นพิมพ์และเมาส์อดอาหารจนถึงจุดที่ไม่ตอบสนอง
ดังนั้นถ้าต้องถามอย่าใช้ :)
ในแบบเรียลไทม์ นี่คือคลาสที่มีลำดับความสำคัญสูงสุดสำหรับกระบวนการนี้ ดังนั้นจึงแตกต่างจาก "สูง" ตรงที่ใหญ่กว่าหนึ่งขั้น และ "สูงกว่าปกติ" ตรงที่ใหญ่กว่าสองขั้น
ในทำนองเดียวกัน แบบเรียลไทม์ก็มีระดับลำดับความสำคัญของเธรดด้วย
คลาสลำดับความสำคัญของกระบวนการเพิ่มหรือลดลำดับความสำคัญที่มีประสิทธิผลของเธรดในกระบวนการ และดังนั้นจึงถือเป็น "ลำดับความสำคัญพื้นฐาน"
ดังนั้นกระบวนการจึงมี:
- คลาสลำดับความสำคัญของกระบวนการพื้นฐาน.
- ลำดับความสำคัญของเธรดแต่ละรายการ, ออฟเซ็ตของคลาสลำดับความสำคัญพื้นฐาน
เนื่องจากแอปพลิเคชันแบบเรียลไทม์ควรได้รับการสำรองข้อมูลและต้องเตรียมกระบวนการอื่นๆ ที่ทำงานอยู่ล่วงหน้าอย่างแน่นอน จึงมีสิทธิ์พิเศษด้านความปลอดภัยเพื่อป้องกันการใช้งานโดยไม่ได้ตั้งใจ สิ่งนี้ถูกกำหนดโดยนโยบายความปลอดภัย
บน NT6+ (Vista+) การใช้ Vista Media Class Scheduler เป็นวิธีที่ถูกต้องในการดำเนินการแบบเรียลไทม์บนระบบปฏิบัติการที่ไม่ใช่ระบบปฏิบัติการจริง มันใช้งานได้เป็นส่วนใหญ่ ถึงแม้ว่ามันจะไม่สมบูรณ์แบบก็ตาม เนื่องจากระบบปฏิบัติการไม่ได้ถูกออกแบบมาสำหรับการทำงานแบบเรียลไทม์
Microsoft ถือว่าลำดับความสำคัญนี้เป็นอันตรายอย่างยิ่ง และถูกต้องเช่นกัน ไม่ควรใช้แอปพลิเคชันใดๆ ยกเว้นในสถานการณ์พิเศษ และถึงแม้จะพยายามจำกัดการใช้งานให้ตรงตามความต้องการชั่วคราวก็ตาม
เมื่อ Windows รู้ว่าโปรแกรมกำลังใช้ลำดับความสำคัญที่สูงกว่า ดูเหมือนว่าจะจำกัดลำดับความสำคัญของกระบวนการ
การตั้งค่าลำดับความสำคัญจาก IDLE เป็น REALTIME จะไม่เปลี่ยนการใช้งาน CPU
ฉันพบในโปรเซสเซอร์หลายตัวของ AMD ว่าหากฉันปล่อย CPU ตัวใดตัวหนึ่งเป็น LAST การใช้งาน CPU จะเป็น MAX OUT และ CPU ตัวสุดท้ายจะยังคงไม่ได้ใช้งาน ความเร็ว CPU เพิ่มขึ้นถึง 75% บน Quad AMD ของฉัน
ใช้ตัวจัดการงาน -> เลือกกระบวนการ -> คลิกขวากระบวนการ -> เลือก -> ตั้งค่าความสัมพันธ์ คลิกทั้งหมดยกเว้นโปรเซสเซอร์ตัวสุดท้าย การใช้งาน CPU จะเพิ่มขึ้นเป็น MAX บนโปรเซสเซอร์ที่เหลือและจำนวนเฟรมหากการประมวลผลวิดีโอเพิ่มขึ้น