Sistem Programlama

Apple Internals

XNU kernel'dan Apple Silicon'a, XPC'den Secure Enclave'e — Apple platform mimarisini içten dışa inceleyen teknik notlar.

Mimari Yığınkullanıcı → donanım
KullanıcıApps & SwiftL1
FrameworkFoundation / UIKitL2
SistemXPC / launchdL3
KernelXNU / MachL4
DonanımApple SiliconL5
Kernel & Core OS13 konu
XNU Kernel

Mach microkernel + BSD katmanı. Task, thread, port, mesaj mekanizmaları ve Mach-O binary formatı.

Yakında
Mach IPC

Port rights, send/receive, mach_msg(). Apple'ın tüm IPC altyapısının temel taşı.

Yakında
IOKit

Kernel-space sürücü çerçevesi. DriverKit ile user-space sürücü geliştirme.

Yakında
Mach-O Format

Binary format, load commands, segments, sections. dyld ve dynamic linking süreçleri.

Yakında
Mach Tasks & Threads

Mach'in temel soyutlamaları: task (kaynak konteyneri), thread (yürütme birimi), act/uthread eşleşmesi ve proc ile ilişkisi.

Yakında
Mach Ports & MIG

Port hakları (send/receive/send-once), ipc_entry tablosu ve MIG ile üretilen RPC iskeletinin Mach IPC üzerinde işleyişi.

Yakında
Mach VM (Sanal Bellek)

vm_map, vm_object, pmap katmanı, sayfa hatası yolu, copy-on-write ve Mach sanal belleğinin POSIX belleğine temel oluşu.

Yakında
Scheduler & Thread States

XNU run queue'ları, öncelik bantları, AMP çekirdeklerde QoS/clutch zamanlayıcı ve thread blokla/uyandır mekanizmaları.

Yakında
BSD Syscall Yolu

Trap'tan sysent tablosuna sistem çağrılarının (Unix, Mach trap) girişi, copyin/copyout ve dispatch mantığı.

Yakında
VFS & Dosya Sistemi Katmanı

vnode/mount soyutlamaları, VFS operasyon vektörleri ve çekirdeğin dosya sistemlerini (APFS dahil) soyutlama biçimi.

Yakında
Kext Yükleme & KernelManagement

kmutil, boot/AuxKC kernel collection ve KernelManagement ile modern, imzalı kext yükleme.

Yakında
Zone Allocator & kalloc

zalloc/kalloc çekirdek bellek tahsisi, zone'lar ve kalloc_type ile güvenlik amaçlı tip ayrımı (heap sertleştirme).

Yakında
DriverKit & Sistem Uzantıları

Sürücülerin çekirdek dışına (user-space) taşınması: DriverKit çalışma zamanı, dext yaşam döngüsü ve SystemExtensions ile yükleme.

Yakında
Sistem Servisleri10 konu · 2 yayında
XPC

Güvenli süreçler arası iletişim. XPC servisleri, privilege separation ve sandbox entegrasyonu.

Mevcutaç →
launchd

PID 1'in mimarisi. Launch agents, daemons, plist formatı ve servis yönetimi.

Yakında
dyld

Dynamic linker, shared cache, dylib yükleme sırası ve ASLR.

Yakında
Automator

macOS otomasyon altyapısı, Apple Script köprüsü ve özel Action geliştirme.

Devam Ediyoraç →
Bootstrap & launchd IPC

PID 1 launchd'in açılışta Mach bootstrap port'unu alıp tüm sistemin servis isim alanını (bootstrap_look_up/register) yönetmesi.

Yakında
dyld Shared Cache

Sistem kütüphanelerinin tek bir önceden bağlanmış imajda birleştirildiği paylaşımlı önbellek, ASLR slide'ı ve başlangıç maliyeti.

Yakında
Grand Central Dispatch İç Yapısı

libdispatch kuyruk hiyerarşisi, pthread workqueue ile çekirdekle anlaşan thread havuzu ve dispatch source'ların kernel olaylarına bağlanışı.

Yakında
Unified Logging (os_log & logd)

os_log'un derlenmiş format string'leri ve halka tamponlu .tracev3 deposuyla syslog'un yerini alan merkezi logd mimarisi.

Yakında
Sistem Daemonları

configd, notifyd, distnoted, cfprefsd, opendirectoryd, coreduetd gibi çekirdek daemonların görev dağılımı ve XPC/notify haberleşmesi.

Yakında
Spotlight & Metadata (mds)

mds/mdworker daemonlarının importer eklentileriyle meta veri toplayıp store.db'ye yazması ve mdfind sorgu yolu.

Yakında
Runtime & Diller12 konu · 2 yayında
XcodeKit

Xcode kaynak editörü uzantıları. SourceKit entegrasyonu, syntax highlighting, code actions.

Mevcutaç →
TipKit

Kullanıcı ipucu sistemi. Tip kuralları, eligibility, display frequency ve persistence.

Mevcutaç →
Swift Macros

SE-0382 attached macros, freestanding macros. SwiftSyntax ile macro implementasyonu.

Yakında
Swift Concurrency

Actor isolation, task hierarchy, Sendable protocol ve cooperative thread pool.

Yakında
Objective-C Runtime (objc_msgSend)

isa/sınıf-meta yapısı, method cache, selector/IMP çözümü; objc_msgSend'in elle yazılmış assembly mesaj yolu ve tagged pointer'lar.

Yakında
ARC & Bellek Yönetimi

retain/release çağrı yerleştirme, autorelease pool mekaniği, zayıf referans side-table'ları ve derleyici-runtime el sıkışmaları.

Yakında
Swift ABI & Tip Metadata

Sabit ABI, tip metadata kayıtları, value witness table'lar, isim parçalama (mangling) ve kalıcı çağrı kuralı.

Yakında
Protocol & Witness Tabloları

Protocol witness table'lar, existential kutu yerleşimi, associated type'lar ve generic kodda runtime tip ikamesi.

Yakında
Foundation Internals: NSObject & KVO/KVC

NSObject kök sınıf semantiği, KVC anahtar çözümü, KVO'nun isa-swizzle ile gözlem sınıfı türetmesi ve toll-free bridging.

Yakında
Blocks Runtime

Block literal yerleşimi, stack/malloc/global blok tipleri, __block yakalama ve Block_copy/Block_release ABI'si (libclosure).

Yakında
libSystem & libc

libSystem.dylib şemsiyesi altında libc, libpthread, libdispatch, libmalloc katmanları ve syscall ince sarmalayıcıları.

Yakında
CFRunLoop & Event Sources

CFRunLoop'un Mach port, timer ve source0/source1 soyutlamalarıyla bir thread'i olay beklerken bloklayıp uyandırması.

Yakında
Güvenlik Altyapısı12 konu
Sandbox

App Container mimarisi, sandbox profiles, entitlements ve TCC (Transparency, Consent, Control).

Yakında
SIP & Gatekeeper

System Integrity Protection, rootless mekanizması, notarizasyon ve code signing zinciri.

Yakında
Secure Enclave

SEP mimarisi, şifreleme key yönetimi, biometrik veriler ve LocalAuthentication framework.

Yakında
Keychain

Security framework, keychain access groups, iCloud Keychain sync ve CryptoKit.

Yakında
Code Signing Internals

cs_blobs, CodeDirectory, cdhash, adhoc/fairplay imzalar ve çekirdekteki AMFI/vnode doğrulama akışı.

Yakında
AMFI & Trust Cache

AppleMobileFileIntegrity kext'i, amfid yardımcısı, statik/dinamik trust cache ve platform binary'nin imza zorlamasındaki rolü.

Yakında
Entitlements & Provisioning

Hak (entitlement) sözlüklerinin imzaya gömülmesi, restricted/private hak'lar, provisioning profile doğrulaması ve hassas anahtarlar.

Yakında
TCC (Transparency, Consent, Control)

tccd, TCC.db izin veritabanları, kullanıcı onayı akışı ve mahremiyet erişim kararlarının saklanması.

Yakında
Endpoint Security

ES istemci modeli, auth/notify olayları, es_message akışı ve kext sonrası dönemde EDR/izleme araçlarının desteklenen yolu.

Yakında
Data Protection & FileVault

Dosya başına anahtarlar, NSFileProtection sınıfları, anahtar hiyerarşisi, Effaceable Storage ve FileVault'un SEP/AES motoruyla bağı.

Yakında
Sealed System Volume (SSV)

Salt-okunur sistem birimi, APFS snapshot mühürleme, cryptex katmanları ve SSV seal hash zincirinin boot bütünlüğündeki rolü.

Yakında
XProtect & MRT

XProtect imza tabanlı tarama, Yara kuralları ve XProtect Remediator/MRT temizleme motoruyla arka planda kötücül yazılım kaldırma.

Yakında
Donanım & Platform12 konu · 1 yayında
Apple Silicon

ARM64e mimarisi, unified memory, performance/efficiency core scheduling ve Metal GPU.

Yakında
iBoot & Secure Boot

Boot chain, LLB, iBoot, kernelcache. Boot trust zinciri ve Recoverymode.

Yakında
Metal Shading Language

MSL belirtimi (Sürüm 4): C++17 tabanlı GPU gölgelendirici dili, veri türleri, adres alanları ve standart kütüphane.

Mevcut
Metal Framework

Low-level GPU API. Command buffers, render pipelines, compute shaders ve Metal Performance Shaders.

Yakında
ARM64e & Pointer Authentication

PAC anahtarlarıyla (IA/IB/DA/DB) işaretçi imzalama/doğrulama, pacia/autia komutları ve ROP/JOP saldırılarına donanım koruması.

Yakında
Secure Boot Chain & Image4

Boot ROM → LLB → iBoot → kernelcache güven zinciri, Image4 (img4/IM4M) imza manifestoları ve donanıma kazınmış kök güven.

Yakında
DeviceTree & IORegistry

iBoot'un kernele aktardığı DeviceTree donanım tanımı ve çalışma zamanında IOKit nesne grafiğine (IORegistry) dönüşümü.

Yakında
Rosetta 2

x86-64'ten ARM64'e AOT + JIT ikili çeviri, TSO bellek modeli emülasyonu ve donanım destekli total store ordering.

Yakında
Memory: 16K Pages & APRR

16K sayfa boyutunun TLB etkisi, stage-1/stage-2 sayfa tabloları ve APRR/SPRR ile sayfa izinlerinin donanımda yeniden eşlenmesi (JIT, PPL).

Yakında
Secure Enclave (SEP) Donanımı

Ayrı SEP işlemcisi, güvenli mailbox kanalı, kök kriptografik anahtarlar, SKS ve ana çekirdekten donanımsal izolasyon.

Yakında
AMX & Neural Engine

Apple Matrix Extension koprosesörü ve ANE'nin matris/konvolüsyon hızlandırma yolu — Accelerate/CoreML'in donanıma indiği nokta.

Yakında
Hypervisor & Apple Silicon VM

Donanım sanallaştırma (EL2, stage-2 çeviri), Hypervisor.framework primitifleri ve Virtualization.framework ile misafir VM'ler.

Yakında
Tüm sayfalar

59 konu · 5 mimari katman · 5 bölüm