Pythontr

husonet | Tarih: 16.06.2015

Linux Nedir?

Linux Nedir? ne işe yarar? sorularını soruyorsanız bu yazıyı okuyabilirsiniz.

Linux Nedir? sorusunu en basit ifadeyle, bir işletim sistemi olarak tanımlayabiliriz. Linux, istenen işlevleri gerçekleştirmek, bilgisayardaki aygıtlara erişmek için, uygulamalar ve bilgisoperatörü arasında iletişim sağlayan bir bilgisayar yazılımdır. Uygulamar işletim sistemlerine işlemci aracılığı ile talimatları aktarır, İşlemci daha sonra, aldığı talimatların sonuçlarını işletim sistemi üzerinden uygulamaya geri gönderir.


Bu açıdan Linux işletim sistemi, Windows ve OS X gibi diğer işletim sistemlerine çok benzer.


Linux'u diğer işletim sistemlerinden ayıran önemli bir konu vardır bu diğer işletim sistemlerinin aksine multi thread çalışıyor olmasıdır. 1991 yılında kurulduğu günden itibaren, birçok konuda bilgisayarlar için bir güç haline gelmiştir. 2008 yılında Linux işletim sistemi 25 milyar dolarlık ekosistemi temsil etmiştir.


"Open Source" Açık kaynak kodlu işletim sistemi olarak Linux bir çok Şirket ve bir çok Bireyin işbirliği ile geliştirilmiştir. Şirketler Linux ekonomisine katılan ortakları ve rakipleri ile araştırma ve geliştirme masrafları paylaşmışlardır. Bireyler ve şirketler arasında kalkınma yükünün bu yayılan büyük ve verimli bir ekosistem sayesinde sonuça ulaştırmıştır ve yazılım alanında beklenmedik yeniliklere öncülük etmişlerdir.


En az 100 farklı şirketlerden 1.000'den fazla geliştirici, her çekirdek sürümü için katkıda bulunur. Bir Linux dağıtımı sadece küçük bir parçasıdır. Sadece son iki yıl içinde, 200 firmadan 3,200 üzerinde geliştirici Linux Çekirdeyi için katkıda bulunmuştur.


Linux Nerede Kullanılır?

Linux'un en dikkat çekici özelliklerinden biri, Windows ve OS X gibi sistemler ağırlıklı olarak masaüstü ve dizüstü gibi kişisel bilgisayarlarda yer alırken, Büyük Akademik ve kurumsal labarotuarlar büyük boy cihazlarda AS/400, Cray OS gibi özel işletim sistemlerini, küçük PDA gibi çihazlarda ise Symbian işletim sistemleri tercih edilirken, Linux bir sunucu işletim sistemi olarak varlığını hissettirdi ve ardından da bir masaüstü işletim sistemi olarak da yararlı hale geldi. Linux aynı zamanda bu yukarıda bahsedilen tüm cihazlarda kullanılabilmektedir. Linux çok yetenekli bir işletim sistemidir. Şu anda Android ve bir çok embed sistemde de tercih edilmektedir.


Linux Geleceği

Linux birçok farklı türde aygıt zaten başarılı olmuştur, ancak Linux masaüstü ve sunucu geliştirme bugün diğer işletim sistemlerin göre daha hızlı büyümeye devam ediyor, doğru ilerliyor ve birçok teknolojik alanlar da kullanılmaya devam ediyor.


Linux aslında bütün bilgisayarlar da şu an aktif olarak kullanıylıyor örneğin kullanıcıların Laptop yada Masaüstü bilgisayarları Windows işletim sistemi açmak için BIOS üzerinden yükleniyor aslında her bilgisayar boot işlemi için linux kullanıyor. Linux platformu bir web tarayıcısı ve eposta sunucusu gibi internet bağlantılı araçları olacak, işletim sistemi Windows olsa bile kullanıcılar cihazın işletim sistemi içine internete erişmek için izin sağlayacaklar.


Aynı zamanda Linux mobil internet cihazlarında kullanım oranın oldukça yükseldiği gözlenmektedir. Bunun sebebini diğer işletim sistemlerine göre daha az kaynak tükettiğine bağlayabiliriz.


Bulut bilgisayar sistemleri web sunucularının çoğu ile çalışan ve özellikle Linux işletim sistemleri için doğal bir uyum sağlamaktadır. Linux bu tür kullanıcılara online uygulamaları ve bilgi sunmak için ve üstün yeteneği ile çalışmak için Amazon'un A3 olarak bulut hizmetlerini tercih edebilirsiniz.


Bulut bilgisayar sistemleri supercomputer olarak bilinen gelişmiş bilgisayarlar üzerinde yüksek performans ve yüksek kullanabilirlik sağlamıştır. Akademik, Fizik ve Biyomühendislik araştırmaları, Finans ve Endüstri alanlarında koyulan hedefleriyle, güvenilirliği, ölçeklenebilirliği sayesinde tercih edilmektedir.


Twitter, Linked In, Youtube ve Google gibi internet üzerinde popüler olan ve bunlar gibi diğer web 2.0 servisleri Linux işletim sistemine güvenmektedirler. Yeni web hizmetleri geldikçe, Linux giderek gelcekte bu yeni teknolojilere platform olacaktır.


Linux Doğuşu

25 Ağustos 1991 tarihinde, Linus Torvalds adında bir Finli bilgisayar bilimleri öğrencisi Usenet grubuna comp.os.minux hakkında aşağıdaki duyuru yaptı:


"Ben (ücretsiz) işletim sistemi yapıyorum klonlar AT 386 (486) için (sadece bir hobi, gnu gibi büyük ve profesyonel olmayacak). Nisan ayından bu yana üzerinde çalışıyorum. Dosya sistemleri, fiziksel düzen ve buna benzer sevdiğiniz ve sevmediğiniz noktalarıyla düşüncelerinizi geri bildirim yapmanızı istiyorum."


"Minix" Torvalds, Unix işletim sisteminin bir varyantı olarak anılacak GNU işletim sistemini referans olarak aldı ayrıca Unix işletim sistemini örnek aldı. GNU nedir? (GNU Is Not Unix) UNIX ilk olarak 1983 yılında Richard Stallman tarafından duyurulmuştur.


Torvalds, bilinen Linux işletim sisteminin çekirdeğini kurdu. Bir çekirdek tek başına bir işletim sistemi olamazdı ama Stallman'ın GNU araçları bir işletim sistemi oluşturmak için yeterli olabilirdi - Stallman'ın ise işletim sistemi eksiksiz yapmak için bir çekirdek ihtiyacı vardı. Linux çekirdeği ile GNU araçlarını Torvalds'ın eşleştirme yapması sayesinde bugün bilinen Linux işletim sisteminin başlangıcı oldu.


Linux bir çok yönden potansiyel göstermekteydi. Torvalds ilk olarak 1991 yılında yaptığı yardım isteği sayesinde büyük bir başarı kazanmıştı.


Linux birçok platformda kendi taşınabilirliği, UNIX olan benzerliği, ve özgür yazılım lisansı ve bu gibi UNIX geliştiriciler, arasında güçlü bir popülerlik kazanmıştır. Yüzyılın başında, çeşitli ticari geliştiricilerin VA Linux, TurboLinux, Mandrakelinux, Red Hat ve SuSE GMbH dahil, Linux dağıtımını başlattı ve vakıflar kuruldu DEBIAN gibi. Linux geliştirme ve satışları için 2 milyar dolar yatırım IBM'in 2000 yılında aldığı kararı Linux büyümesine önemli bir katkı ve pozitif bir olay oldu.


Bugün, Linux dünya üzerinde kişisel tercihler, hükümetler, şirketler tarafından işletim sisteminin güvenlik ve esnekliğinden yararlanarak, bir multi-milyar dolarlık bir endüstri oluşturmuştur. Şirketlerin binlerce alt lisanslama ve destek ücretlerinin çok cazip olmaları linux tercih etme sebeblerindendir (Linux ücretsiz ve açık kaynak kodlu bir işletim sistemidir dağıtımlar farklılık arz edebilir). Dünyada bir çok hükümet Linux dağıtımlarını para ve zaman kazanmak için tercih etmektedirler.


{reklam}
Linux Kod

Linux'un tek sahibi yoktur diğer işletim sistemlerinden benzersizdir. Torvalds hala Linux çekirdeğinin gelişimini yöneten, ancak ticari ve özel geliştiriciler, tüm Linux işletim sistemini kapsayan diğer yazılımlara katkıda bulunur.


Bu bölümde, Linux işletim sisteminin parçaları ele alınacaktır.


  • Linux Çekirdeği (Linux Kernel)
  • Linux Çekirdeği benzersiz, esnek ve modulerdir.

Windows işletim sisteminin çekirdeği kolayca parçalar halinde olması mümkün değildir. Kod sağlam bir şekilde parçalara bağlanmalıdır. Örneğin bir telefonda sığdırmak için Windows çekirdeğini kısmak zordur fakat (imkansız değildir)


Linux'un moduler yapısı Linux başarılı olması için çok önemli unsurlardan biridir. Belirli bir platform ihtiyacı için çok kolay bir şekilde minimize edilebilir bu da diğer işletim sistemlerine karşı avantaj sağlar.


Modülerlik ayrıca istikrar ve güvenliğide etkilemektedir. Çekirdek kodunun tek parçası başarısız olursa, çekirdeğin geri kalanını çökmesine sebep olmayacaktır. Yine benzer bir şekilde çekirdeğin (veya işletim sisteminin geri kalan) bir parçası yasadışı bir saldırı kod kısmına engel olabilir ayrıca Çekirdek bütün bir cihazın güvenliğini tehlikeye atmamalıdır.


Linux İşletim Sistemi

Geliştiriciler kolay bir şekilde çekirdekle konuşabilir. Çekirdekle konuşan uygulama yazmak için GNU araçları gibi özel araçlara ihtiyaç duyulur.


Bir çekirdek ve birleşik olarak çalışan araçlara işletim sistemi olarak bilinir. Genellikle işletim sistemi yönetimi komut satırı üzerinden yapılır.


Linux uygulamalarını yazmaya hangi araçlar sağlar: geliştirici ortamları, editörler ve derleyiciler bir geliştirici kodunu alıp çekirdek için erişebilir yapar ve verilen görevleri dönüştürmek için tasarlanmıştır.


Çekirdek "Kernel" gibi, Linux İşletim Sistemi aynı zamanda modulerdir. Bu modulerlik geliştiricilere bir çok konuda kolaylık sağlamaktadır.


Linux Ortamları

Pencereler, menüler ve iletişim kutuları aslında çoğu insan ve işletim sisteminin bir biriyle iletişim kurduğu ve Pencere sistemi ve masaüstü ortamı olarak bilinen ayrı katmanlar olarak düşünüyorum.


Bu katmanlar kolaylıkla işletim sistemi ve üçüncü parti uygulamalar içim işletim sistemi yüklü olmalıdır son kullanıcı odaklı grafik arayüzü (GUI) sağlar.


Linux, pencereleme sistemi ve masaüstü ortamı için kullanılabilecek bir sürü seçenek sunar, buna linux kullanıcıları karar verir. Bunu Windows ne de OSX de yapmak zordur.


Linux işletim sistemi geliştiriciler için, (KDE için Qt, Gnome için gtk+) mevcut araç ve kütüphaneleri sunar.


Linux Uygulamaları

İşletim sistemleri uygulamaları iki türlüdür:
İşletim sisteminin kendi temel bileşenleri olanlar ve kullanıcıların sonra yükleme yapacağı olanlar. Windows, OSX gibi işletim sistemleri kapalı olan sistemlerdir. Örneğin Windows geliştiricileri, Microsoft'un derleyici ve pencere sistemlerini kullanmaları gerekir.


Linux uygulama geliştiricileri, uygulama geliştirmek için bir çok seçeneği vardır. Bu durum çok esneklik sağyacaktır fakat bileşenleri kullanmak için karar vermek önemli bir adımdır.


Linux Dağıtımları

Linux işletim sisteminin en üst katmanı: Yukarıda bahsedilen tüm katmanlar için bir Linux dağıtımın yapımcıları kullanıcılara hangi çekirdeği ve işletim sistemi araçlarını, ortamlarını ve dahil olan uygulamaları yer alacağına karar verir.


Dağıtımlar özel kişilerin ve ticari kuruluşlar tarafından yapılmaktadır. Bir dağıtım ilk sistem kurulum ve yapılandırma için dağıtıma özgü yazılımını içeren bir CD kullanılarak monte edilebilir. Dağıtımlar kullanıcılarına arama, bulma ve fare kullanımı ve bir kaç tıklama ile yeni uygulama kurulumları için kolaylıklar sağlar. En ünlü dağtımlar arasında Ubuntu, Debian, Suse, Redhat gibi dağıtımlar yer almaktadır. Biz pythontr.com olarak Debian ve Ubuntu dağıtımlarına destek veriyoruz.


Son sayıma göre Linux'un 350'den fazla farklı dağıtımı mevcuttur.


Linux Lisans

Bir bütün olarak çekirdek dağıtımını kapsayan lisans GNU Genel Kamu Lisansı (GPLv2) sürüm 2 ile uyumlu olmalıdır. Pratikte, tüm kod katkıları GPLv2 yoluyla örtülü anlamına gelir. Uyumlu bir lisans kapsamına girmeyen katkılar çekirdeğin içine kabul edilmeyecektir.


Çekirdek kodları, katkıda bulunanlar için telif hakkı atamaları gerekli değildir ve istenmez. Ana hat çekirdeği özgün sahipliğini korur tüm kod birleştirilerek sahipliği korunur.


Telif hakkı ile ilgili sorunlar hakkında sorular Linux geliştirme posta listeleri üzerinde yaygın olarak ulaşılabilir durumdadır. Linux kaynak kodu ile ilgili yasal sorularınız varsa, bu alanı anlayan bir avukat ile konuşmanız ve danışmanız gerekmektedir. Teknik posta listeleri üzerinde elde edilen cevaplara dayanarak hareket etmek riskli bir meseledir.


Linux Topluluk

Linux toplulukları iki temel formda gelir: geliştirici ve kullanıcı toplulukları.


Linux en zorlayıcı özelliklerinden biri geliştiriciler için erişilebilir olmasıdır; Gerekli becerilere sahip herkes Linux'u geliştirebilir ve gelişmenin yönünü etkileyebilir. Tescilli ürünleri açık olarak sunamıyoruz, bu durum ücretsiz olan yazılım sürecinin karakteristik bir özelliğidir.


Geliştirici toplulukları korumak ve bu tür Projelere örneğin Debian, Gentoo gibi projelere destek vermek için gönüllü olabilirsiniz.


Linux çekirdeği kendisini öncelikle kendi geliştirici topluluğu tarafından desteklenen, varoluşun en büyük ve en aktif özgür yazılım projelerinden biridir. Tipik bir üç aylık çekirdek geliştirme döngüsü 100'den fazla farklı şirket için çalışan 1000'den fazla geliştirici içerebilir.


Linux büyüme gelişimine katılmak isteyen geliştiriciler (ve şirketler) sayısında bir artış olmuştur. Donanım satıcıları Linux kullanıcıları için cazip olan ürünlerin yapımında, Linux işletim sisteminin ürünlerini desteklemesini isterler. Ayrıca entegre sistemde tercih edilir en son Smart Tv ler içinde yer almayı başarmıştır.


Diğer geliştirici toplulukları Firefox, OpenOffice.org, GNOME, KDE ve Linux üzerinde çalışan farklı uygulamalar ve ortamlara odaklanırlar.


Son kullanıcılar da, Linux'un gelişimine değerli katkılar yapabilir. Linux.com, LinuxQuestions ve dağılımları ve uygulamalar tarafından barındırılan çok sayıda ve çeşitli topluluklar gibi online topluluklar mevcuttur.


Linux topluluğunun çevrimiçi bir varlığı yoktur. Linux Kullanıcıları Grupları olarak bilinen yerel gruplar genellikle Linux işletim sistemi ile ilgili konuları görüşmek üzere bir araya, ücretsiz sunumlar, eğitim, teknik destek ve şenlik gibi etkinlikler düzenlerler.


Linux Geliştirme

Linux birçok farklı geliştirme dillerinden oluşan bir işletim sistemidir. Linux Dağıtımların kod olarak çok büyük bir yüzdesi "C (52.86%) veya C++ (25.56%) programlama dili ile yazılır. Kodun geri kalanı tüm Java, Perl ve Lisp olarak kodlanmaktadır.


Linux Çekirdek kodu yüzde 95'in üzerinde C programlama dili varlık göstermektedir. Ama diğer diller, hem çekirdeği oluşturan hem de diğer işletim sistemlerinden daha daha heterojen yapmaktadır.


Çekirdeğin gelişim süreci garip ve yeni geliştiriciler için korkutucu olarak gözükebilir fakat bunun arkasında iyi nedenler ve katı deneyimler vardır. Bu durum zamanla aşılacak bir durumdur.


Birçok Linux geliştiricileri kod editörü olarak, Vim, Eclipse, Anjuta, NetBeans ve Emacs gibi metin tabanlı araçları kullanmayı tercih ediyorlar.