FreeBSD

Geliştirici The FreeBSD Project
İşletim Sistemi Ailesi BSD
Çalışma Durumu Güncel
Kaynak Modeli Açık Kaynak
İlk Sürüm 1 Kasım 1993
En Son Sürüm 12.0
Pazarlama Hedefi Sunucular, İş İstasyonları, Gömülü Sistemler, Ağ Güvenlik Duvarları
Paket Yöneticisi pkg
Platformlar ARM, IA-32, x86-64, MIPS, PowerPC, 64-bit SPARC, RISC-V
Çekirdek Tipi Dinamik Olarak Yüklenebilen Modüller İçeren Monolitik
Kullanıcı Alanı BSD
Varsayılan Kullanıcı Arayüzü Unix Kabuğu
Lisans FreeBSD Lisansı, FreeBSD Dokümantasyon Lisansı
Resmî İnternet Sitesi https://www.freebsd.org/

FreeBSD; Research Unix’i taban alan Berkeley Software Distribution (BSD)’dan doğan özgür ve açık kaynak bir Unix benzeri işletim sistemidir. FreeBSD’nin ilk sürümü 1993 yılında piyasaya sürüldü. 2005 yılında FreeBSD, kurulu tüm BSD sistemlerinin dörtte üçünden fazlasını oluşturan en popüler açık kaynak BSD işletim sistemi idi.

FreeBSD; Linux ile kapsam ve lisanslamada iki büyük farkla benzerliklere sahiptir: FreeBSD; tam bir sistemi korur yani proje, yalnızca bir çekirdek ve sürücüleri teslim etmek ve sistem yazılımı için üçüncü taraflara güvenmek yerine bir çekirdek, aygıt sürücüleri, kullanıcı alanı yardımcı programları ve belgeleri sunar; ve FreeBSD kaynak kodu, Linux tarafından kullanılan telif feragatlı (copyleft) GPL’nin aksine genellikle müsamahakâr (permissive) bir BSD Lisansı altında yayımlanır.

FreeBSD projesi, temel dağıtımda gönderilen tüm yazılımı denetleyen bir güvenlik ekibi içermektedir. pkg paket yönetim sistemi veya FreeBSD Ports kullanılarak veya kaynak kodunu derleyerek çok çeşitli üçüncü taraf uygulamaları kurulabilir.

Lisansı nedeniyle FreeBSD’nin kod temeli çoğu Apple’nin Darwin’i (macOS, iOS, watchOS ve tvOS için taban), FreeNAS ve Sony PlayStation 3 ve PlayStation 4 (açık kaynak NAS/SAN işletim sistemi) için sistem yazılımı gibi diğer işletim sistemlerinin ayrılmaz bir parçası hâline geldi.

Tarihçe

Arka Plan

1974 yılında Kaliforniya Üniversitesi, Berkeley’de Profesör Bob Fabry, AT&T’den bir Unix kaynak lisansı aldı. DARPA’dan finanse edilen Computer Systems Research Group, AT&T Research Unix’i değiştirmeye ve geliştirmeye başladı. TCP/IP, sanal bellek ve Berkeley Fast File System gibi özellikleri uygulayan bu değiştirilmiş versiyona “Berkeley Unix” veya “BSD” olarak adlandırdılar. BSD projesi 1976 yılında Bill Joy tarafından kurulmuştur. Ancak BSD, AT&T Unix’in kodunu içerdiğinden tüm alıcıların BSD’yi kullanmak için önce AT&T’den bir lisans almaları gerekiyordu.

1989 yılının Haziran ayında “Networking Release 1” veya basitçe Net-1 -BSD’nin ilk halka açık sürümü- piyasaya sürüldü. Net-1’i piyasaya sürdükten sonra bir BSD geliştiricisi olan Keith Bostic, tüm AT&T kodunu orijinal BSD lisansı altında serbestçe yeniden dağıtılabilir kodla değiştirmeyi önerdi. AT&T kodunu değiştirme çalışmaları başladı ve 18 ay sonra AT&T kodunun çoğu değiştirildi. Ancak AT&T kodunu içeren altı dosya çekirdek içerisinde kaldı. BSD geliştiricileri bu altı dosya olmadan “Networking Release 2” (Net-2)’yi piyasaya sürmeye karar verdi. Net-2 1991 yılında yayımlandı.

FreeBSD’nin Doğuşu

Net-2’nin piyasaya sürülmesinden birkaç ay sonra 1992’de William Jolitz ve Lynne Jolitz AT&T dosyalarının yerine geçti, BSD’yi Intel 80386 tabanlı mikroişlemcilere taşıdı ve yeni işletim sistemlerine 386BSD adını verdi. Anonim bir FTP sunucusu aracılığıyla 386BSD’yi yayınladılar. 386BSD’nin gelişim akışı yavaşladı ve bir süre ihmal edildikten sonra 386BSD kullanıcısı bir grup kendi başına dalmaya ve FreeBSD’yi oluşturmaya karar verdi, böylece işletim sistemini güncel tutabildiler. 19 Haziran 1993’te proje için FreeBSD adı seçildi. FreeBSD’nin ilk versiyonu Kasım 1993’te yayınlandı.

Projenin başlamasının ilk günlerinde iki FreeBSD geliştiricisinin önerisi üzerine Walnut Creek CDROM adlı bir şirket, işletim sistemini CD-ROM’da bırakmayı kabul etti. Buna ek olarak Jordan Hubbard ve David Greenman’ı çalıştıran şirket; sunucularında FreeBSD’yi koymuş, FreeBSD konferanslarına sponsorluk etmiş ve Greg Lehey’in The Complete FreeBSD‘si dâhil olmak üzere FreeBSD ile ilgili kitaplar yayımlamıştır. 1997’de FreeBSD, Walnut Creek’in “en başarılı ürünü” idi. Şirket daha sonra The FreeBSD Mall ve daha sonra iXsystems olarak yeniden adlandırıldı.

Bugün FreeBSD; IBM, Nokia, Juniper Networks ve NetApp gibi birçok BT şirketi tarafından ürünlerini oluşturmakta kullanılıyor. Apple’nin Mac OS X işletim sisteminin bazı bölümleri FreeBSD tabanlıdır. PlayStation 3 işletim sistemi de FreeBSD’den bazı bileşenleri ödünç alırken PlayStation 4 işletim sistemi FreeBSD 9’dan türetilmiştir. Netflix, WhatsApp ve FlightAware ayrıca FreeBSD çalıştıran büyük, başarılı ve yoğun ağ odaklı şirketlere örnek teşkil etmektedir.

Dava

386BSD ve FreeBSD, 1992’deki BSD sürümünden elde edildi. Ocak 1992’de Berkeley Software Design Inc. (BSDi), daha sonra FreeBSD’ye benzer bir işletim sistemi olan BSD/OS adlı BSD/386’yı yayımlamaya başladı ve 1992’nin BSD sürümünü taban aldı. AT&T; BSDi’ye dava açtı ve lisans anlaşmalarını ihlal ettiği takdirde AT&T kaynak kodunun dağıtıldığını iddia etti. Dava mahkemede çözüldü ve kesin şartların tamamı açıklanmadı. Halka açılan tek kişi BSDi’nin kaynak tabanını daha yeni 4.4BSD-Lite kaynaklarına geçirmesiydi. Davaya dâhil olmamakla birlikte FreeBSD’ye 4.4BSD-Lite’ye geçmeleri önerildi. 1994 yılının Kasım ayında piyasaya sürülen FreeBSD 2.0, AT&T’den hiçbir kod almadan FreeBSD’nin ilk sürümüdür.

Özellikler

Kullanımlar

Genel amaçlı bir işletim sistemi olarak FreeBSD çeşitli senaryolarda kullanılır:

Sunucular

FreeBSD; temel sistemdeki sunucu ile ilgili önemli bir koleksiyona ve port koleksiyonuna sahiptir ve FreeBSD’nin diğer uygulamaların yanı sıra bir posta sunucusu, web sunucusu, güvenlik duvarı, FTP sunucusu, DNS sunucusu ve yönlendirici olarak yapılandırılmasını ve kullanılmasını sağlar.

Masaüstü ve Dizüstü

X Pencere Sistemi varsayılan olarak kurulmaz ancak FreeBSD ports koleksiyonunda bulunur. FreeBSD’de GNOME, KDE ve Xfce gibi bir dizi masaüstü ortamının yanı sıra Openbox, Fluxbox ve dwm, bspwm gibi hafif pencere yöneticileri de bulunmaktadır. FreeBSD 12’den itibaren modern bir grafik yığını için destek drm-kmod yoluyla sağlanabiliyor. Çok sayıda kablosuz adaptör desteklenir.

Gömülü Sistemler

Açıkça IA-32 ve x86-64 platformlarına odaklanmasına rağmen FreeBSD ayrıca ARM, PowerPC ve MIPS gibi diğerlerini daha az desteklemektedir.

Ağ Oluşturma

FreeBSD’nin TCP/IP yığını, bu protokollerin yaygın olarak benimsenmesine büyük ölçüde katkıda bulunan 4.2BSD TCP/IP uygulamasına dayanmaktadır. FreeBSD ayrıca IPv6, SCTP, IPSec ve kablosuz ağları (Wi-Fi) destekler. IPv6 ve IPSec yığınları KAME projesinden alınmıştır. Ayrıca FreeBSD; IPX ve AppleTalk protokollerini de destekler ancak eski kabul edilir ve gelecek FreeBSD 11.0’da desteklerinin bırakılması planlanmaktadır.

FreeBSD 5.4’ten itibaren Common Adress Redundancy Protocol (CARP) desteği OpenBSD projesinden alınmıştır. CARP, birden fazla düğümün bir IP adresi kümesini paylaşmasına izin verir. Eğer düğümlerden biri çökerse diğer düğümler hâlâ istekleri yerine getirebilir.

Depolama

FreeBSD, depolama ile ilgili çeşitli benzersiz özelliklere sahiptir. Yazılım güncelleştirmeleri, bir sistem çökmesi durumunda UFS dosya sisteminin (BSD’lerde yaygın olarak kullanılan) tutarlılığını koruyabilir. Dosya sistemi anlık görüntüleri, bir anda UFS dosya sisteminin görüntüsünün verimli bir şekilde oluşturulmasını sağlar. Anlık görüntüler, canlı bir dosya sisteminin güvenilir bir şekilde yedeklenmesini sağlar. GEOM; RAID (şu anda seviye 0, 1, 3), tam disk şifreleme, günlüğe kaydetme, birleştirme, önbelleğe alma ve ağ destekli depolamaya erişim sağlayan modüler bir yazılım iskeletidir. GEOM, bu mekanizmaları birleştiren (“zincirleme”) karmaşık depolama çözümlerinin oluşturulmasına izin verir. FreeBSD, veri şifreleme için iki yazılım iskeleti sunar: GBDE ve Geli. Hem GBDE hem de Geli disk seviyesinde çalışır. GBDE; Poul-Henning Kamp tarafından yazılmıştır ve iki maddeli BSD lisansı altında dağıtılmıştır. Geli; Pawel Jakub Dawidek tarafından yazılmış ve ilk FreeBSD 6.0’da ortaya çıkan GBDE’ye bir alternatiftir.

7.0’dan itibaren FreeBSD ZFS dosya sistemini desteklemektedir. ZFS daha önce Sun Microsystems tarafından geliştirilen açık kaynak bir dosya sistemi idi ancak Oracle Sun’u satın aldığında ZFS sahipli bir ürün oldu. Ancak FreeBSD projesi hâlâ OpenZFS projesi ile ZFS uygulamasını geliştirmekte ve iyileştirmektedir.

Güvenlik

FreeBSD; erişim kontrol listeleri (ACL’ler), güvenlik olayı denetimi, genişletilmiş dosya sistemi özellikleri, zorunlu erişim kontrolleri (MAC) ve iyi ayarlanmış yetenekler dâhil olmak üzere güvenlikle ilgili birçok özellik sunar. Bu güvenlik geliştirmeleri TrustedBSD projesi tarafından geliştirilmiştir. Proje; Information Technology Security Evaluation ve Orange Book için Common Criteria’dan kavramları uygulamak amacıyla Robert Watson tarafından kurulmuştur. Bu proje devam etmektedir ve uzantılarının çoğu FreeBSD’ye entegre edilmiştir.

Proje; DARPA, NSA, Network Associates Laboratories, Safeport Network Services, the University of Pennsylvania, Yahoo!, McAfee Research, SPARTA, Apple Computer, nCircle Network Security, Google, the University of Cambridge Computer Laboratory ve diğerleri dâhil olmak üzere çeşitli kuruluşlar tarafından desteklenmektedir.

Proje ayrıca NSA’nın FLASK/TE uygulamasını SELinux’dan FreeBSD’ye taşıdı. Diğer çalışmalar; Sun’un Basic Security Module (BSM)’si API’sının açık kaynak bir uygulaması olan OpenBSM’nin geliştirilmesini ve kapsamlı bir güvenlik denetim sistemini destekleyen denetim günlüğü dosyası formatını içerir. Bu FreeBSD 6.2’nin bir parçası olarak gönderildi. FreeBSD’deki TrustedBSD Projesi kapsamında gerçekleştirilen diğer altyapı çalışmaları GEOM ve OpenPAM’ı da içeriyordu.

TrustedBSD projesinin çoğu bileşeni sonunda FreeBSD’nin ana kaynaklarına katlanır. Ek olarak birçok özellik tamamen olgunlaştığında diğer işletim sistemlerine girme yollarını bulur. Örneğin; OpenPAM NetBSD tarafından kabul edilmiştir. Ayrıca TrustedBSD MAC Framework, Apple tarafından macOS için kabul edilmiştir.

FreeBSD üç farklı güvenlik duvarı paketi ile birlikte gelir: IPFW, pf ve IPFilter. IPFW FreeBSD’nin yerel güvenlik duvarıdır. pf OpenBSD’den alındı ve IPFilter Darren Reed tarafından FreeBSD’ye taşındı.

OpenBSD’den alınan OpenSSH programı varsayılan kurulumda dâhil edildi. OpenSSH, SSH protokolünün özgür bir uygulamasıdır ve telnet’in yerine geçmiştir. Telnet’ten farklı olarak OpenSSH tüm bilgileri şifreler (kullanıcı adı ve şifre dâhil).

Kasım 2012’de FreeBSD Güvenlik Ekibi, bilgisayar korsanlarının projenin iki sunucusuna yetkisiz erişim sağladığını açıkladı. Bu sunucular hemen kapatıldı. Daha fazla araştırma, bilgisayar korsanlarının ilk yetkisiz erişiminin 19 Eylül’de gerçekleştiğini gösterdi. Görünüşe göre bilgisayar korsanları; işletim sistemindeki bir hatadan yararlanarak değil, geliştiricilerin birinden SSH anahtarları çalarak bu sunuculara erişim kazandılar. Bu iki saldırıya uğramış sunucu, üçüncü taraf yazılım paketleri oluşturmak için kullanılan altyapının bir parçasıydı. FreeBSD Güvenlik Ekibi ikili paketlerin bütünlüğünü kontrol etti ve ikili paketlerde yetkisiz bir değişiklik yapılmadığını açıkladı ancak 19 Eylül ve 11 Kasım arasında indirilen paketlerin bütünlüğünü garanti edemeyeceklerini söylediler.

Taşınabilirlik

FreeBSD, çeşitli komut seti mimarilerine aktarılmıştır. FreeBSD projesi mimarileri, sağlanan destek seviyesini karakterize eden tier’ler hâlinde organize ediyor. Tier 1 mimarileri olgun ve tamamen desteklenir. Tier 2 mimarileri büyük bir gelişme geçiriyor. Tier 3 mimarileri deneyseldir veya artık aktif geliştirilme aşamasında değildir ve Tier 4 mimarilerinin hiç desteği yoktur.

Ocak 2018 itibarıyla FreeBSD aşağıdaki mimarilere aktarılmıştır:

Mimari Destek Seviyesi Notlar
x86 (IA-32) Tier 1 “i386” olarak adlandırılır.
x86-64 Tier 1 “amd64” olarak adlandırılır.
NEC PC-9801 Tier 2 “pc98” olarak anılır, destek 12-CURRENT’de kaldırıldı.
64-bit SPARC Tier 2 Sadece 64-bit (V9) Mimarisi
32-bit ve 64-bit PowerPC Tier 2  
32-bit ARM Tier 2  
64-bit ARM Tier 2  
IA-64 Tier 3 11.0 itibarıyla desteklenmiyor.
MIPS Tier 3  
RISC-V Tier 3 12-RELEASE’deki gibi
DEC Alpha Tier 4 7.0’da Durdurulmuş Destek

ARM (OTG dâhil) ve MIPS desteği çoğunlukla gömülü sistemlere yöneliktir ancak FreeBSD/ARM, BeagleBone Black, Raspberry Pi ve Wandboard da dâhil olmak üzere bir dizi tek kartlı bilgisayarda çalışır.

Üçüncü Taraf Yazılım

FreeBSD, üçüncü taraflarca geliştirilen 26.000’den fazla uygulamanın bulunduğu bir yazılım havuzuna sahiptir. Örnekler arasında: Pencereleme sistemleri, web tarayıcıları, e-posta istemcileri, ofis takımları ve benzeri. Genel olarak projenin kendisi bu yazılımı geliştirmez, yalnızca Ports koleksiyonu olarak bilinen programların yüklenmesine izin veren yazılım iskeletini oluşturur. Uygulamalar, lisans şartlarının izin verdiği sürece kaynaktan (“ports”) derlenebilir veya önceden derlenmiş ikili dosyalar (“paketler”) olarak indirilebilir. Port koleksiyonu; FreeBSD’nin current ve stable şubelerini destekliyor. Daha eski sürümler desteklenmez ve güncel bir Ports koleksiyonu ile doğru çalışmayabilir veya çalışmayabilir.

Ports; yerel veya uzak bir depodan istenen uygulamanın kaynak kodunu otomatik olarak almak, sistemde paketini açmak, yamalar uygulamak ve derlemek için Makefile uygulamasını kullanır. Kaynak kodun boyutuna bağlı olarak derleme uzun zaman alabilir ancak kullanıcıya işlem ve sonucu üzerinde daha fazla kontrol sağlar. Bağlantı noktalarının çoğunda kullanıcıya bir seçenek sunan paket emsalleri de (yani önceden derlenmiş ikili dosyalar) bulunur. Bu yöntem daha hızlı olmasına rağmen kullanıcının daha az özelleştirme seçeneği vardır.

FreeBSD 10.0 sürümü, daha önce kullanılan paket araçlarının yerine pkg paket yöneticisini tanıttı. Linux dağıtımlarında apt ve yum fonksiyonlarına benzer. Hem bağlantı noktalarının hem de paketlerin kurulmasına, yükseltilmesine ve kaldırılmasına izin verir. pkg’ye ek olarak PackageKit de Ports koleksiyonuna erişmek için kullanılabilir.

Hapishaneler

İlk olarak FreeBSD sürüm 4’te tanıtılan hapishaneler, kullanıcının bir FreeBSD sunucusunun tepesinde misafir işletim sisteminin birden çok örneğini çalıştırmasını sağlayan işletim sistemi düzeyinde sanallaştırma uygulamasıdır. Geleneksel chroot mekanizmasının geliştirilmiş bir versiyonudur. Böyle bir hapishanede gerçekleşen bir proses, dışındaki kaynaklara erişemez. Her hapishanenin kendi ana bilgisayar adı ve IP adresi vardır. Aynı anda birden fazla hapishane çalıştırmak mümkündür ancak çekirdek hepsiyle paylaşılır. Bu nedenle sadece FreeBSD çekirdeği tarafından desteklenen yazılım bir hapishanede çalıştırılabilir.

Sanallaştırma

FreeBSD 10.0’da yeni bir sanallaştırma çözümü olan bhyve tanıtıldı. bhyve, kullanıcının aynı anda birkaç konuk işletim sistemini (FreeBSD, OpenBSD, Linux ve Microsoft Windows) çalıştırmasını sağlar. Illumos gibi diğer işletim sistemleri planlanmaktadır. bhyve; Neel Natu ve Peter Grehan tarafından yazılmıştır ve 2011 BSDCan konferansında ilk kez açıklanmıştır. bhyve ve FreeBSD hapishaneleri arasındaki temel fark; hapishanelerin işletim sistemi düzeyinde bir sanallaştırma olması ve bu nedenle sadece FreeBSD misafirleri ile sınırlı olmasıdır; ancak bhyve tip 2 hiper yöneticidir ve sadece FreeBSD misafirleriyle sınırlı değildir. Karşılaştırma için bhyve KVM’ye benzer bir teknolojidir, hapishaneler LXC konteynerlerine veya Solaris Zones’e daha yakındır. Amazon® EC2™ AMI örnekleri ayrıca amazon-ssm-agent ile de desteklenir.

VirtualBox (kapalı kaynak Extension Pack olmadan) ve QEMU FreeBSD’de kullanılabilir.

İşletim Sistemi Uyumluluk Katmanları

Linux üzerinde çalışan çoğu yazılım, isteğe bağlı yerleşik uyumluluk katmanı kullanarak FreeBSD’de çalışabilir. Bu nedenle çoğu Linux ikili dosyaları, sadece ikili biçimde dağıtılan bazı sahipli uygulamalar da dâhil olmak üzere FreeBSD’de çalıştırılabilir. Bu uyumluluk katmanı bir öykünme değildir; Linux’un sistem çağrısı arayüzü FreeBSD’nin çekirdeğinde uygulanır ve bu nedenle Linux çalıştırılabilir görüntüler ve paylaşılan kütüphaneler FreeBSD’nin yerel çalıştırılabilir görüntüleri ve paylaşılan kütüphanelerle aynı şekilde ele alınır. Ek olarak FreeBSD; BSD/OS ve SVR4 gibi Linux’a ek olarak diğer Unix benzeri işletim sistemleri için uyumluluk katmanları sağlar ancak kullanıcıların bu programları doğrudan FreeBSD’de derlemesi daha yaygındır.

Linux ikili dosyaları çalıştırılırken yerel FreeBSD programlarına göre dikkate değer bir performans cezası kaydedilmemiştir ve bazı durumlarda bunlar Linux’a göre daha sorunsuz performans gösterebilir. Bununla birlikte katman tamamen kesintisiz değildir ve bazı Linux ikili dosyaları kullanılamaz veya FreeBSD’de kısmen kullanılabilir. FreeBSD 7.0’dan beri mevcut olan 2.6.18 sürümüne kadar olan sistem çağrıları desteği bulunmaktadır. 10.3 sürümünden itibaren FreeBSD, 64-bit Linux ikili dosyalarını çalıştırabilir.

FreeBSD, FreeBSD’nin yalnzca Windows ağ sürücülerini çalıştırmasına izin vermek için bir dizi Microsoft Windows yerel NDIS çekirdek arayüzü uyguladı.

Çekirdek

FreeBSD’nin çekirdeği; prosesleri yönetme, iletişim, önyükleme ve dosya sistemlerini yönetme gibi bazı temel görevleri desteklemektedir. FreeBSD, modüler tasarıma sahip monolitik bir çekirdeğe sahiptir. Sürücüler gibi çekirdeğin farklı bölümleri modül olarak tasarlanmıştır. Kullanıcı bu modülleri istediği zaman yükleyebilir ve kaldırabilir. ULE; 7.1 sürümünden beri FreeBSD’deki varsayılan zamanlayıcıdır, SMP ve SMT’yi destekler. FreeBSD çekirdeği ayrıca kqueue adlı ölçeklenebilir bir etkinlik bildirim arayüzüne sahiptir. OpenBSD, NetBSD gibi diğer BSD türevlerine aktarılmıştır. Çekirdek iş parçacığı, FreeBSD 5.0’da bir M:N iş parçacığı modeli kullanılarak tanıtıldı. Bu model teoride iyi çalışıyor ancak uygulanması zor ve az sayıda işletim sistemi bunu destekliyor. Her ne kadar FreeBSD’nin bu modeli uygulaması işe yarasa da iyi performans göstermedi, dolayısıyla 7.0 sürümünden itibaren FreeBSD libthr adlı 1:1 iş parçacığı modelini kullanmaya başladı.

Dokümantasyon ve Destek

FreeBSD’nin dokümantasyonu; el kitapları, kılavuz sayfaları, posta listesi arşivleri, sıkça sorulan sorular ve esas olarak The FreeBSD Documentation Project tarafından tutulan çeşitli yazılardan oluşmaktadır. FreeBSD’nin dokümantasyonu birkaç dile çevrildi. Tüm resmî dokümantasyon, “GNU FDL ile uyumlu, müsamahakâr (permissive), telif feragatsız (non-copyleft) bir dokümantasyon lisansı” olan FreeBSD Dokümantasyon Lisansı kapsamında yayınlanmaktadır. FreeBSD’nin dokümantasyonu “yüksek kalite” olarak tanımlanmaktadır.

FreeBSD projesi çeşitli posta listelerini tutar. En popüler posta listeleri arasında FreeBSD-questions (genel sorular) ve FreeBSD-hackers (daha fazla teknik soru sormak için bir yer) bulunmaktadır.

2004 yılından bu yana New York City BSD Kullanıcıları Grubu veri tabanı, FreeBSD çalıştıran bilgisayarlar (dizüstü bilgisayarlar, iş istasyonları, tek kartlı bilgisayarlar, gömülü sistemler, sanal makineler vb.) koleksiyonundan dmesg bilgisi sağlar.

Kurucular

Sürüm 2.0’dan 9.0’a kadar FreeBSD, sysinstall programını ana yükleyici olarak kullandı. C, Jordan Hubbard tarafından yazılmıştır. Bir metin kullanıcısı arayüzü kullanır ve yükleme işlemini yapılandırmak ve kontrol etmek için kullanılabilecek çeşitli menüler ve ekranlara ayrılmıştır. Ayrıca Bağlantı Noktaları ve Paketleri komut satırı arabirimine alternatif olarak yüklemek için de kullanılabilir.

sysinstall yardımcı programı şimdi FreeBSD 9.0’da tanıtılan yeni bir yükleyici olan bsdinstall’ın lehine kabul edilmedi. bsdinstall, sh ile yazılmış “sysinstall için hafif bir alternatiftir”. OSNews’e göre “Diğerlerini kazanırken bazı özelliklerini kaybetti ancak çok daha esnek bir tasarım ve sonuçta önemli bir gelişme olacak.” dedi.

Kabuk

Varsayılan FreeBSD kabuğu, tcsh kabuğudur.

Geliştirme

FreeBSD, dünyanın dört bir yanındaki gönüllü bir ekip tarafından geliştirilmiştir. Geliştiriciler İnterneti tüm iletişim için kullanıyor ve birçoğu şahsen tanışmıyor. Kullanıcılar tarafından desteklenen ve katılan yerel kullanıcı gruplarına ek olarak USENIX tarafından BSDcon adlı yıllık bir konferans düzenlenmektedir. BSDcon FreeBSD’ye özel değildir, bu nedenle OpenBSD ve NetBSD dâhil olmak üzere tüm BSD işletim sistemlerinin teknik yönleriyle ilgilenir. BSDcon’a ek olarak diğer üç yıllık konferans -EuroBSDCon, AsiaBSDCon ve BSDCan- sırasıyla Avrupa, Japonya ve Kanada’da gerçekleşiyor.

Yönetim Yapısı

FreeBSD Projesi; yaklaşık 500 committer veya ana kaynak kod deposuna erişimi olan ve sistemin herhangi bir bölümünü geliştiren, hata ayıklayan veya iyileştiren geliştiriciler tarafından yürütülmektedir. Geliştiricilerin çoğu gönüllüdür ve bazı geliştiricilere bazı şirketler tarafından ödeme yapılır. Kaynak committer’leri (temel işletim sistemi), doküman committer’leri (dokümantasyon ve web sitesi yazarları) ve ports (üçüncü taraf uygulama limanları ve altyapı) dâhil olmak üzere birkaç çeşit committer vardır. Her iki yılda bir FreeBSD committer’leri; genel proje yönünden, proje kurallarını belirlemekten ve uygulamaktan ve yeni committer’leri onaylamaktan veya SVN commit’lerine izin vermekten sorumlu olan 9 üyeli bir FreeBSD Core Team seçmektedir. Örneğin; FreeBSD Core Team tarafından diğer geliştirme ekiplerine resmî olarak bir takım sorumluluklar atanmaktadır: Örneğin; ports koleksiyonunu yönetme sorumluluğu Ports Management Team’a devredilmiştir.

Geliştiricilere ek olarak FreeBSD’de binlerce “katkıcı” var. Katkıcılar ayrıca FreeBSD’nin kaynak kod deposuna doğrudan erişimi olmadığı için committer sahipleri tarafından değerlendirilmek üzere yamalar gönderen FreeBSD projesi dışındaki gönüllülerdir. Komisyon üyeleri daha sonra katkıda bulunanların görüşlerini değerlendirir ve neyi kabul edip neyi reddeteceğine karar verir. Yüksek kaliteli yamalar gönderen bir katkıcıdan genellikle bir committer olması istenir.

Şubeler

FreeBSD geliştiricileri aynı anda en az iki dalda kalıyorlar. -CURRENT şubesi her zaman FreeBSD geliştirmenin “bleeding edge”sini temsil eder. -RELEASE‘nin her 4-6 ayda bir kesildiği her büyük sürüm numarası için bir -STABLE FreeBSD şubesi oluşturulur. Bir özellik yeterince kararlı ve olgun ise büyük olasılıkla (MFC veya FreeBSD geliştirici slang’ında Merge from CURRENT) -STABLE şubesine desteklenecektir.

Vakıf

Ben aslında o insanlardan biriyim. 90’ların sonunda FreeBSD’yi kullanmaya başladım, çok param yoktu ve devlet konutlarında yaşıyordum. Bir şekilde FreeBSD beni yoksulluktan kurtardı - Yahoo!’da bir iş bulmamın ana nedenlerinden biri de FreeBSD kullanıyor olmalarıydı ve benim tercih ettiğim işletim sistemimdi. Yıllar sonra Brian ve ben WhatsApp’ı kurmak için yola çıktığımızda sunucularımızı çalışır durumda tutmak için FreeBSD’yi kullandık. Hâlâ yapıyoruz.

Bu bağışın FreeBSD Foundation tarafından yapılan iyi işlere ışık tutması gerektiğini, başkalarının da bu projenin ilerlemesine yardımcı olacağını umarak duyuyorum. FreeBSD; insanlara benim için aynı fırsatı sağlamaya devam ederse daha fazla göçmen çocuğu yoksulluktan kurtarabilir ve daha fazla yeni girişimcinin başarılı ve hatta dönüştürücü bir şeyler inşa etmesine yardımcı olabilirse hepimiz yararlanırız.

-Jan Koum

FreeBSD gelişimi kısmen FreeBSD Foundation tarafından desteklenmektedir. Vakıf, FreeBSD gelişimini finanse etmek için bağış kabul eden kâr amacı gütmeyen bir organizasyondur. Bu tür fonlar; geliştiricilere belirli faaliyetler için sponsorluk yapmak, donanım ve ağ altyapısı satın almak, geliştirici zirvelerine seyahat hibeleri sağlamak ve FreeBSD projesine yasal destek sağlamak için kullanılmıştır.

Kasım 2014’te FreeBSD Foundation, vakfın kuruluşundan bu yana vakıfa yapılan en büyük bağış olan WhatsApp’ın Kurucu Ortağı ve CEO’su Jan Koum’dan 1 milyon ABD doları bağış aldı. Aralık 2016’da Jan Koum 500 bin dolar daha bağışladı. Jan Koum’un kendisi 1990’ların sonlarından beri bir FreeBSD kullanıcısı ve WhatsApp sunucularında FreeBSD kullanıyor.

Lisans

FreeBSD, çeşitli açık kaynak lisansları altında yayımlanmaktadır. Çekirdek kodu ve en yeni oluşturulan kod; herkesin FreeBSD’yi dilediği gibi kullanmasına ve yeniden dağıtmasına izin veren iki maddeli BSD lisansı altında yayımlandı. Bu lisans sırasıyla Özgür Yazılım Vakfı ve Açık Kaynak İnisiyatifi tarafından Özgür Yazılım ve Açık Kaynak lisansı olarak onaylandı. Özgür Yazılım Vakfı, bu lisansı “GNU GPL ile uyumlu, gevşek, müsamahakâr, telif feragatsız bir yazılım lisansı” olarak nitelendirdi. Beerware lisansının yanı sıra üç ve dört maddeli BSD lisansı altında yayımlanmış parçalar var. Bazı aygıt sürücüleri, 7.2’den önceki FreeBSD sürümleri için Atheros HAL gibi ikili bir blob’u içerir. Diğer projelerin sağladığı kodlardan bazıları GPL, LGPL, CDDL ve ISC kapsamında lisanslıdır. GPL ve CDDL kapsamında lisanslanan tüm kodlar, liberal lisanslar altındaki koddan açıkça ayrılmıştır; böylece gömülü aygıt üreticileri gibi kullanıcılarn yalnızca müsamahakâr özgür yazılım lisanslarını kullanmasını kolaylaştırır. ClangBSD, GNU derleyici derlemesini BSD lisanslı LLVM/Clang derleyicisiyle değiştirerek FreeBSD temel sistemindeki bazı GPL bağımlılıklarını değiştirmeyi amaçlamaktadır. ClangBSD, 16 Nisan 2010’da kendi kendine ev sahipliği yaptı.

Uzun yıllar boyunca FreeBSD’nin logosu, BSD’nin çarpık bir telaffuzu olan Beastie adlı genel BSD Daemon’du. Ancak Beastie FreeBSD’ye özgü değildi. İlk olarak 1976’da Bell Labs tarafından satın alınan Unix T-shirts’te ortaya çıkan BSD’nin arka planının en popüler versiyonları 1984’te başlayan animasyon direktörü John Lasseter tarafından çizildi. FreeBSD’ye özgü birkaç versiyon daha sonra Tatsumi Hosokawa tarafından çizildi.

Litografik terimlerle Lasseter grafiği çizgi resmi değildir ve genellikle kâğıt gibi fiziksel yüzeylerde sadık bir şekilde çoğaltılması için ekranlı, dört renkli bir fotoğraf ofset baskı işlemi gerektirir. Ayrıca BSD arka planının düzgün boyut ölçeklemesi için çok ayrıntılı olduğu ve estetik olarak çoklu renk derecelendirmelerine aşırı bağımlı olduğu ve tek renkli olarak çok az daha az, sadece iki veya üç renkte basit, standart bir logo olarak güvenilir bir şekilde çoğaltılmasını zorlaştırdığı düşünülüyordu. Bu kaygılar nedeniyle bir yarışma düzenlendi ve Anton K. Gural tarafından BSD arka planını tekrarlayan yeni bir logo 8 Ekim 2005’te yayımlandı. Ancak Robert Watson tarafından FreeBSD projesinin “yeni bir logo aramak ancak yeni bir maskot değil” olduğu ve FreeBSD projesinin Beastie’yi maskotu olarak kullanmaya devam edeceği açıklandı.

“FreeBSD” ismi 19 Haziran 1993’te David Greenman tarafından yazılmıştır, önerilen diğer isimler “BSDFree86” ve “Free86BSD”dir. FreeBSD’nin sloganı “The Power to Serve”, FreeBSD Foundation’un ticari markasıdır.

Türevler

FreeBSD’yi taban alan çok sayıda yazılım dağıtımı var. Önemli türevler şunlardır:

  • DesktopBSD (başlangıçta KDE tabanlı, masaüstü tabanlı işletim sistemi)
  • FreeNAS (ağa bağlı depolama aygıtları için)
  • FreeSBIE (canlı CD)
  • GhostBSD (Diğer masaüstü ortamları da sunan MATE tabanlı dağıtım)
  • IntelliStar (Weatherscan ve Local On The 8s gibi TV programlarını çalıştıran uydu sistemi)
  • m0n0wall (güvenlik duvarı)
  • OpenServer 10 (sunucu)
  • OPNsense (güvenlik duvarı)
  • pfSense (güvenlik duvarı)
  • Daha önce PC-BSD olarak bilinen TrueOS (ev kullanıcıları ve iş istasyonlarına yöneliktir ancak ARM 32-bit gömülü aygıtlar için FreeNAS benzeri bir sunucu sürümü ve TrueOS pico ile)
  • XigmaNAS (ağa bağlı depolama aygıtları için)

Tüm bu dağıtımların orijinal FreeBSD temel sistemiyle karşılaştırıldığında herhangi bir veya yalnızca küçük bir değişikliği yoktur. Orijinal FreeBSD’nin temel farkı; belirli kullanım durumları için önceden kurulmuş ve önceden yapılandırılmış yazılımla gelmeleridir. Bu; hepsi ikili uyumlu olan Linux dağıtımları ile karşılaştırılabilir çünkü aynı çekirdeği kullanırlar ve aynı zamanda farklı uygulamalar, yapılandırmalar ve markalama ile birlikte gelirken aynı temel araçları, derleyicileri ve kütüphaneleri kullanırlar.

Bu dağıtımların yanı sıra FreeBSD’yi taban alan bazı bağımsız işletim sistemleri vardır. DragonFly BSD; FreeBSD 4.8’den bir çatal, FreeBSD 5 için seçilenden farklı bir çok işlemcili senkronizasyon stratejisi ve bazı mikro çekirdek özelliklerinin geliştirilmesini hedefliyor. FreeBSD ile uyumlu kalmayı hedeflememektedir ve çekirdek ve temel kullanıcı alanlarında büyük farklılıklar vardır. MidnightBSD, özellikle kullanıcı arayüzü bölümünde NeXTSTEP’ten yoğun olarak ödünç alan bir FreeBSD 6.1 çatalıdır.

Apple macOS’un çekirdeği olan Darwin; FreeBSD sanal dosya sisteminden ve ağ yığınından türetilen bir sanal dosya sistemi ve ağ yığını içerir ve kullanıcı alanının bileşenleri de FreeBSD’den türetilmiştir.

Doğrudan FreeBSD’ye dayanan bazı abonelik servisleri şunlardır:

  • WhatsApp - sunucu başına 2 milyon eş zamanlı TCP bağlantısı işler.

Gömülü aygıtlar ve FreeBSD’ye dayalı gömülü aygıt işletim sistemleri şunları içerir:

  • Juniper’in JUNOS yönlendirici işletim sistemi.
  • EMC Isilon’un OneFS işletim sistemi.
  • NetApp’ın Data ONTAP 8.x ve şimdi yerine geçen ONTAP GX (yalnızca sahipli çekirdek alanı modülü için bir yükleyici olarak)
  • İçerik dağıtımını işlemek için Netflix’in Open Connect Appliance’si.
  • PlayStation 4 (“Orbis OS”)
  • Panasas’ın PanFS paralel dosya sistemi
  • pfSense; açık kaynak bir güvenlik duvarı, yönlendirici ve güvenlik aygıtı işletim sistemi.

Versiyon Geçmişi

Ayrıca Bakınız

Free and open-source software portal

References

  • This work, “Özgür ve Açık Kaynak Yazılım FreeBSD İşletim Sistemi Nedir?”, is a derivative of “FreeBSD” by Wikiwand, used under CC BY-SA. “Özgür ve Açık Kaynak Yazılım FreeBSD İşletim Sistemi Nedir?” is licensed under CC BY-SA by The FLOSS Information.