Kext Nedir, Ne İşe Yarar, Nasıl ve Nereye Kurulur

KaoS

USTA YODA
MODERATOR
DENEYİMLİ ÜYE
1 Eki 2017
9,397
2,361
4,401
pngguru.com.png


Kext Nedir, Ne İşe Yarar ?
Kext açılımı itibari ile Kernel Extensions anlamını taşır yani Türkçe'ye çevirirsek Çekirdek Uzantısı anlamındadır. Burada ufak bir noktaya değinmek isterim Kernel yani Çekirdek işletim sisteminin temelini oluşturan bir mimari diye adlandırsak sanırım yanlış olmaz tabi burada Kernel nedir ne işe yarar gibi detaylara girmeyeceğim, her işletim sistemini oluşturan çekirdek yapısı farklıdır bunu en çok linux dağıtımlarında görmekteyiz. Çekirdek uzantısı yani konumuz olan Kext ise çekirdeğin çevre birimler ile olan bağlantısını sağlamaktır ve bu sistem sadece macOS işletim sistemine özgüdür, windows üzerinde ise bu sisteme sürücü adı verilir donanımlar sürücüler olmadan çalışmaz iken macOS üzerinde de donanımlar çekirdeğe uyumlu uzantılar olmadan çalışmazlar. Bu yüzden eski bir çekirdek uzantısı yeni bir macOS sürümünde çalışmayacaktır çünkü farklı çekirdekler üzerine tanımlıdırlar. Her Kext işletim sisteminin çekirdeğine (kernel) göre yapılandırılır ve kullanılır. Yeni yazılmış yada derlenmiş bir kextin eski macOS sürümleri üzerinde çalışması mümkündür, bazı durumlarda ise yeni yazılmış bir Kext eski macOS ve/veya OS X sürümlerinde çalışmayabilir hatta sistemin açılmamasına sebep olabilir.

Kext Nasıl ve Nereye Kurulur ?
Normal macOS kullanıcıları için Kext'in kurulabileceği iki konum bulunmaktadır bunlar;
  • S/L/E System/Library/Extensions (Sistem/Kitaplık/Extensions)
  • L/E Library/Extensions (Kitaplık/Extensions)
Hackintosh kullanıcıları için ise Kext'in kurulabileceği üç konum bulunmaktadır bunlar;
  • S/L/E System/Library/Extensions (Sistem/Kitaplık/Extensions)
  • L/E Library/Extensions (Kitaplık/Extensions)
  • Eğer Clover Bootloader kullanılıyor ise E/C/K/O (EFI/Clover/Kexts/Other) (Bazı durumlarda işletim sistemi numarasına göre 10.11-10.12-10.13-10.14-10.15)
  • Eğer OpenCore Bootloader kullanılıyor ise E/O/K (EFI/OC/Kexts)
Kextlerin hangi konumlara kurulabileceğini öğrendiğimize göre nasıl kurulacağına bir göz atalım.

Kext kurulumları hangi konuma kurulacağına göre değişmektedir.
Eğer Clover bootloader kullanıyorsak ve E/C/K/O içerisine bir Kext eklemek istiyorsak config dosyamızda "Inject Kexts=Yes" olarak ayarlı olması ve yükleyeceğimiz kexti E/C/K/O konumuna eklememiz yeterlidir ek bir ayar yapılmasına gerek yoktur. Windows yanına kurulum yapılan MBR kurulumlarda SIP devre dışı bırakılması gerekebilir.

Eğer OpenCore bootloader kullanıyorsak ve E/O/K içerisine bir Kext eklemek istiyorsak ilgili kexti bu konuma ekledikten sonra config dosyamızı OpenCore Configurator ile açıp Kernel sekmesine gelip kextin konumunu göstererek config dosyamıza işlememiz gerekmektedir. OpenCore bootloader dosya EFI/OC/Kexts içerisinde olsa dahi config dosyasında olmayan bir kexti sisteme enjekte etmez ve Kext kullanılmaz bu yüzden her kullanılacak Kext config içerisinde ekli olmalıdır.

Bootloader farketmeksizin (SIP ve Gatekeeper devre dışı olmak kaydıyla) S/L/E ve L/E konumlarına Kext yüklemek için ise iki farklı yol izlenebilir tavsiyemiz birinci yolu kullanmanızdır.

Herhangi bir Kext yükleme programı örneğin KCPM Utility Pro ile kextin yükleneceği konum seçilir ve Kext belirtilir bu aşamadan sonra gerekli işlemleri program kendisi halletmektedir ekstradan bir (programın ayarları ile oynanmadı ise) rebuild cache işlemine gerek kalmaz sistem yeniden başladıktan sonra ilgili Kext çalışmaya başlayacaktır.

İkinci yöntem ise biraz daha işi kavramış ve program kullanmak istemeyenlerin tercih ettiği yöntemdir. Bu yöntemde ilgili Kext hangi konuma yüklenecek ise kopyala-yapıştır metotu ile konuma eklenir ve terminal açılarak "sudo kextcache -i /" komutu yazılır şifre girildikten sonra rebuild cache işlemi başlar ve bittikten sonra sistem yeniden başladığında Kext çalışmaya başlar.

Dipnot : Kextler her konumda aynı şekilde çalışmaktadır, fakat Clover Bootloader kextleri her zaman düzgün şekilde sisteme enjekte edemediği için bazı durumlarda sorunlar yaşanabilmektedir bu yüzden Clover Bootloader kullanan kişiler genelde kextlerini S/L/E ve/veya L/E içerisine kurmaktadırlar, güncel Clover Bootloaderda ve OpenCore Bootloaderda bu sorunlar yaşanmamaktadır. Bu yüzden kextleri EFI içerisinde kullanmak en mantıklısı olacaktır.

Kextlerimizi nereye ve nasıl kuracağımızın mantığını kavradığımıza göre gelelim biz Hackintosh kullanıcıları için önemli bazı kextleri tanımaya.
 
Son düzenleme:
Laptop Modeli
Lenovo IdeaPad 300-15isk
Anakart Modeli
1- Asus TUF H310-Plus Gaming 2-Asus P8H61
İşlemci Modeli
1- i5 9400F 2- i5-2400
Grafik Kartı
1- RX 570VR 2- 9600GT
Ses Kartı Modeli
1- Realtek ALC887 2- Realtek ALC888B
Ağ Aygıtları
1- İntel L211 2- Realtek RTL8169
Disk ve RAM
1- 240 GB SSD & 1000 GB HDD & 16 GB DDR4 2- 240 GB SSD & 500 GB HDD & 16 GB DDR3

montezuma

MASTER YODA
Yönetici
19 Eki 2016
25,166
6,134
4,401
Eline sağlık.
 
Anakart Modeli
Asus Z170 Deluxe
İşlemci Modeli
Intel i7 6700K
Grafik Kartı
8 GB Sapphire RX 580 & HD 530
Ses Kartı Modeli
ALC 1150
Ağ Aygıtları
Broadcom BCM43xx - I211 Gigabit Ethernet
Disk ve RAM
500GB NVMe & 32 GB DDR4

Benzer konular

AD Engelleyici Tespit Edildi

Anlıyoruz, reklamlar can sıkıcı!

Elbette, reklam engelleme yazılımı reklamları engelleme konusunda harika bir iş çıkarsa da, web sitemizin faydalı özelliklerini de engeller. En iyi site deneyimi ve bize destek olmak için lütfen AdBlocker’ınızı devre dışı bırakın.

AD Reklam Engelleyiciyi Devre Dışı Bıraktım    Hayır teşekkürler