Uzun süredir Linux kullanıcısıysanız, Linux dağıtımlarının benzersiz sürümleri olduğunu ve her sürümün belirli bir kod adı olduğunu bilirsiniz. Linux çekirdeği ayrıca, çekirdeğin ait olduğu seri için bir tanımlayıcı görevi gören farklı sürüm numaralarına sahiptir. Ancak, daha önce çekirdek sürümlerinin nasıl oluşturulduğu ile Linus Torvalds'ın şimdi bunları nasıl adlandırdığı arasında bir fark var.

Sonunda, Linux çekirdek sürüm oluşturma şemasına daha aşina olacaksınız ve kendinizi daha iyi hissedeceksiniz. çekirdek sürüm numaralarını rahat okuma ve bir sistemle ilişkili çeşitli özellikleri tanımlama özel yayın.

Geleneksel Linux Çekirdeği Sürüm Oluşturma

Linus, çekirdeği geliştirmeye ilk başladığında, kullanılan sürüm oluşturma sistemi, sıfır ile başlayan artan bir değişken şemasından oluşuyordu (0.x). Başlangıçta, proje üzerinde çalışan tek kişi Linus'du ve bu sürüm oluşturma sistemi, yeni çekirdek sürümlerini belgeleme ve dağıtma ihtiyacını yeterli buluyordu.

Bu adlandırma şemasını izleyen çekirdek sürümlerinden bazıları şunlardır:

instagram viewer
Resim Kredisi: Vikipedi

Daha sonra, daha fazla geliştirici projeye katkıda bulunmaya başladıkça ve revizyon ve yama sayısı önemli ölçüde arttığında, bu sürüm oluşturma şemasının aşağıdaki gibi yazılımlar için uygun olmadığına karar verildi. çekirdek. Ve 1.0 sürümünden başlayarak, Linus birkaç ek değişken içeren yeni bir şema benimsedi.

Daha Açıklayıcı Bir Sürüm Oluşturma Sisteminin Tanıtımı

1994 yılında, Linux çekirdeği 1.00'ın piyasaya sürülmesiyle, Linus, söz diziminde üç değişken kullanan yeni bir sürüm oluşturma sistemi kullanmaya başladı: "ABC". Bu değişkenler (a, b ve c), belirli çekirdek sürümü için sırasıyla ana sürümü, küçük sürümü ve revizyon numarasını temsil eder.

Örnek olarak Linux çekirdeği 1.1.95'i alın. İlk büyük sürüm, ilk küçük sürüm ve 95. revizyon olarak kodunu çözebilirsiniz.

O zamanlar, küçük sürüm numaraları bile kararlı çekirdek sürümlerini belirtirken, tek sürümler geliştirme sürümlerini temsil ediyordu. Geliştiricilerin kararlı dalı etkilemeden çekirdeğe yeni özellikler ekleyip test edebilmeleri için ayrı dallara sahip olmak önemliydi.

Çekirdek geliştiricileri, bir LTS çekirdeği olarak piyasaya sürülecek kadar kararlı hale gelene kadar geliştirme dalında yeni özellikler ekler ve bunları geliştirir. LTS çekirdeği 3.2, sürüm 3.1'deki yeni özellikleri stabilize ederek geliştirildi ve benzer şekilde yeni bir geliştirme çekirdeği 3.3, daha sonra tanıtılacak yeni özelliklere yer açmak için 3.2'den ayrıldı. Linux 3.4.

Linux çekirdeği 2.4'ten başlayarak, çekirdek adındaki dördüncü bir değişken yama sürümlerini ifade ediyordu. 2.4.37.10 sürümünün, çekirdek 2.4.37 için onuncu yama sürümü olduğunu söyleyebilirsiniz.

Bir yama sürümü, bir çekirdek sürümünde yamalanan sorunların sayısı anlamına gelmez. Bunun yerine, bulunan sorunları yamaladıktan sonra güncellenmiş bir çekirdeğin kaç kez yayınlandığını sayar.

Linux 2.6'ya kadar bu sürümleme sistemi kullanılıyordu ve belirli bir sürümü diğerlerinden ayırt etmede etkiliydi. Sürüm numarasına revizyon sayıları ve yama sürümleri eklemek açıklayıcıydı, ancak daha uzun ve daha karmaşık çekirdek sürümlerine sahip olmak anlamına geliyordu. Ve yine, yeni ve daha iyi bir plan gerekliydi.

Linux Çekirdeği Sürümleri Şimdi Nasıl Adlandırılıyor?

Linux sürüm 3.0 ile Linus, sürüm numarasından dördüncü değişkeni çıkardı. Şimdi, çekirdek sürümü sözdizimine göre oluşturulmuştur: ABC, burada a, b ve c sırasıyla ana sürüm, küçük sürüm ve revizyon sayısıdır. Bu sürüm oluşturma şeması, 1.0 ve 2.4 çekirdek sürümleri arasında kullanılana benzer.

Gelişmeler nedeniyle sürüm kontrol sistemleri, katkıda bulunanlar artık kararlı dallar üzerinde sorunsuz bir şekilde çalışabilir ve halihazırda çalışmakta olan kararlı sürümleri yanlışlıkla bozmadan yeni özellikler ekleyebilir. Bu nedenle, kararlı ve üretim dalları için çift ve tek küçük sürüm numaralarının kullanılması, Çekirdek sürüm 4.0'ın piyasaya sürülmesinden sonra çekirdek gereksiz hale geldi ve ilk LTS sürümü (4.1) en 4.x serinin tek bir küçük sürüm numarası vardı.

Sürüm numarasının sonunda aşağıdaki gibi bazı karakterler de görebilirsiniz: rcX. İnceleme adayları (veya kısaca "rc"), geliştiricilerin hataları ve diğer sorunları gidermek için yama yapması gereken çekirdeğin önizleme sürümleri ve yama öncesi sürümleridir. Bunlar, daha önce tek bir küçük sürüm numarasıyla belirtilen geliştirme sürümlerinin yerine geçer.

Bu sürümler, bildirilen sorunları düzeltebilmeleri ve yeni özellikleri uygulayabilmeleri için özellikle çekirdek geliştiricilere ayrılmış olsa da, İsterseniz bu çekirdek inceleme adaylarını indirin ve test edin, ancak geliştirmenin çoğunun burada olduğu düşünüldüğünde genellikle önerilmez. olur. Bu yazının yazıldığı sırada çekirdeğin en son önizleme sürümü 5.19-rc6.

Yeni sürümler oluşturmak için, bir değişkenin değeri belirli bir sayıya ulaştığında önceki değişken artırılır. Örneğin, alt sürüm sayısı 20'ye yaklaştığında ana sürüm bir sonraki haneye güncellenir.

Linus'ta bahsedilen 5.0 çekirdek geliştirme postası büyük sayıyı beşe güncelledi çünkü küçük sürüm sayısı parmaklarda ve ayak parmaklarında sayılamayacak kadar büyüdü (20!). Benzer şekilde, göre kernel.org, ilk noktadan sonraki sayı "çok büyük" görünmeye başladığında ana sürüm numarası artırılır. Son çekirdek sürümü 3.x seri 3.19 ve son majör 4.x çekirdek serisi 4.20 idi, bu daha sonra 5.0'a yükseltildi.

3.0 sürümünden bu yana, Linux çekirdeği bu sürüm oluşturma şemasını takip ediyor ve üç ana çekirdek sürümü (sürümler) olduğu sürece verimli olduğunu kanıtladı. 3.x, 4.x, ve 5.x).

Sürüm Numaralarını Kullanarak Linux Çekirdeği Sürümünü Belirleme

Piyasaya sürülen Linux çekirdeği sürümlerinin çokluğu göz önüne alındığında, belirli bir sürümü diğerlerinden ayırt etmek ve ayırt etmek için uygun bir sisteme ihtiyaç vardır. Yeni çekirdek sürüm oluşturma şemasıyla, çekirdek sürümleri artık etkin bir şekilde tanımlanıp karşılaştırılabilir ve hangi çekirdek sürümünün en son ve hangisinin daha önce yayınlandığını bilmek kolaydır.

Sisteminizde yüklü olan Linux çekirdeği sürümünü kontrol etmek istiyorsanız, bunu sistemle ilgili bilgileri listelemenizi sağlayan bir Linux komutu olan uname'yi kullanarak yapabilirsiniz. Çalıştırdığınız dağıtıma bağlı olarak, uname tarafından görüntülenen sürüm numarası, gerçek Linux çekirdeği sürümlerinden farklı olabilir.