Skip to content
Discussion options

You must be logged in to vote
Admin verified this answer by erkanalperen54-boop May 27, 2026

Sistem uykuya geçerken veya bir çekirdek boşa çıkıp kapatılmak istendiğinde, IOCPU nesneleri ilgili çekirdeğin durumunu CPU_STATUS_ONLINE modundan CPU_STATUS_OFFLINE moduna çeker. Bu süreçte veri kaybını önlemek için çok katı bir Cache Coherency (Önbellek Tutarlılığı) protokolü işletilir:

  1. Thread Tahliyesi: Çekirdek offline yapılmadan önce, IOCPU scheduler'ı uyararak o çekirdek üzerindeki tüm aktif thread'leri diğer canlı çekirdeklere taşır (migration) ve yeni thread alımını kapatır.
  2. Cache Flushing (Önbellek Temizliği): Çekirdek donanımsal olarak kapatılmadan hemen önce, XNU alt seviye işlemci komutlarını (ARM'da DC CISW gibi) tetikler. Bu komutlar, çekirdeğin sadece kendisine özel olan L…

Replies: 1 comment

Comment options

You must be logged in to vote
0 replies
Answer verified by Admin May 27, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Category
Q&A
Labels
None yet
2 participants