Ana içeriğe geç
Programlama

C dili tanımsız davranışları azaltmaya odaklanıyor

Öne çıkanlar

  • C standardındaki yaklaşık 100 tanımsız davranış durumundan 45 tanesi C2y taslağından çıkarıldı.
  • C standart komitesi bellek modeli, bellek güvenliği ve tanımsız davranışlar için üç ayrı çalışma grubu kurdu.
  • C23 standardı K&R tarzı işlev tanımlarını ve belirsiz optimizasyonlara yol açan donanım varsayımlarını kaldırdı.

C standart komitesi, dildeki belirsizlikleri gidermek amacıyla tanımsız davranış durumlarını azaltma çalışmalarını sürdürüyor. C standartlarında yer alan yaklaşık 100 tanımsız davranış örneğinden 45 adedi, üzerinde çalışılan C2y taslağı kapsamında yürürlükten kaldırıldı. Komite bünyesinde bellek nesne modeli, bellek güvenliği ve tanımsız davranış konularına özel üç ayrı çalışma grubu faaliyet gösteriyor.

Tanımsız davranışlar, C dilinin ilk dönemlerinde çok çeşitli donanım mimarilerini desteklemek ve derleyicilere agresif optimizasyon alanı tanımak amacıyla tanımlandı. Ancak bu durum modern derleyicilerin güvenlik açıklarına yol açabilen optimizasyonlar yapmasına ve geliştiriciler arasında semantik anlaşmazlıklar çıkmasına neden oldu. C23 sürümü, zaman yolculuğu optimizasyonlarını engelleyerek ve eski donanım kalıntılarını temizleyerek bu risklerin bir kısmını ortadan kaldırdı.

Bellek güvenliği tarafında ise tür, uzamsal ve zamansal olmak üzere üç temel başlıkta ilerleme kaydediliyor. Derleyicilere eklenen counted_by özniteliği ve gelişmiş dizi sınırı denetimleri uzamsal güvenliği güçlendirirken, zamansal hatalar için CHERI mimarisi ve Fil-C gibi harici araçlar öne çıkıyor. Geliştiriciler, kısıtlanmış dil modelleri ve biçimsel doğrulama yöntemleriyle C dilinin güvenliğinin zamanla daha pratik hale geleceğini aktarıyor.

Kaynak

Bu özet yapay zekâ ile hazırlanmıştır; ayrıntılar ve doğrulama için orijinal kaynağa başvurun.