CEVIRENLER: Mesut UGURLU Umit Nevruz OZDEMIR

FreeBSD Projesi Hakkında

Bu bölüm projenin kısa bir tarihini, hedeflerini ve projenin gelişme modelini de içeren bilgileri sunmaktadır.

 

FreeBSD'nin kısa bir tarihi

Contributed by Jordan K. Hubbard .

FreeBSD projesinin kökleri 1993'ün erken kısımlarına kadar gider. Proje kısım kısım Patchkit'in son 3 koordinatörlüğünü Nate Williams, Rod Grimes ve benim yaptığım "Gayri resmi 386 BSD Patchkit" in büyümesiyle oluşmuştur.
Gerçek hedefimiz Patchkit mekanizmasının çözmeyi başaramadığı kendisiyle ilgili problemleri çözmek için 386BSD'nin ara bir versiyonunu üretmekti. Bazılarınız bu gelişmelerle ilgili olarak "386BSD 0.5" ya da "386BSD Interim" projelerinin ismini hatırlayabilirsiniz. 386BSD Bill Jolitz'in o noktaya kadar bir yıllık ihmalinin sıkıntısını çok ağır bir şekilde yaşayan bir işletim sistemiydi. Her geçen gün Pathckit'deki sorunlar daha da arttıkça hepimiz bir şeylerin yapılması gerektiğini düşünmeye başladık ve Bill'e yardımcı olmak için bu ara (temizlenmiş) olan versiyonu denemeye karar verdik. Bu planlar Bill Jolitz'in aniden desteğini çekmeye karar vermesi ve önerimize bir alternatif göstermeden ayrılması ile kabaca durdurulmuş oldu.
Bill'in desteği olmasa bile hedefimizin hala gerçekçi olduğunu görmek uzun sürmedi. Yanımıza David Greenman'ı da alarak FreeBSD ismini benimsedik. İlk amaçlarımız sistemin o anki kullanıcılarına danışarak belirlendi. Projenin yolda olduğu, belki de gerçekleşeceği açıkça ortaya çıktığında, internete kolayca ulaşamayan insanlara da FreeBSD'nin dağıtılabilmesi için Walnut Creek CDROM'la irtibata geçtim. Walnut Creek CDROM sadece FreeBSD'yi CD üzerinde vermekle kalmayıp, daha da ileri giderek bize proje üzerinde çalışmak için hızlı internet bağlantılı bir bilgisayar da sağladı. Walnut Creek CDROM bu tamamen bilinmeyen projeye örneği görülemeyecek desteği olmasaydı FreeBSD'nin bu güne kadar ilerlemesi mümkün değildi.
FreeBSD'nin ilk CDROM ve internet üzerinden dağıtımı 1993'ün aralık ayında gerçekleşti. Bu sürüm U. C. Berkeley'in 4.3 BSD-Lite ("Net/2") teypleri ile 386BSD ve Free Software Foundation'dan alınan pek çok parça üzerine kurulmuştu. Bu sürüm ilk sürüm için oldukça başarılı olmuştu. Bu sürümü Mayıs 1994'te piyasaya sürdüğümüz daha da başarılı olan FreeBSD 1.1 izledi.

Bu süre zarfında Novell ile U. C. Berkeley arasındaki mahkemenin konusunu oluşturan Berkeley Net/2 teybi üzerindeki hak iddialarının bir anlaşmayla sonuçlandırılmasıyla beklenmeyen fırtına bulutları ufukta görülmeye başlandı. Anlaşmanın bir maddesinde U.C. Berkeley Net/2'nin büyük bir kısmını "sahiplenilmiş" kod olduğunu ve Novell'in ( dolayısıyla da bir süre önce AT&T'den alınması nedeniyle AT&T'nin ) malı olduğunu kabul ediyordu. Berkeley'in bunun karşılığında almış olduğu 4.4 BSD-Lite sürümünün, sonunda piyasaya sürebildiğinde "sahipsiz" sayılması olacaktı ve tüm Net/2 kullanıcıları 4.4 BSD-Lite kullanmaya teşvik edilecekti. Bu anlaşma FreeBSD'yi de kapsıyordu ve projenin Temmuz 1994'e kadar kendi Net/2 tabanlı ürünün dağıtımını durdurması isteniyordu. Anlaşmanın maddelerine göre, proje bu tarihe kadar bir sürüm daha yapılabilirdi. Bu sürüm FreeBSD 1.1.5.1 oldu.
Bundan sonra FreeBSD kendini daha tamamlanmamış olan 4.4 BSD-Lite üzerine yeniden kurmaya başladı. Lite sürümleri yetersizdi. Çünkü Berkeley'in CSRG'si ( Bilgisayar Sistemleri Araştırma Grubu ) gerçek bir bootable sistem yaratmak için gerekli kodları çeşitli yasal sebeplerden dolayı kaldırmıştı ve 4.4'ün Intel portu çok büyük bir şekilde tamamlanamamıştı. Projenin bu dönüşümü yapabilmesi Kasım 1994'ü buldu. Bunu takiben Aralık'ın sonunda FreeBSD 2.0 sürümü internet ve CDROM üzerinden dağıtılmaya başlandı. Sürümün ufak tefek sorunları olmasına rağmen, sürüm gerçek bir başarıyı yakaladı ve daha güçlü ve kurması daha kolay olan 2.0.5 sürümü 1995'in Hazıran'ında bunu takip etti.

FreeBSD 2.15'i Ağustos 1996'da piyasaya sürdük. Bu sürümün ISP'ler ve ticari topluluklar arsında yeterli popülariteye ulaşmasıyla 2.1 STABLE kolu doğrultusunda bir diğer sürüm ortaya çıktı. Bu Şubat 1997'de piyasaya sürülen ve 2.1 STABLE üzerindeki gelişmeyi tamamlayan 2.1.7 idi. Şimdi bu kol üzerinde koruma modunda, sadece güvenlik geliştirmeleri ve diğer kritik bug ayarları yapılacaktı. (RELENG_2_1_0)

FreeBSD 2.2 tıpkı RELENG_2_2 gibi geliştirme ana hattından ("-CURRENT") Kasım 1996'da ortaya çıktı. Ortaya çıktı. 2.2 kolu boyunca en sonuncusu Kasım 1998'de piyasaya sürülen 2.2.8. oaln geliştirilmiş versiyonlar yaz ve sonbahar 97 boyunca yapıldı. İlk resmi 3.0 sürümü Ekim 1998'de ortaya çıktı ve 2.2 kolu için sonun başlangıcını ortaya koydu. 4.0 CURRENT ve 3.X STABLE kollarıyla birlikte 20 Ocak 1999'da ağaç yeniden dallanmaya başladı. 3.X STABLE kolundan 3.1 15 Şubat 1999'da, 3.2 15 Mayıs 1999'da, 3.3 Eylül 1999'da ve 3.5 24 Haziran 2000'de piyasaya sürüldü. 3.5'i bir kaçgün sonra Kerberosa birkaç küçük son dakika güvenlik güncellemelerinin yapıldığı 3.5.1 sürümü takip etti. Bu 3.X kolunun son sürümüydü.

13 Mart 2000'de bir kol daha ortaya çıktı. Bu kol şimdi Stabil olarak değerlendirilen 4.X-STABLE kolunun doğuşunu gördü. O zamandan beri bu koldan bazı sürümler ortaya çıktı. 4.0 Mart 2000'de 4.1 Haziran 2000'de 4.2 Kasım 2000'de piyasaya sürüldü. 4.X.STABLE (RELENG_4) kolu üzerinde 2001'de de yeni sürümler olacak.

Uzun süreli geliştirme projeleri 5.0-Current (trunk) kolu ve 5.0'ın snapshot sürümleri olarak CD ve tabiki internet üzerinden çıkmaya devam edecek. Bu sürümlere üzerlerinde çalışmalar geliştikçe the snapshot server üzerinden ulaşabileceksiniz.

 

 FreeBSD Projesi Hedefleri

Contributed by Jordan K. Hubbard .

FreeBSD projesinin hedefleri string ekli olmadan herhangi bir amaç için kullanılabilecek bir software sunmaktır. Çoğumuzun kodlarda ve projede önemli yatırımları oldu ve elbette küçük mali destekleri önemseyecek değiliz. Fakat kesinlikle bu konu üzerinde ısrarcı olmaya hazırlanmış değiliz. İlk ve en önemli görevimizin herkese her ne amaçla olursa olsun kodları sunmak olduğuna inanıyoruz. Böylece kodların kullanımı olabildiğince yaygınlaşabilecek ve mümkün olan en fazla yararı sağlayacaktır. Bu free software'in en temel amaçlarından biri olduğuna inandığım ve heyecanla desteklediğimiz amacımızdır.

En azından karşıtı yeterince uygulanan erişim tarafından baksak bile, GNU, GPL yada Libriary GPL altına düşen kaynak ağacımızdaki kodlar biraz daha fazla string ekli olarak gelir. Fakat GPL software'in ticari kullanımından doğabilecek olan fazladan karışıklıklara bağlı olarak, daha mantıklı bir seçenek olmasından dolayı biz daha rahat bir BSD copyright'ı altında programı sunmayı tercih ediyoruz.

 FreeBSD Geliştirme Modeli

Contributed by Satoshi Asami .

FreeBSD'nin geliştirilmesi çok açık ve esnek bir süreçtir. FreeBSD destekçiler listesinden görülebileceği gibi tüm dünya üzerinden yüzlerice insanın desteğiyle yapılandırılmaktadır. Sürekli olarak yeni geliştiriciler ve fikirleri aramaktayız. Projemizle ilgilenenler bize tartışma mail listemiz olan freebsd-hackers@FreeBSD.org adresinden ulaşabilirler. freebsd-announce@FreeBSD.org duyuru mailleri listemiz de diğer FreeBSD kullanıcılarını ana çalışma alanlarını duyurmak için kullanılmaktadır. Tek başına yada grup halinde çalışanlar için FreeBSD projesi ve geliştirme süreci ile ilgili öğrenilebilecek kullanışlı şeyler;

CVS Kaynağı

FreeBSD'nin merkezi kaynak ağacı CVS (Concurrent Version System - Eşzamanlı versiyon sistemi) tarafından muhafaza edilir. CVS, FreeBSD ile birlikte gelen herkese ücretsiz olarak açık olan bir kaynak (kod) kontrol aracıdır. Ana CVS kaynağı Concord CA, ABD'de bir makine içinde tutulur. Buradan tüm dünyadaki eşkaynaklı makinalara aktarılır. Kendi içerisinde kontrol edilen CURRENT ve STABLE ağaçları gibi CVS ağacı da kolayca sizin makinanıza aktarılabilir. Lütfen bu konuda daha fazla bilgi almak için kendi kod ağacınızı senkronize etme bölümünü okuyun.

Bağlılar Listesi. (Commiters List)

Bağlılar CVS ağacına yazma erişimi olan insanlardır. Dolayısıyla FreeBSD kodunda değişiklik yapma hakkına sahiptirler. "Commiters" terimi csv(1) commit komutundan gelmektedir. Bu komut CVS kaynağında yeni değişiklikler yapmak için kullanılmaktadır. Bağlılar listesindekilere gözden geçirilmesi için öneri yapmak için en iyi yol send-pr komutudur. Ayrıca eğer sistemde bir şeyler birbirine karışmış görünüyorsa listeye cvs-commiters@FreeBSD.org adresine mail atarak ulaşabilirsiniz.

FreeBSD Çekirdek Takımı

FreeBSD çekirdek takımı bir şirketteki yönetim kurulu üyelerine eşdeğer olarak düşünülebilir. Çekirdek takımının ana görevi projenin genel olarak doğru yolda, doğru bir şekilde ilerlemesini sağlamaktır. Kendini adamış ve sorumlu geliştiricilerin bağlılar grubuna davet edilmesi tıpkı boşalan yerlere gelen çekirdek takımının yeni üyelerini eğitmek gibi çekirdek takımının görevlerinden biridir. Şimdiki çekirdek takımı 2000 Ekim'inde aday olan bağlılar havuzundan seçilmiştir. Seçimler iki yılda bir yapılır.
Bazı çekirdek takımı üyelerinin aynı zamanda özel sorumluluk alanları vardır. Bunun anlamı sistemin bazı büyük parçalarının ilan edildiği gibi çalışmasını sağlamaktır.

NOT: Çekirdek takımı üyelerinin bir çoğu FreeBSD geliştirilmesi için gönüllülerdir ve projeden kendilerine bir yarar sağlamazlar. Bu nedenle "bağlılık" "kesin destek" anlamında benzetmesi gerçekten çok doğrudur. Yukarıdaki yönetim kurulu üyeleri benzetmesi gerçekten çok doğrudur ve bu insanların yaşamlarını FreeBSD'ye adadıklarını söylemek belki de daha doğru olabilir. ;-)

Dış Destekçiler

Son olarak, en büyük geliştirmeci grubu geri beslemeyi sağlayan ve sürekli olarak hataları düzelten kullanıcıların kendileridir. FreeBSD'nin daha fazla gayri merkezi gelişimini izlemek için FreeBSD'nin freebsd-hackers@FreeBSD.org adresindeki mail listesine üye olmanız en temel yoldur. Burada FreeBSD ile tüm teknik gelişmeler tartışılmaktadır.

Projeye -kendi yolunda kod listesine doğru ilerleyen- herhangi bir katkı yapanların listesi uzun ve büyüyen bir listedir. Öyleyse neden bugün FreeBSD'ye bir şeylerle katkıda bulunacak siz de bu listeye katılmıyorsunuz? :-)

Kod sağlamak projeye destek vermenin tek yolu değildir. Yapılması gereken işlerin tam bir listesi için bu el kitabındaki nasıl katkıda bulunabilirim bölümünü okuyabilirsiniz.

Özet olarak, gelişim modelimiz eşmerkezli çemberlerin gevşek bir kümesi olarak organize edilmiştir. Merkezi model FreeBSD kullanıcılarının rahatı için dizayn edilmiştir. Böylece kullanıcılar bir merkezi kod üssünü rahatlıkla izleyebilir ve buraya katkıda bulunabilirler. Arzuladığımız, kullanıcıların rahatça yükleyip kullanabileceği birbirine bitişik durumdaki çok geniş uygulama programlaryla sağlıklı bir şekilde çalışan bir işletim sistemi sunmaktır. Bu model bu arzumuza ulaşmakta çok etkili olmaktadır.

Bize FreeBSD geliştiricisi olarak katılacaklardan tek istediğimiz şu andaki sistemin başarısının kaynağı olan kendini projeye adamanın bir kısmıdır.

 

 Şu Andaki FreeBSD Sürümü

FreeBSD ücretsiz, tam kaynak kodlu 4.4 BSD-Lite tabanli ve Intel 386, 486, Pentium, Pentium Pro, Celeron, Pentium II, Pentium III ( yada uyumlu ) ve DEC Alpha tabanlı bilgisayar sistemlerine uyumlu bir bilgisayar sistemidir. Öncelikli olarak U.C.Berkeley CSRG grubunun programına dayanmakla birlikte NetBSD, OpenBSD, 386BSD ve Free Software Foundation'dan da katkı almıştır.

1994'ün sonlarında FreeBSD 2.0'ın piyasaya sürümünden bu yana performansı, özellikleri ve dayanıklılığı çok büyük bir şekilde arttı. En büyük değişiklik VM/ dosyalı önbelliek ile birleştirilmiş bir rewamped sanal hafızadır.Böylece sadewce performans artmakla kalmamış aynı zamanda 5MB ayarları daha kabul edilebilir bir minimum yapan FreeBSD'nin hafıza footprint'i düşmüştür. Diğer gelişmeler NIS client ve sunucu desteğini, transaction TCP desteğini, dial-on demand PPP'yi, dahili DHCP desteğini, geliştirilmiş SCSI alt sistemini, ISDN desteğini, ATM desteğini, FDDI'yı Fast ve Gigabit ethernet desteğini ve son Adaptec kontrol kartlarının gelişmiş desteğini ve yüzlerce hata düzeltmeyi kapsar.

Ayrıca kullanıcılardan birçok yorum ve öneriyi de dikkate aldık ve daha mantıklı ve kolayca anlaşılır olduğuna inandığımız bir yükleme süreci sunmaya çalıştık. Bu sürekli gelişen sürece ilişkin sizden gelen geri beslemeler özellikle hoş karşılanmalıdır.

Ana dağıtıcılara ek olarak, FreeBSD portlar halinde binlerce aranan programdan oluşan bir software koleksiyonunu da sunmaktadır. Kasım 2000 ortası itibarı ile 4000'in üzerinde port bulunmaktadır. Port listesi http sunucularından, oyunlara, dillere, editörlere ve neredeyse aradaki herşeye dağılmış durumdadır. Tüm portların kolleksiyonu yaklaşık olarak 100 MB boş alan gerektirir. Tüm portlar kendi orijinal kaynaklarına "delta" olarak tanımlanır. Böylece portları güncellemek daha kolay olmakta ve daha eski olan 1.0 port koleksiyonu için gereken disk alanını büyük oranda azaltmaktadır.
Bir portu derlemek için, yüklemek istediğiniz portun directory'sine girmeniz, make install
yazmanız geri kalanını sisteme bırakmanız yeterlidir. Her yapılandırdığınız port orijinal dağıtım CDROM'undan yada yerel FTP sitesinden dinamik bir şekilde yüklenmektedir. Sonuçta tek ihtiyacınız diskinizde yeteri kadar yerinizin olmasıdır. Neredeyse her port önceden derlenmiş bir "paket" halinde bulunmaktadır. Böylece kaynaktan kendi protuna derlemek istemeyenler için port basit bir pkg_add komutyla yüklenebilir.
FreeBSD'nin yükleme ve kullanma sürecinde size yardımcı olacak birçok doküman FreeBSD 2.1 ve sonraki sürümlerde /usr/share/doc directory'sinde bulunabilir. Yerel olarak yüklenmiş kılavuzları HTML gösterme yetenegi olan herhangi bir programla aşağıdaki URL'llerde bulabilirsiniz.

FreeBSD El Kitabı
http://www.freebsd.org/handbook/index.html

FreeBSD FAQ
http://www.freebsd.org/FAQ/index.html

Ayrıca ana kopyaları ve son güncellemeleri

http://www.FreeBSD.org adresinde görebilirsiniz.