Hedroom ทำงานอย่างไร ทีละขั้น
Hedroom อ่านตัวเลขไม่กี่ตัวจาก macOS สังเกตเมื่อแอปหนึ่งทำงานผิดปกติ เสนอการแก้ไขหนึ่งอย่าง และวัดสิ่งที่เกิดขึ้นหลังจากคุณยอมรับ ต่อไปนี้คือแต่ละขั้นพร้อมเกณฑ์ที่ใช้
ตัวเลขในหน้านี้มาจากเอกสารออกแบบและโค้ดของ Hedroom เอง เมื่อตัวเลขเป็นผลการวัด จะบอกว่าวัดเมื่อใดและบน Mac เครื่องไหน Hedroom ยังไม่เปิดตัว จึงไม่มีสิ่งใดในนี้ที่อธิบายเวอร์ชันสาธารณะ
ห้าขั้น
- สุ่มวัดตัวสุ่มวัดตัวเดียวอ่านหน่วยความจำ CPU พลังงาน อุณหภูมิ และพื้นที่จัดเก็บ
- ตรวจจับเปรียบเทียบกับสิ่งที่ปกติสำหรับ Mac ของคุณ ระบุชื่อแอปหนึ่งแอปที่สำคัญ
- ตัดสินใจเลือกหนึ่งข้อเสนอ ด่านความปลอดภัยอาจปฏิเสธได้
- ลงมือ เมื่อคุณยินยอมไม่มีอะไรเกิดขึ้นจนกว่าคุณจะบอก หรือกฎที่คุณเปิดไว้บอก
- ใบเสร็จค่าก่อน ค่าหลัง ผลสรุปที่ซื่อตรงหนึ่งข้อ
1. สุ่มวัด: อ่านอะไรและบ่อยแค่ไหน
ค่าที่วัดทั้งหมดมาจากตัวสุ่มวัดตัวเดียวที่ทำงานนอกเธรดหลัก เพื่อให้แอปตอบสนองได้ดี แต่ละแหล่งเป็นโค้ดแยกอยู่หลังอินเทอร์เฟซ ซึ่งเป็นวิธีที่ทดสอบด้วยข้อมูลจำลองด้วย แหล่งเหล่านี้คือ:
| ค่าที่วัด | ใช้ทำอะไร | เมื่อใด |
|---|---|---|
| ระดับแรงกดดันหน่วยความจำ | การประเมินของ macOS เองว่าต้องพยายามหาที่ว่างมากเพียงใด สัญญาณหลักของหน่วยความจำ | ทุกรอบ และทันทีที่ macOS รายงานการเปลี่ยนแปลง |
| การแจกแจงหน่วยความจำและกิจกรรม swap | หน่วยความจำของแอป wired บีบอัด และแคช และความเร็วที่ swap เพิ่มขึ้น | ทุกรอบ |
| หน่วยความจำ เวลา CPU และพลังงานต่อแอป | รอยเท้าของแต่ละโพรเซส (ตัวเลขที่การตรวจสอบกิจกรรมแสดงเป็น "หน่วยความจำ") จัดกลุ่มให้แอปและตัวช่วยของมันนับเป็นหนึ่ง | ทุกรอบเมื่อมีหน้าต่างเปิดอยู่ ทุก 2 รอบในเบื้องหลังเมื่อเสียบไฟ ทุก 3 รอบเมื่อใช้แบตเตอรี่ ทุก 4 รอบในโหมดพลังงานต่ำ |
| ภาระ CPU ต่อคอร์ | แอปที่ทำงานหนัก และการแบ่งระหว่างคอร์ประสิทธิภาพกับคอร์ประหยัดพลังงาน | ทุกรอบ |
| พลังงานของชิป | วัตต์สำหรับ CPU, GPU, Neural Engine และหน่วยความจำ เมื่อ Mac รายงานให้ ใช้อินเทอร์เฟซของ macOS ที่ Apple ไม่ได้ระบุไว้ในเอกสาร Hedroom จึงบอก "ไม่พร้อมใช้งาน" แทนการเดาเมื่อล้มเหลว | ช่วงอย่างน้อย 3.5 วินาที |
| สถานะความร้อนและแบตเตอรี่ | macOS กำลังลดความเร็วหรือไม่ รอบและความจุแบตเตอรี่ เวลาที่เหลือ | ทุกรอบ |
| พื้นที่จัดเก็บว่าง | พื้นที่ที่ใช้ได้บนวอลุ่มเริ่มต้นระบบ | ทุก 30 วินาทีเมื่อมีหน้าต่างเปิด ทุก 5 นาทีเมื่อไม่มี |
| CPU ของ WindowServer | เฉพาะหน้าจอ CPU และผู้แนะนำจอแสดงผล | เฉพาะขณะที่หน้าจอใดหน้าจอหนึ่งนั้นเปิดอยู่ |
| เสียง ไมโครโฟน และกล้องที่กำลังใช้งาน | การตรวจความปลอดภัย: Hedroom ไม่แตะต้องแอปที่อยู่ในสาย | เมื่อมีการพิจารณาการดำเนินการ |
รอบ
"รอบ" คือการอ่านค่าหนึ่งชุด ความถี่ขึ้นกับสิ่งที่คุณกำลังทำ:
| สถานการณ์ | รอบ |
|---|---|
| หน้าต่าง Hedroom หรือแผงแถบเมนูเปิดอยู่ | 2 วินาที |
| ในเบื้องหลัง เมื่อเสียบไฟ | 5 วินาที |
| ในเบื้องหลัง เมื่อใช้แบตเตอรี่ | 10 วินาที |
| โหมดพลังงานต่ำเปิดอยู่ | 15 วินาที |
| แรงกดดันหน่วยความจำเป็น เตือน หรือ วิกฤต | 2 วินาที บังคับ |
| คุณหยุดการตรวจสอบชั่วคราว | หยุดแล้ว |
การตั้งค่ามีตัวเลือก "ตรวจสอบ Mac ของฉันทุก" 2, 5 หรือ 10 วินาทีสำหรับอัตราเมื่อหน้าต่างเปิด อัตราในเบื้องหลังปรับตามนั้น ค่าดิบเก็บไว้ 48 ชั่วโมง ทุกอย่างอยู่บน Mac ของคุณ ในไฟล์ฐานข้อมูลเดียวในโฟลเดอร์ไลบรารี ดูความเป็นส่วนตัว
2. ตรวจจับ: อะไรนับเป็นสิ่งที่พบ
Hedroom ไม่แจ้งเตือนเพียงเพราะตัวเลขใหญ่ แต่เปรียบเทียบแต่ละแอปกับขนาดปกติของแอปนั้นบน Mac ของคุณ และรอดูว่าการเปลี่ยนแปลงคงอยู่หรือไม่
หน่วยความจำ: ปกติดี ตึง วิกฤต
Hedroom แสดงหนึ่งในสามสถานะ เกณฑ์ถูกเขียนไว้และทดสอบแล้ว
| สถานะ | เข้าเมื่อ | ออกเมื่อ |
|---|---|---|
| ตึง | macOS รายงานแรงกดดันระดับ เตือน หรือ swap เพิ่มขึ้น 20 MB ต่อนาทีขึ้นไปนาน 2 นาที ขณะที่หน่วยความจำที่บีบอัดมีอย่างน้อย 20% ของ RAM | ระดับเป็น ปกติ และ swap เพิ่มน้อยกว่า 5 MB ต่อนาทีนาน 3 นาที |
| วิกฤต | macOS รายงานระดับ วิกฤต หรือ swap เพิ่มขึ้น 200 MB ต่อนาทีขึ้นไปนาน 60 วินาที หรือหน่วยความจำว่างรวมแคชต่ำกว่า 3% ของ RAM นาน 60 วินาที | ไม่มีเงื่อนไขเหล่านั้นเลยนาน 2 นาที จากนั้นลดลงเป็นตึง |
swap ที่เพียงแค่ ใช้อยู่ ไม่เคยทำให้ Mac ตึง เพราะ macOS เก็บ swap เก่าไว้ นับเฉพาะ swap ที่ กำลังเพิ่ม เท่านั้น หน่วยความจำ "ที่ใช้" สูงแต่แรงกดดันปกติถือเป็นปกติดี ทำไมต้องแรงกดดัน ไม่ใช่ RAM ที่ใช้อยู่ อธิบายความต่าง
การรั่วไหล: แอปที่เกินขนาดปกติไปมากเป็นเวลาหนึ่ง
สำหรับแต่ละแอป Hedroom เรียนรู้ขนาดปกติจากการใช้งานปกติ 7 วันล่าสุดของคุณ และทำเครื่องหมายการรั่วไหลเมื่อเงื่อนไขทั้งหมดนี้เป็นจริงเท่านั้น:
- แอปมีขนาดอย่างน้อย 3 เท่าของขนาดปกติ ที่ 2.5 เท่าจะแสดงเป็น "กำลังโต" เท่านั้น
- ขนาดอย่างน้อย 1 GB หรือ 6% ของ RAM ของคุณหากค่านั้นมากกว่า
- อยู่ที่ระดับนั้นติดต่อกัน 20 นาที หรือยังโตต่อเนื่องตามแนวโน้ม 30 นาที
- ไม่อยู่ในรายการไม่แตะต้องของคุณ ไม่ได้สร้างโดย Apple (มีข้อยกเว้นเล็กน้อยสำหรับแอปของ Apple ที่คุณใช้เอง) และไม่ใช่แอปที่ไลบรารีโพรเซสระบุว่าปกติจะใหญ่ เช่นโปรแกรมตัดต่อวิดีโอหรือ Docker
จนกว่า Hedroom จะเรียนรู้แอปนั้นประมาณ 6 ชั่วโมง จะแจ้งว่ายังเรียนรู้อยู่ สำหรับแอปที่รู้จักชื่อ จะใช้ขนาดทั่วไปจากไลบรารีโพรเซส สำหรับแอปที่ไม่รู้จัก จะทำเครื่องหมายเฉพาะขนาดอย่างน้อย 15% ของ RAM ที่ยังโตอยู่ และบอกว่า "ใหญ่ผิดปกติ" แทนอัตราส่วน
CPU ที่ทำงานเกินควบคุม
แอปเบื้องหลัง (ไม่ใช่แอปที่คุณใช้อยู่) ที่ใช้เฉลี่ย 80% ของหนึ่งคอร์ขึ้นไปนาน 3 นาที และอย่างน้อย 3 เท่าของ CPU เบื้องหลังปกติของแอปนั้นเอง ถือว่าทำงานเกินควบคุม เว้นแต่ไลบรารีระบุว่าปกติจะยุ่ง (คอมไพเลอร์ การสำรองข้อมูล ตัวเข้ารหัสวิดีโอ การทำดัชนี) หรืออยู่ในสาย จะแสดงในวันนี้หลัง 3 นาที การแจ้งเตือนจะรอจนกว่าจะเกิน 10 นาที
การควบคุมความรบกวน
สิ่งที่พบเดียวกันเกี่ยวกับแอปเดียวกันแจ้งเตือนอย่างมากทุก 6 ชั่วโมงครั้งเดียว การแจ้งเตือนที่ไม่เร่งด่วนหยุดที่ 3 ครั้งต่อวัน หากปิดการแจ้งเตือนสามครั้งสำหรับแอปหนึ่ง Hedroom จะหยุดแจ้งเตือนเกี่ยวกับแอปนั้นและเสนอรายการไม่แตะต้อง
3. ตัดสินใจ: หนึ่งข้อเสนอ แล้วด่านความปลอดภัย
เมื่อ Hedroom ทำได้มากกว่าหนึ่งอย่าง จะจัดอันดับตามที่คืนได้เทียบกับความเสี่ยง และแสดงสองอันดับแรก การบังคับออกไม่เคยถูกเสนอเป็นการแก้ไขที่จัดอันดับ
ก่อนการเปิดใหม่ ออก หยุดชั่วคราว หรือย้ายไปคอร์ประหยัดพลังงานทุกครั้ง คำขอจะผ่านด่านความปลอดภัยด่านเดียว ด่านนี้ปฏิเสธเมื่อเป้าหมายคือ:
- Hedroom เอง (ละเว้นอย่างเงียบ ๆ)
- สร้างโดย Apple หรืออยู่ในโฟลเดอร์ระบบ นอกเหนือจากแอปของ Apple ที่คุณใช้เอง ซึ่งคุณเปิดใหม่หรือออกได้ด้วยการคลิกครั้งเดียว
- อยู่ในรายการไม่แตะต้องของคุณ
- แอปที่คุณกำลังใช้อยู่ตอนนี้ เมื่อกฎขอให้หยุดชั่วคราว ย้าย หรือออก
- กำลังเล่นเสียง ใช้ไมโครโฟน หรือเป็นแอปโทรขณะที่กล้องเปิดอยู่
- แอปสำรองข้อมูลขณะกำลังสำรอง
- ไม่ทราบว่ารองรับการถูกหยุดชั่วคราว เมื่อกฎต้องการหยุดชั่วคราวหรือออกจากแอปนั้นและคุณไม่ได้เลือกแอปเอง Hedroom มองไม่เห็นงานที่ยังไม่ได้บันทึกอย่างเชื่อถือได้
- แอปที่ไลบรารีระบุว่าไม่ปลอดภัยที่จะเปิดใหม่ ระหว่างแรงกดดันระดับวิกฤต
- การบังคับออกที่ไม่มีการยืนยันครั้งที่สองแยกต่างหาก
หาก Hedroom ตรวจสอบข้อใดข้อหนึ่งเหล่านี้ไม่ได้ (เช่น การตรวจเสียงล้มเหลว) กฎจะไม่ทำอะไร และการคลิกจะถามคุณก่อน การปฏิเสธจะแสดงพร้อมเหตุผลเป็นประโยคอย่าง "Slack อยู่ในสาย" ไม่ใช่ข้อผิดพลาด ทุกสิ่งที่ถูกปฏิเสธหรือทำไปจะถูกบันทึก ดูเพิ่มเติมในสิ่งที่ Hedroom ไม่ทำเด็ดขาด
4. ลงมือ เมื่อคุณยินยอม
การดำเนินการเล็กและย้อนกลับได้:
- เปิดใหม่ ขอให้แอปออก เหมือนกด ⌘Q รอ แล้วเปิดอีกครั้ง
- คอร์ประหยัดพลังงาน ลดลำดับความสำคัญของแอปเพื่อให้งานทำงานบนคอร์ประหยัดพลังงาน
- หยุดชั่วคราว หยุดแอปไว้จนกว่าคุณจะสลับกลับมา หรือสูงสุด 60 นาที โพรเซสเฝ้าระวังขนาดเล็กให้แอปทำงานต่อแม้ Hedroom ล่ม
การคลิกปุ่มคือความยินยอมสำหรับการดำเนินการนั้น กฎคือความยินยอมที่คุณให้ไว้ล่วงหน้า และเทมเพลตทุกอันส่งมาในสถานะปิด การออกหรือเปิดใหม่ของแอปที่ไม่ทราบว่าปลอดภัยจะถามก่อนเสมอ ไม่มีอะไรถูกลบหากไม่ได้รับอนุญาตจากคุณทุกครั้ง การล้างย้ายไฟล์ไปที่ถังขยะ การแก้ไขและกฎระบุทุกข้อจำกัด
5. ใบเสร็จ: ก่อน หลัง และผลสรุปที่ซื่อตรง
ทุกการดำเนินการสร้างใบเสร็จหนึ่งใบ Hedroom เปรียบเทียบค่าที่วัด 5 นาทีก่อนการดำเนินการกับค่าที่วัด 5 ถึง 15 นาทีหลังจากนั้น โดยข้าม 30 วินาทีแรก (60 วินาทีหลังการเปิดใหม่) ขณะที่ระบบปรับตัว
มีผลลัพธ์ที่ซื่อตรงสี่แบบ:
- วัดแล้ว การเปลี่ยนแปลงอย่างน้อยเท่าขั้นต่ำที่ Hedroom นับ: หน่วยความจำ 100 MB, 10 จุดเปอร์เซ็นต์ของหนึ่งคอร์ CPU, 0.3 W หรือดิสก์ 50 MB
- ไม่มีผล การเปลี่ยนแปลงน้อยกว่านั้น หรือไปทางตรงข้าม ใบเสร็จระบุ "ไม่มีผลที่วัดได้" และไม่อ้างผลงาน
- วัดไม่ได้ แอปอื่นเปลี่ยนมากเกินไปในเวลาเดียวกัน (แอปอื่นเปลี่ยนไปมากกว่า 1 GB แอปใหม่เปิดและใช้เกิน 500 MB คุณออกจากแอปอื่น Mac พักเครื่อง หรือมีการเสียบหรือถอดสายชาร์จ) ใบเสร็จบอกอย่างนั้นแทนการอ้างผลงาน และไม่นับในยอดรวม
- ยกเลิกแล้ว คุณเลิกทำการดำเนินการ หรือ Hedroom ออกก่อนที่การวัดจะเสร็จ จึงไม่อ้างผลงานใด ๆ
ใบเสร็จแต่ละใบยังมีระดับความเชื่อมั่น (สูง ปานกลาง หรือต่ำ) ใบเสร็จที่ความเชื่อมั่นต่ำจะติดป้าย "ค่าคร่าว ๆ" และไม่นับในยอดรวม ใบเสร็จเปรียบเทียบสองช่วงเวลา ไม่ใช่การทดลองแบบควบคุม หากต้องการอ่านใบเสร็จ ดูวิธีอ่านใบเสร็จ
ทำไมต้องแรงกดดันหน่วยความจำ ไม่ใช่ RAM ที่ใช้อยู่
Mac ที่เปิดมาสักพักจะแสดงหน่วยความจำส่วนใหญ่ว่าใช้แล้ว ตามที่ออกแบบไว้ macOS เติมหน่วยความจำว่างด้วยไฟล์แคช เพราะทำให้สิ่งที่คุณเปิดถัดไปเร็วขึ้น และคืนให้ทันทีที่แอปต้องการ แถบหน่วยความจำที่เต็มไม่ใช่ปัญหา สิ่งที่สำคัญคือ macOS กำลังลำบากในการหาที่ว่างหรือไม่ นั่นคือแรงกดดันหน่วยความจำ พร้อมความเร็วที่ swap เพิ่มขึ้น นั่นคือเหตุผลที่ Hedroom ไม่มีปุ่ม "ล้าง" หน่วยความจำ เพราะจะบังคับให้ macOS ทิ้งแคชที่มีประโยชน์ คู่มือเรื่องแรงกดดันและ RAM ที่ใช้อยู่แสดงวิธีตรวจสอบเองใน การตรวจสอบกิจกรรม
อะไรทำให้ใช้ทรัพยากรน้อย
งบของ Hedroom คือเฉลี่ยต่ำกว่า 0.5% ของหนึ่งคอร์ CPU และต่ำกว่า 80 MB ของหน่วยความจำ สิ่งที่วัดได้จนถึงตอนนี้:
| การวัด | ผลลัพธ์ | วันที่ |
|---|---|---|
| CPU ไม่เปิดหน้าต่าง รอบ 5 วินาที | 0.27% ของหนึ่งคอร์ (138 ช่วงภายในการรัน 30 นาที) ขีดจำกัดของการทดสอบ: ต่ำกว่า 0.3% | 2026-10-13 |
| หน่วยความจำ ไม่เปิดหน้าต่าง | มัธยฐาน 29.2 MB สูงสุด 31.7 MB ขีดจำกัด: ต่ำกว่า 80 MB | 2026-10-13 |
| การปลุกเครื่อง ไม่เปิดหน้าต่าง | เฉลี่ย 0.45 ครั้งต่อวินาที ขีดจำกัด: ต่ำกว่า 5 | 2026-10-13 |
| เปิดหน้าจอวันนี้ คงที่ | 0.5% ของหนึ่งคอร์ รอยเท้า 71 MB (390 วินาที ตรวจยืนยันว่าหน้าต่างมองเห็นได้) การรันนี้เป็นเพียงบางส่วน | 2026-10-15 |
อ่านตัวเลขเหล่านี้ว่าเป็นค่าที่วัดได้ ไม่ใช่คำสัญญา เป็น Mac เครื่องเดียว และบางส่วนของการรันใช้รอบ 2 วินาทีที่เร็วกว่า เพราะ Mac เครื่องนั้นอยู่ภายใต้แรงกดดันหน่วยความจำ การรันครั้งแรกหลังติดตั้งจะสแกนพื้นที่จัดเก็บ ใช้เวลาไม่กี่นาทีที่สูงสุดหนึ่งคอร์ ด้วยลำดับความสำคัญต่ำ แท็บอื่นนอกจากวันนี้ยังไม่ได้วัดใหม่ทั้งหมด ก่อนการแก้ไขที่บันทึกไว้ในบันทึกเดียวกัน หน้าต่างที่เปิดอยู่ใช้ 20 ถึง 40% ของหนึ่งคอร์ ซึ่งพบจากการทดสอบนี้และแก้ไขแล้ว ไฟล์ดิบและบทเขียนฉบับเต็มอยู่ในโฟลเดอร์ bench/results ของที่เก็บโค้ด และการตั้งค่าแสดงต้นทุนที่วัดได้ของ Hedroom เองบน Mac ของคุณ ด่านก่อนเผยแพร่คือเบนช์มาร์กและการรันวัดภาระบนบิลด์ที่ลงลายเซ็น ซึ่งยังไม่เกิดขึ้น
สิ่งที่ทำให้เบา: ตัวสุ่มวัดตัวเดียวสำหรับทุกอย่าง รอบที่ช้าลงเมื่อไม่มีอะไรเกิดขึ้น การสแกนต่อแอปทุกไม่กี่รอบในเบื้องหลัง เนื้อหาหน้าต่างที่สร้างเฉพาะเมื่อหน้าต่างอยู่บนหน้าจอ และแอนิเมชันที่หยุดเมื่อหน้าต่างถูกซ่อน
สิ่งที่ปฏิเสธจะแตะต้อง
- macOS เอง: ทุกอย่างที่ลงลายเซ็นโดย Apple หรืออยู่ในโฟลเดอร์ระบบ Hedroom อธิบายโพรเซสเหล่านี้ เช่น
kernel_taskและWindowServerและไม่หยุดชั่วคราว ทำให้ช้าลง หรือออกจากโพรเซสเหล่านั้นเด็ดขาด ดูอธิบาย kernel_task, WindowServer และโพรเซสอื่น ๆ - แอปที่อยู่ตรงหน้าคุณ แอปที่อยู่ในสาย แอปที่กำลังเล่นเสียงหรือใช้ไมโครโฟนหรือกล้อง แอปสำรองข้อมูลระหว่างการสำรอง
- แอปในรายการไม่แตะต้องของคุณ
- ไฟล์ของคุณ เว้นแต่คุณยืนยันการลบแต่ละครั้งด้วยตัวเอง การล้างไปที่ถังขยะก่อน
รายการทั้งหมด พร้อมการทดสอบรองรับทุกบรรทัด อยู่ที่สิ่งที่ Hedroom ไม่ทำเด็ดขาด ถัดไป: ทุกฟีเจอร์และข้อจำกัด Hedroom เปรียบเทียบอย่างไร และอภิธานศัพท์