กระบวนการ“ ขัดจังหวะระบบ” ใน Windows คืออะไร


16

ระบบของฉันเป็นระบบโน้ตบุ๊กที่มีซีพียู AMD A10 5750m, R9 M290X GPU, 8GB, 1TB ฉันสังเกตเห็นกระบวนการที่ใช้งานอยู่เสมอเรียกว่า "การขัดจังหวะระบบ" ในขณะนี้มันใช้ CPU โดยเฉลี่ย 1.5%

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

คำตอบ:


29

"การขัดจังหวะระบบ" ไม่ใช่กระบวนการในความหมายดั้งเดิม แต่มีอยู่เพื่อพยายามอธิบายให้ผู้ใช้เห็นว่าคอมพิวเตอร์ใช้จ่าย 1.5% ของทรัพยากร CPU ในการประมวลผลคำขอขัดจังหวะ การขัดจังหวะเกิดขึ้นต่ำกว่าระดับระบบปฏิบัติการดังนั้นจึงไม่เกี่ยวข้องกับกระบวนการใด ๆ

อินเทอร์รัปต์ (IRQs)มีอยู่เพื่อให้ส่วนประกอบฮาร์ดแวร์ของระบบของคุณสามารถบอกสิ่งต่าง ๆ ของ CPU เช่น "เกิดข้อผิดพลาด" หรือ "ข้อมูลที่คุณร้องขอพร้อมใช้งานในขณะนี้" หรือ "อุปกรณ์นี้ต้องการส่งข้อมูล" เมื่อใดก็ตามที่อุปกรณ์หรือชิ้นส่วนของซอฟต์แวร์ความต้องการที่จะบอกอะไรบางอย่างเกี่ยวกับ CPU งานจะได้ดำเนินการหรือความต้องการที่จะสั่งให้ CPU ที่จะทำบางสิ่งบางอย่างก็ทำให้เกิดการขัดจังหวะ, ซึ่งซีพียูได้รับและจับ เมื่อสิ่งนี้เกิดขึ้น CPU จะหยุดทันทีที่มันทำเช่นนั้นเพื่อประมวลผลการขัดจังหวะ

เมื่อมองว่าเป็นกระบวนการรายการที่เกี่ยวข้องอีกรายการหนึ่งคือDeferred Procedure Calls (DPCs)ซึ่งเป็นฟังก์ชั่นระบบปฏิบัติการที่เรียกว่าโดยตรงหรือโดยอ้อมในการตอบสนองต่อสัญญาณขัดจังหวะแบบยกขึ้นในลักษณะอะซิงโครนัส โดยการเพิ่มการขัดจังหวะระบบและการประมวลผล DPC เข้าด้วยกันโดยทั่วไปคุณสามารถประมาณปริมาณทรัพยากรที่ใช้ในการตอบสนองต่อการจัดการ IRQ

มีการขัดจังหวะที่ดีและไม่ดี หากคุณใช้เวลาในการประมวลผลขัดจังหวะอาจมีความเป็นไปได้สูงที่ฮาร์ดแวร์อย่างน้อยหนึ่งชิ้นล้มเหลว ในทางกลับกันจำนวนมากของฮาร์ดแวร์ใช้ IRQs สำหรับเวลาและวัตถุประสงค์ที่มีค่าอื่น ๆ ตัวอย่างเช่น PCI bus ใช้ IRQs เพื่อควบคุมอุปกรณ์ที่ใช้บัสในเวลาใดก็ตามเพื่อให้ทุกอุปกรณ์แชร์บัสได้อย่างมีประสิทธิภาพ

ที่ 1.5% ทุกอย่างฟังดูธรรมดาสำหรับฉัน


1
ขอบคุณสำหรับคำตอบ. เปอร์เซ็นต์การบริโภคควรทำให้ฉันเป็นกังวล? หากฉันมีปัญหาฉันจะรู้ได้อย่างไรว่าชิ้นส่วนของฮาร์ดแวร์ล้มเหลว
Daniel

ขึ้นอยู่กับความถี่ของ CPU ของคุณจริงๆ ฉันเคยมีระบบที่ใช้แค่ 1.5 และอื่น ๆ ที่น้อยกว่า 0.10 - 0.20 ฉันกังวลจริงๆถ้าคุณใช้มากกว่า 10% กับเครื่องจักรที่ทันสมัย
Frank Thomas

CPU ของฉันทำงานที่ 2.5 กิกะเฮิร์ตซ์ มันแปลกบางครั้งก็อยู่ที่ 1,5% (ตามที่ฉันพูด: ปานกลาง) และตัวอย่างเช่นตอนนี้อยู่ที่ 0,3% แต่ฉันเห็นแล้วใน 5% ฉันจะทำตามคำแนะนำของ JakeGould และฉันจะไม่คิดเรื่องนี้อีกต่อไป ... พีซีของฉันใช้ได้ดีมาก :) และตอนนี้ฉันก็รู้เพิ่มเติมเกี่ยวกับเรื่องนี้อีกเล็กน้อย ขอบคุณ !!
แดเนียล

2
ส่วนใหญ่คุณทำไม่ได้เว้นแต่จะมีปัญหาฮาร์ดแวร์ที่คุณวินิจฉัยและซ่อมแซม คุณสามารถหลีกเลี่ยงไดรฟ์ข้อมูล USB สำหรับฮาร์ดดิสก์ (แทนที่จะติดตั้งดิสก์บนพอร์ต SATA) เนื่องจาก USB ใช้อินเทอร์รัปต์สำหรับการแชร์บัส แต่นอกเหนือจากสิ่งนั้นเว้นแต่ว่ามีสิ่งผิดปกติคุณจำเป็นต้องมีอินเทอร์รัปต์ พวกเขาไม่ใช่ผู้ใช้ที่กำหนดค่าได้นอกเหนือจากที่อยู่ที่แต่ละอุปกรณ์ใช้ซึ่งเป็นสิ่งที่คุณทำได้เมื่อ 20 ปีก่อน
Frank Thomas

2
@Devilathor ไม่มาก สถาปัตยกรรมทั้งหมดของคอมพิวเตอร์นั้นขึ้นอยู่กับการขัดจังหวะและลดการใช้ CPU โดยบังคับ (ถ้าเป็นไปได้) เพียงวางหรือชะลอระบบทั้งหมดของคุณ วิธีที่ปลอดภัยเพียงวิธีเดียวในการลดจำนวนการขัดจังหวะคือการลดจำนวนชิ้นส่วนฮาร์ดแวร์ที่ส่งการขัดจังหวะไปยัง CPU สำหรับสิ่งที่คุณสามารถลบ / ถอด / ปิดฮาร์ดแวร์ที่ไม่จำเป็นทั้งหมดและดูว่ามันสร้างความแตกต่าง หากฮาร์ดแวร์บางตัวไม่สามารถถอดออกได้ให้มองหาการตั้งค่าที่จะทำให้ 'รีเฟรช' น้อยลง (สำหรับโหมดสแตนด์บายหากเป็นไปได้)
Hoki

4

“ ระบบขัดจังหวะระบบ” หรือที่รู้จักกันอีกชื่อว่า“ ขัดจังหวะ” และ“ IRQs” - เป็นกระบวนการระดับระบบปฏิบัติการที่จัดการวิธีที่ฮาร์ดแวร์สื่อสารกับระบบของคุณ ตามที่อธิบายไว้ที่นี่ใน Wikipedia :

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

ดังนั้นจึงเป็นส่วนที่จำเป็นในการตั้งค่าระบบหลักของคุณ และหากการใช้งานซีพียูพุ่งทะลุหลังคาหมายความว่ามีปัญหาบางอย่างกับระบบของคุณในการสื่อสารกับฮาร์ดแวร์


ขอบคุณ ฉันจะติดตามเหตุการณ์ที่ทำให้เกิดการหยุดชะงักเหล่านี้ได้อย่างไร หากมีสิ่งผิดปกติควรมีวิธีการเรียนรู้สิ่งที่เกิดขึ้นไม่ได้หรือไม่
Daniel

1
ไม่แน่ใจ 100% สำหรับเครื่อง Windows แต่ฉันไม่เคยได้ยินชื่อผู้ดูแลระบบ Windows ที่ฉันทำงานด้วยความระมัดระวัง คุณอาจจะคิดถึงเรื่องนี้ รายละเอียดเพิ่มเติมจาก Microsoft technet.microsoft.com/en-us/library/cc940374.aspx
JakeGould

2
โดยทั่วไปคุณไม่สามารถดูข้อมูลอินเตอร์รัปต์ในระบบปฏิบัติการได้เนื่องจากมันเกิดขึ้นต่ำกว่าระดับระบบปฏิบัติการ มันไม่ได้เป็นความกังวลอย่างใหญ่หลวงเว้นแต่ว่า CPU ของคุณสูงมากสำหรับการประมวลผล IRQ หรือ DPC
Frank Thomas

1
@Devilathor ส่วนหนึ่งของเหตุผลที่ฉันไม่แน่ใจเกี่ยวกับการขัดจังหวะอีกต่อไปเป็นเพราะสิ่งสุดท้ายที่ฉันจัดการกับพวกเขาคือ - จริงจัง - ย้อนกลับไปในปี 1992 เมื่อฉันทำงานไอทีครั้งแรกบนเครื่อง 486 เครื่อง และการตั้งค่า IRQ บางครั้งก็หมายถึงคำสั่งผสมของ BIOS และการปรับจัมเปอร์ทางกายภาพ ดังนั้นฉันคิดว่าสมองของฉันไม่มีประโยชน์ที่จะเข้าใจสิ่งนั้นทุกวันนี้เมื่อสิ่งเหล่านั้นอยู่เบื้องหลังในระบบส่วนใหญ่
JakeGould

1
IRQ เป็นเรื่องจริงจังสำหรับการดำเนินงานที่ไม่เกี่ยวข้องกับผู้ใช้ ฉันไม่สนใจเมื่อ CPU ของฉันทำการสลับบริบทเพื่อเรียกใช้เธรดอื่นในขณะที่การดำเนินการ DMA สำหรับเธรดที่หยุดชั่วคราวกำลังรอการเรียกกลับแบบอะซิงโครนัส IRQ เพื่อระบุว่าข้อมูลพร้อมใช้งานแล้ว สิ่งนั้นเกิดขึ้นเป็นล้านครั้งต่อวินาที
Frank Thomas
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.