Thanks to visit codestin.com
Credit goes to cpu.emircandemir.com

Ana içeriğe geç

CPU'ya“Sen”iKatmak

Bir programı çalıştırınca CPU, RAM, disk ve kernel perde arkasında ne yapar? Hiç bilmeyenler için kolaydan zora ilerleyen bu rehberde bit/byte temelleri, bellek hiyerarşisi, process, syscall, multitasking, shell, sanal bellek, ELF, fork/COW ve Linux program yükleme akışını adım adım öğren.

Uyarlama: Emircan Demir · Asıl eser: Lexi Mattick & Hack Club · Mayıs 2026

En başından…

Bilgisayarlarla pek çok şey yaptım, ama bilgimde hep bir boşluk vardı: Bilgisayarında bir program çalıştırdığında tam olarak ne oluyor? Bu soruya takılıp kalıyordum; gerekli low-level bilginin büyük kısmına sahiptim ama parçaları bir araya getirmekte zorlanıyordum. Programlar gerçekten doğrudan CPU üzerinde mi çalışıyor, yoksa arada başka şeyler mi oluyor? Syscall’ları kullanıyordum ama bunlar nasıl çalışıyordu? Aslında neydiler? Birden fazla program aynı anda nasıl çalışabiliyordu?

Karalanmış bir dijital çizim. Uzun saçlı birisi, ikili dosyaları okuyan bir bilgisayara bakarken kafası karışıyor. Aniden aklına bir fikir geliyor. Duruşu bozuk bir masaüstü bilgisayarda araştırmaya başlıyor.

Sonunda dayanamadım ve olabildiğince çok şeyi çözmeye koyuldum. Üniversiteye gitmiyorsan bu konuda derli toplu sistem kaynağı pek yok; bu yüzden kalite seviyesi değişen, bazen de birbiriyle çelişen tonla kaynağı taramak zorunda kaldım. Birkaç haftalık araştırma ve neredeyse 40 sayfalık nottan sonra, bilgisayarların açılıştan program yürütmeye kadar nasıl çalıştığına dair çok daha sağlam bir zihinsel modele sahip olduğumu düşünüyorum. Ben bunları öğrenirken elimde böyle bir yazı olmasını çok isterdim, o yüzden keşke biri benim için yazsaydı dediğim makaleyi şimdi ben yazıyorum.

Bu Yazı Hangi Soruya Cevap Veriyor?

Bir uygulamaya çift tıkladığında ya da terminalde bir komut çalıştırdığında olay şuna benzer: programın dosyası diskten okunur, bellekte ona güvenli bir çalışma alanı hazırlanır, CPU bu alandaki talimatları sırayla yürütür, kernel ise hem kaynakları paylaştıran hem de herkesin kendi sınırında kalmasını sağlayan hakem gibi davranır.

Bu yazı o tek cümleyi yavaş yavaş açıyor: CPU talimatları nasıl okur, RAM neden herkese ayrıymış gibi görünür, aynı anda birden fazla program nasıl çalışır, syscall neden gerekir ve Linux bir dosyayı gerçek bir programa nasıl dönüştürür?

Okurken Bilmen Gereken 6 Kavram

KavramHalk diliyle kısa karşılığı
CPUTalimatları okuyup uygulayan işlemci; bilgisayarın hesap yapan motoru.
RAMÇalışan programların o anda kullandığı hızlı çalışma masası.
Disk/SSDProgramların ve dosyaların kapalıyken de durduğu kalıcı depo.
KernelDonanımı, belleği ve programları yöneten işletim sistemi çekirdeği.
ProcessÇalışan bir programın işletim sistemi tarafından takip edilen örneği.
SyscallProgramın kernel’dan dosya okuma, bellek ayırma gibi kontrollü yardım istemesi.

Yol Haritası

BölümBaşlıkNe Öğreneceksin?
1Başlamadan ÖnceBit, byte, binary, hex, ASCII, bellek adresi, assembly nedir?
2TemellerCPU register’ları, instruction pointer, kernel/user modu, syscall nedir?
3Bellek HiyerarşisiRegister → cache → RAM → disk piramidi, SRAM/DRAM, locality
4Zamanı DilimleTimer interrupt, preemptive multitasking, zaman dilimleri, context switch
5Modern İşlemci TeknikleriPipeline, superscalar, branch prediction, multi-core, SMT, SIMD
6Program Nasıl Çalıştırılır?execve syscall’ı, kernel’ın binary format dedektifliği, shebang, binfmt_misc
7Shell’den Kernel’eShell, PATH, fork+execve, pipeline, yönlendirme, environment variables
8Bir ELF Ustasına DönüşmekELF formatı, program header, section header, static vs dynamic linking, GOT/PLT
9Bilgisayarındaki ÇevirmenSanal bellek, page table, MMU, TLB, higher-half kernel, segfault, demand paging
10Container ve İzolasyonNamespaces, cgroups, seccomp, capabilities, pivot_root
11Fork’lar ve COW’lar Üzerinefork syscall’ı, Copy-on-Write, init process, boot zinciri
12Son SözBüyük resim, stack/heap, ek okumalar

Kısayol: İlk kez okuyorsan 1., 2. ve 3. bölümleri atlama; oradaki CPU, bellek, syscall ve multitasking temeli sonraki bölümlerin yükünü azaltır. Bu konulara zaten hâkimsen doğrudan 6. bölüme geçebilirsin.

Bir şeyi ancak başka birine açıklayabildiğinde gerçekten anladığını söylerler ya, biraz da o hesap.

Acelen mi var? Register, user/kernel mode, syscall ve process kelimeleri sana yabancı değilse hızlı rota açık:

6. bölüme geç; Linus Torvalds’ın kendisi değilsen muhtemelen yeni bir şey öğreneceksin.


1. bölüme devam et: Başlamadan Önce