Linux i386 Önyükleme Kodu NASIL

Çeviren: A.Kemal Ökmen

Yazan: Feiyun Wang

Yasal Açıklamalar

Bu belgenin, Linux i386 Önyükleme NASIL çevirisinin 1.0 sürümünün telif hakkı © 2006 A. Kemal Ökmen'e, özgün İngilizce sürümünün telif hakkı © 2003, 2004 Feiyun Wang'a aittir. Bu belgeyi, Free Software Foundation tarafından yayınlanmış bulunan GNU Özgür Belgeleme Lisansının 1.2 ya da daha sonraki sürümünün koşullarına bağlı kalarak kopyalayabilir, dağıtabilir ve/veya değiştirebilirsiniz. Bu Lisansın bir kopyasını http://www.gnu.org/copyleft/fdl.html adresinde bulabilirsiniz.

BU BELGE "ÜCRETSİZ" OLARAK RUHSATLANDIĞI İÇİN, İÇERDİĞİ BİLGİLER İÇİN İLGİLİ KANUNLARIN İZİN VERDİĞİ ÖLÇÜDE HERHANGİ BİR GARANTİ VERİLMEMEKTEDİR. AKSİ YAZILI OLARAK BELİRTİLMEDİĞİ MÜDDETÇE TELİF HAKKI SAHİPLERİ VE/VEYA BAŞKA ŞAHISLAR BELGEYİ "OLDUĞU GİBİ", AŞİKAR VEYA ZIMNEN, SATILABİLİRLİĞİ VEYA HERHANGİ BİR AMACA UYGUNLUĞU DA DAHİL OLMAK ÜZERE HİÇBİR GARANTİ VERMEKSİZİN DAĞITMAKTADIRLAR. BİLGİNİN KALİTESİ İLE İLGİLİ TÜM SORUNLAR SİZE AİTTİR. HERHANGİ BİR HATALI BİLGİDEN DOLAYI DOĞABİLECEK OLAN BÜTÜN SERVİS, TAMİR VEYA DÜZELTME MASRAFLARI SİZE AİTTİR.

İLGİLİ KANUNUN İCBAR ETTİĞİ DURUMLAR VEYA YAZILI ANLAŞMA HARİCİNDE HERHANGİ BİR ŞEKİLDE TELİF HAKKI SAHİBİ VEYA YUKARIDA İZİN VERİLDİĞİ ŞEKİLDE BELGEYİ DEĞİŞTİREN VEYA YENİDEN DAĞITAN HERHANGİ BİR KİŞİ, BİLGİNİN KULLANIMI VEYA KULLANILAMAMASI (VEYA VERİ KAYBI OLUŞMASI, VERİNİN YANLIŞ HALE GELMESİ, SİZİN VEYA ÜÇÜNCÜ ŞAHISLARIN ZARARA UĞRAMASI VEYA BİLGİLERİN BAŞKA BİLGİLERLE UYUMSUZ OLMASI) YÜZÜNDEN OLUŞAN GENEL, ÖZEL, DOĞRUDAN YA DA DOLAYLI HERHANGİ BİR ZARARDAN, BÖYLE BİR TAZMİNAT TALEBİ TELİF HAKKI SAHİBİ VEYA İLGİLİ KİŞİYE BİLDİRİLMİŞ OLSA DAHİ, SORUMLU DEĞİLDİR.

Tüm telif hakları aksi özellikle belirtilmediği sürece sahibine aittir. Belge içinde geçen herhangi bir terim, bir ticari isim ya da kuruma itibar kazandırma olarak algılanmamalıdır. Bir ürün ya da markanın kullanılmış olması ona onay verildiği anlamında görülmemelidir.

Mart 2006

Bu çevirinin sürüm bilgileri:

Gelişim
Sürüm 1.0Mart 2006akö
İlk çeviri
 

Özgün belgenin sürüm bilgileri:

Gelişim
Sürüm 1.02004-02-19FW
İlk yayın, LDP tarafından gözden geçirildi
 
Sürüm 0.3.32004-01-23fyw
decompress_kernel() ayrıntıları eklendi; TLDP son gözden geçirme hataları düzeltildi.
 
Sürüm 0.32003-12-07fyw
SMP, GRUB ve LILO içerikleri eklendi; Düzeltme ve geliştirme.
 
Sürüm 0.22003-08-17fyw
Linux 2.4.20'ya uyarlandı.
 
Sürüm 0.12003-04-20fyw
DocBook XML biçimine dönüştürüldü.
 

Özet

Bu belge Linux i386 önyükleme kodu için bir çalışma kılavuzu ve kaynak kod açıklamaları sunar. C-benzeri yalancı kaynak kod açıklamalarına ek olarak, çekirdek geliştirme ile ilgili araç silsilelerinin önemli notlarını ve belirtimlerini de sunar.

Aşağıdaki konularda yardımcı olmak için tasarlanmıştır:

  • Çekirdek konusunda acemilerin Linux i386 önyükleme kodunu anlaması ve
  • Çekirdek konusunda tecrübelilerin Linux önyükleme işlemini hatırlamaları.


İçindekiler

1.1. Giriş
1.1.1. Teşekkür
1.1.2. Geribildirim
1.1.3. Çeviriler

1.2. Linux Makefile'lar
1.2.1. linux/Makefile
1.2.2. linux/arch/i386/vmlinux.lds
1.2.3. linux/arch/i386/Makefile
1.2.4. linux/arch/i386/boot/Makefile
1.2.5. linux/arch/i386/boot/compressed/Makefile
1.2.6. linux/arch/i386/tools/build.c
1.2.7. Kaynakça

1.3. linux/arch/i386/boot/bootsect.S
1.3.1. Bootsect'i Taşı
1.3.2. Disk parametrelerini Al
1.3.3. Kurulum Kodunu Yükle
1.3.4. Sıkıştırılmış İmgeyi Yükle
1.3.5. Ayarlara Git
1.3.6. Diski Oku
1.3.7. Bootsect Yardımcısı
1.3.8. Muhtelif
1.3.9. Kaynakça

1.4. linux/arch/i386/boot/setup.S
1.4.1. Başlık
1.4.2. Kod Bütünlüğünü Kontrol Et
1.4.3. Yükleyici Türünü Kontrol Et
1.4.4. Bellek Boyutunu
1.4.5. Donanım Desteği
1.4.6. APM Desteği
1.4.7. Korumalı Kip için Hazırlık
1.4.8. A20'yi Etkinleştir
1.4.9. Korumalı Kipe Geç
1.4.10. Muhtelif
1.4.11. Kaynakça

1.5. linux/arch/i386/boot/compressed/head.S
1.5.1. Sıkıştırılmış Çekirdeğin Açılması
1.5.2. gunzip()
1.5.3. inflate()
1.5.4. Kaynakça

1.6. linux/arch/i386/kernel/head.S
1.6.1. Sayfalamayı Etkinleştir
1.6.2. Çekirdek Parametrelerini Al
1.6.3. İşlemci Türünü Kontrol Et
1.6.4. Çekirdeği Başlat
1.6.5. Muhtelif
1.6.6. Kaynakça

1.7. linux/init/main.c
1.7.1. start_kernel()
1.7.2. init()
1.7.3. cpu_idle()
1.7.4. Kaynakça

1.8. SMP Önyükleme
1.8.1. smp_init() Öncesi
1.8.2. smp_init()
1.8.3. linux/arch/i386/kernel/trampoline.S
1.8.4. initialize_secondary()
1.8.5. start_secondary()
1.8.6. Kaynakça

A. Çekirdek Derleme ve Kurulum Örneği
B. Dahili İlintileme Betiği
C. GRUB ve LILO
C.1. GNU GRUB
C.2. LILO
C.3. Kaynakça

D. SSS