İşletim Sistemi Nedir?

Benzer belgeler
Açık Kaynak Kodlu Yazılım

AÇIK KAYNAK KODLU İŞLETİM SİSTEMLERİ DERS NOTLARI 1-İşletim Sisteminin görevi nedir? En çok kullanılan işletim sistemleri nelerdir?

Linux un Temel Bileşenleri. Linux Nedir? Aydın ÜSTÜN (Selçuk Üniversitesi) e-posta:

BİLGİ İŞLEM DERS 1. Yrd Doç Dr. Ferhat ÖZOK MSGSU FİZİK BÖLÜMÜ MSGSU FİZİK BÖLÜMÜ

AÇIK KAYNAK İŞLETİM SİSTEMİ KURULUMU MODÜLÜ

Linux e Giriş ve Dağıtımlar

I. Oturum: GNU/LINUX A GİRİŞ

Linux ve Özgür Yazılım Nedir?

AÇIK KAYNAK İŞLETİM SİSTEMLERİ

Finans Dünyasında Linux ve Özgür Yazılımlar

EYLÜL 2012 İŞLETİM SİSTEMLERİ. Enformatik Bölümü

İşletim Sistemleri; İÇERİK. Yazılım BİLGİ TEKNOLOJİLERİ VE UYGULAMALARI Yazılım Türleri

Linux İşletim Sistemi. EnderUnix Çekirdek Takımı Üyesi afsin ~ enderunix.org

Temel Linux Eğitimi 1., 2. ve 3. Bölümler

Özgür Yazılım ve GNU/Linux'a Giriş

Efe Çiftci Çankaya Üniversitesi Bilgisayar Mühendisliği Bölümü Kasım 2012 CENG 191 Computer Engineering Orientation Özel Sunumu

Yazılım Mühendisliğine Giriş 2018 GÜZ

1.Debian. 2.Ubuntu. Şekil 1. Güncel logosu

Bilgisayar Yazılımları

İŞLETİM SİSTEMLERİ. Enformatik Bölümü

AÇIK KAYNAK İŞLETİM SİSTEMLERİ DERS 1

SUNUCU MİMARİLERİ GİRİŞ LİNUX SİSTEMLERE. Öğr.Gör. Mehmet Can HANAYLI

Akademik Dünyada Özgür Yazılım. Akademik Dünyada. Onur Tolga Şehitoğlu

TEMEL BİLGİ TEKNOLOJİLERİ KULLANIMI

Bilgisayar Mühendisliğine Giriş. Yrd.Doç.Dr.Hacer KARACAN

Bilgi ve İletişim Teknolojileri (JFM 102) Ders 7. LINUX OS (Sistem Yapısı) BİLGİ & İLETİŞİM TEKNOLOJİLERİ. LINUX Yapısı

GNU/Linux'un Tarihi ve Önemi

Özgür Yazılım ve Pardus. Erkan Tekman TÜBİTAK UEKAE 7 Aralık 2006

İŞLETİM SİSTEMİ KATMANLARI (Çekirdek, kabuk ve diğer temel kavramlar) Bir işletim sisteminin yazılım tasarımında ele alınması gereken iki önemli konu

İŞLETİM SİSTEMİ KATMANLARI (Çekirdek, Kabuk ve diğer temel kavramlar) Öğr.Gör. Dr. Dr. Şirin KARADENİZ

Gpl Nedir? Açık Kaynak Kod Nedir?

Linux İşletim Sistemleri. Eren BAŞTÜRK.

BÖLÜM LILO ve LINUX İŞLETİM SİSTEMİ

Linux İşletim Sistemlerine Bakış & Ücretsiz Yazılımlarla Çözümler

Debian. Debian projesi, 1993 de Ian Murdock tarafından ticari olmayan bir proje

Özgür Yazılım Nedir?GPL, GNU...

Linux İşletim Sistemlerine Bakış & Ücretsiz Yazılımlarla Çözümler

YRD. DOÇ. DR. AGÂH TUĞRUL KORUCU

Kemalettin YıldY KADIR HAS UNIVERSITY. UNIX SYSTEM ADMINISTRATOR

BİT in Temel Bileşenleri (Yazılım-1)

Yazılım Mühendisliğine Giriş 5. Hafta 2016 GÜZ

İŞLETİM SİSTEMLERİ. (Operating Systems)

Bilgisayar Yazılımları

YRD. DOÇ. DR. AGÂH TUĞRUL KORUCU Kernel çeşitleri

Linux un Tarihsel gelişimi

İşletim Sisteminin Katmanları

Linux Nedir, Neden Önemlidir

Özgür Yazılım Nedir? Özgür Yazılım Tarihçesi Ve Sektörde İş Olanakları

UNIX Türevi Sistemlerin Tarihsel Gelişimi

Linux İşletim Sistemi Tanıtımı

Bilgisayar Programlama. 1.Hafta

1.1. Yazılım Geliştirme Süreci

Linux'ta Kabuk ve Kabuk Programlama

Linux Çekirdeği 2.6 ve Güvenlik. Fatih Özavcı IT Security Consultant.

Bilgi ve İletişim Teknolojileri (JFM 102) Ders 6. BİT in Temel Bileşenleri (Yazılım-3) BİLGİ & İLETİŞİM TEKNOLOJİLERİ.

GNU/Linux ve Özgür Yazılım. Mahir B. Aşut EkoPC Kurucu Ortağı ve Yöneticisi, LKD Üyesi

İşletim Sistemleri Okutman Murat KARA

GNU/Linux Nedir? Linux Kullanıcıları Derneği Kaya Oğuz

Kabuk Programlama (Bash)

TEMEL BİLGİSAYAR. Ders Notları. Yard. Doç. Dr. Seyit Okan KARA

Pardus. Erkan Tekman, T. Barış Metin. 18 Mayıs Ulusal Dağıtım Projesi Ulusal Elektronik ve Kriptoloji Enstitüsü. Pardus için 10 Neden

Başlık: Windows Sistem Yöneticisi Yardımcısı

Pardus Temel Seviye Kullanıcı Eğitimi. Sürüm Ağustos 2012 Pardus K Fatih Akıllı Tahta sürümüne göre hazırlanmıştır.

Özgür Yazılım, İş ve Kariyer Modelleri. Mahir B. Aşut EkoPC Kurucu Ortağı ve Yöneticisi, LKD Üyesi

Özgür Yazılım Lisansları

Pardus. A. Murat Eren, 25 Mart Pardus Geliştiricisi. Pardus Yenilikleri Sık Sorulan Sorular

EKLER EK 12UY0106-5/A4-1:

GNU/Linux ve. E. Fatih Yetkin. Bursa, Nisan slide 1

İşletim Sistemleri. Bilgisayar Mühendisliğine Giriş. Teknoloji Fakültesi / Bilgisayar Mühendisliği. Öğr.Gör.Günay TEMÜR

İşletim Sisteminin Katmanları

Bilgisayar İşletim Sistemleri BLG 312

Servis olarak Altyapı

BİLİŞİM TEKNOLOJİLERİ İŞLETİM SİSTEMLERİ (AÇIK KAYNAK) MODÜLER PROGRAMI (YETERLİĞE DAYALI)

Web Sunucularda Uygulama Koşturulması

Ulusal Dağıtım Projesi ve Pardus

İşletme ve Devreye Alma Planı Yerel Okul Sunucusu Uygulama Yazılımları Prototipi TRscaler Technology Solutions

Bilişim Teknolojilerine Giriş

Compiere Açık kodlu ERP + CRM yazılımı. Hüseyin Ergün Önsel Armağan Serkan Demir

Linux ve Özgür Yazılım ile tanışma... Türker Gülüm İstanbul Koç Üniversitesi 2011

BİLİŞİM SİSTEMLERİNİN PRENSİPLERİ

PAROLA GÜVENLİĞİ. İlker Korkmaz. homes.ieu.edu.tr/ikorkmaz 08/06 UBE

Çekirdek Nedir? Ne yapar?

Pardus. S.Çağlar Onur, 21 Aralık Pardus Projesi [TÜBİTAK / UEKAE] Linux Kullanıcıları Derneği

Özgür Yazılım Proje Yönetimi

*BSD Ailesine genel bakış

Linux da Masaüstü Uygulamaları Aralık Barış Özyurt

Veritabanı Uygulamaları Tasarımı

Unix İşletim Sistemi Ailesi Afşin Taşkıran

Bilgi ve İletişim Teknolojileri (JFM 102) Ders 10. LINUX OS (Programlama) BİLGİ & İLETİŞİM TEKNOLOJİLERİ GENEL BAKIŞ

Nasıl Pardus Geliştiricisi Olunur?

Android e Giriş. Öğr.Gör. Utku SOBUTAY

OMNET Ağ Benzetim Yazılımı (Network Simulation Framework) BİL 372 Bilgisayar Ağları. GYTE - Bilgisayar Mühendisliği Bölümü

İşletim Sistemi Nedir?

ÖĞRENME FAALİYETİ 1 ÖĞRENME FAALİYETİ- 1

1.Debian. 2.Ubuntu. Şekil 1. Güncel logosu

PHP ile İnternet Programlama

Turquaz. Açık kodlu muhasebe yazılımı Turquaz Proje Grubu

Java Temel Özellikleri

T.C. MİLLÎ EĞİTİM BAKANLIĞI MEGEP (MESLEKİ EĞİTİM VE ÖĞRETİM SİSTEMİNİN GÜÇLENDİRİLMESİ PROJESİ) BİLİŞİM TEKNOLOJİLERİ AÇIK KAYNAK İŞLETİM SİSTEMİ-1

Özgür Yazılım ve Linux'a Giriş

Transkript:

İşletim Sistemi Nedir? İşletim sistemi, bilgisayar donanımının doğrudan denetimi ve yönetiminden, temel sistem işlemlerinden ve uygulama programlarını çalıştırmaktan sorumlu olan sistem yazılımıdır. İşletim sistemi, bütün diğer yazılımların belleğe, girdi/çıktı aygıtlarına ve kütük sistemine erişimini sağlar. Birden çok program aynı anda çalışıyorsa işletim sistemi her programa yeterli sistem kaynağını ayırmaktan ve birbirleri ile çakışmamalarını sağlamaktan da sorumludur. Şekil 1 Günümüzde bazı popüler işletim sistemleri Bilgisayarın ortaya çıkışından bu yana çok sayıda işletim sistemi geliştirilmiştir. Bunlardan birisi de UNIX tir. UNIX donanıma bağlı kalmaması ve bilgisayarlar arasında taşınabilir özelliklere sahip olması nedeniyle uzun yıllar boyunca tercih edilen bir işletim sistemi olmuştur. UNIX in tarihçesi 1960'larda AT&T'nin Bell Laboratuarları, MIT ve General Electric'in ortaklaşa yürüttükleri bir projede Multics isimli bir işletim sisteminin patentini alırlar. Bell Laboratuarı bu projeden çekilene kadar iki çalışanı, Dennis Ritchie ve Ken Thompson, bu projede çalışır. Bell Laboratuarları bu projeden çekildikten sonra bu iki kişi yeni bir projede bir işletim sistemi ortaya çıkarırlar. İşletim sistemine Multics Şekil 2. KennethTompson ve DennisRitche adından esinlenerek Unics ismi takıldıysa da daha sonraları bu isim UNIX olarak değiştirildi. UNIX'in en temel özelliği Dennis Ritchie tarafından yaratılan C dili ile oluşturulmasıydı. İşletim sistemleri o güne kadar sistemin mimarisine bağlı olan makine dili ile yazılmaktaydı. UNIX işletim sistemi makine dili yerine C dili temel alınarak kodlanmıştı. Bu da işletim sisteminin diğer platformlara taşınmasını kolaylaştırıyordu. UNIX işletim sistemi duyulmaya başladıktan sonra başta üniversiteler olmak üzere birçok kişi ve kurumun ilgisini çekti. Özellikle üniversitelerin bilgisayar bilimleri

bölümlerinde okuyan ve çalışan kişilerin desteği ile birlikte UNIX kısa zamanda büyük bir ilerleme kaydetti. Bunun sonucu olarak da en önemli bilgisayar işletim sistemi unvanını eline geçirdi. 1980'lerin başında AT&T UNIX işletim sisteminden para kazanma yoluna gitti ve işletim sistemini özel lisanslar ile pazarlamaya başladı. UNIX'in ortaya çıktığı günden itibaren işletim sisteminin gelişmesine yardımda bulunan birçok kişi bu karara karşı çıktı. Çünkü üniversitelerde bilgisayar araştırmalarında hep UNIX in kaynak kodlarıkullanılıyordu. Bunun üzerine Hollandalıbir profesör olan Andrew Tanenbaum kendi derslerinde kullanabileceği küçük bir UNIX sistemi yazmıştır. Bu işletim sistemi Minix diye isimlendirilmiştir. Şekil 3Andrew Tanenbaum Daha sonra amacı UNIX benzeri ve parasız dağıtılabilen bir işletim sistemi ortaya çıkarmak olan GNU projesi Richard Stallman tarafından başlatıldı. GNU yu desteklemesi için 1984 yılında Stallman ve arkadaşları Free Software Foundation (FSF) projesini yarattılar. FSF'te free ile anlatılmak istenen bedava olan yazılımdan çok özgürce dağıtılan yazılım manasını taşımaktaydı. FSF'e göre herhangi bir amaç için kullanılabilen, kopyalanıp üzerinde gerekli değişiklik yapılabilen ve daha gelişmiş bir Şekil 4 Richard MatthewStallman yazılım sistemine dahil edilebilen yazılım serbest yazılım (free software) olarak kabul edilmişti. Bu özgürlükler için temel olarak gereken şey yazılımın koduna erişimdi. Bu yüzden bu akım aynı zamanda Kaynak Kodu Açık Yazılım Open Source Software (OSS) olarak da anılır. Linux günümüzde bulunan en büyük kaynak kodu açık yazılımdır. AT&T firması UNIX üzerinde çalışmalara devam ederek, 1991 de UNIX System V i geliştirdi. Günümüzde UNIX Systems Laboratuarları Caldera şirketine aittir. Bu yazılımlar Open Unix adıyla dağıtılmaktadır. Sun firması ise kendi UNIX sistemini Solaris adıyla dağıtmaktadır.

Açık Kaynak Kodlu Yazılım Açık kaynak yazılım (open-source software) veya açık kaynak kodlu yazılım, kaynak kodu isteyen herkese açık olan yazılımlardır. Bu tür yazılımların ayırt edici özelliği kullanıcıya değiştirme özgürlüğü sağlamasıdır. Açık kaynak kodlu yazılımlar, uyarlanabilir, sağlam, hızlı ve güvenlidir. Açık kaynak kod dünyası, yeni bir yazılım üretme biçimi, yeni iş modelleri sunmaktadır. Dünyanın her tarafından bilişim uzmanlarınca geliştirilen açık kaynak kod yazılımları, insanlığın ortak malıdır. Programcılar yazılımları geliştirirken kullandıkları programlama dilleriyle kaynak dosyaları oluştururlar. Daha sonra derlemeli dillerde (C, C++, Java, Pascal) bu dosyayı derleyerek çalıştırılabilir hale çevirirler. Açık kaynaklı yazılım savunucuları her üretilen ve dağıtılan programla birlikte kaynak kodunun da dağıtılmasını savunurlar. Bu sayede geliştirme esnasında ve ilerde yeni sürümlerin ortaya çıkması esnasında daha çok sayıda gözün süzgecinden geçmiş daha kaliteli bir yazılım çıktığını düşünürler. En iyi bilinen açık kaynak kodlu yazılımlar: Linux Open Office GNU Debian'dır GNU Genel Kamu Lisansı (GPL) Kullanımda olan her yazılım, üreticisinin haklarını ve kullanıcının haklarını korumaya yönelik bir lisans anlaşmasına sahiptir. Lisans anlaşması nesnenin kullanımı, geliştirilmesi, yeniden yapılandırılması, değiştirilmesi, alıntısının yapılabilmesi gibi hususları belirleyen düzenlemeler içerir. Böylece üreticinin izni olmadan çoğaltılamaz, değişiklik yapılamaz. Ancak açık kaynak kodlu (Özgür Yazılım, Free Software) yazılımda istediğimiz gibi kopyalama yapabilir, yeniden dağıtabilir, hatta yeniden düzenleyebiliriz. Özgür yazılım anlaşmalarından en popüleri Genel Kamu Lisansı (GPL, General Public License)'dir. 1983 yılında MIT Üniversitesinden Richard Stallman özgür yazılım kavramını ortaya koyarak GNU organizasyonunu kurdu. Stallman'ın özgür yazılım kavramı, bir yazılımı istediğimiz gibi kullanma, kopyalama, değiştirme, geliştirme ve geliştirdiğimiz yazılımı aynı mantıkla dağıtma özgürlüğünü ifade etmektedir. Bir yazılımın kaynak kodları herkese açık ve geliştirilebilir olmalı, isteyen her geliştirici bu açık kodları değiştirerek yeni yazılımlar geliştirebilmeli ve yine bu yeni yazılımlar da kaynak kodları açık olarak özgürce dağıtılmalıdır. Bu düşünce açık kaynak kodlu yazılım (Open source software) olarak adlandırılır. GPL lisans anlaşması, GNU projesi için 1983 yılında Richard Stallman tarafından geliştirilmiştir. Bu lisansın en önemli özelliği yazılımların kaynak kodları ile birlikte

dağıtılması gerektiği fikridir. Bu kullanıcılara yazılımın kaynak kodunu inceleme, istediği değişiklikleri özgürce yapma, kaynak kodları kısmen ya da tamamen farklı projede kullanmahakkı vermektedir. Hatta kullanıcılar yeni geliştirmiş oldukları yazılımdan maddi kazanç da elde edebilir ancak yeni yazılım da GPL lisansı ile lisanslanmalı ve geliştirmeye açık olmalıdır. GPL'nin en son güncel sürümü FSF (Free Software Foundation - Özgür Yazılım Vakfı) tarafından 29 Haziran 2007 tarihinde yayınlandı. GNU Genel Kamu Lisansı, dört temel özgürlüğü garanti altına almayı amaçlamaktadır. Bu özgürlükler şunlardır. Yazılımı sınırsız kullanma özgürlüğü Yazılımın nasıl çalıştığını inceleme ve amaçlara uygun değiştirme özgürlüğü Yazılımın kopyalarını sınırsız dağıtma özgürlüğü Yazılımın değiştirilmiş halini dağıtma özgürlüğü GPL'de yazılımların ücretlendirilmesi ile ilgili bir kural bulunmamakla birlikte, GPL lisanslı yazılımların büyük çoğunluğu ücretsiz sunulmaktadır. Yazılımdan öte, kullanıcıya sunulan destekten para kazanılması yaygındır. GPL yazılımı isteyen her kullanıcı dilediği kopyalayabilir ve kullanabilir. Geliştirici yazılım için bir ücret talep ediyorsa kullanıcı bu ücreti ödemek durumundadır, ancak ücret talep edilmiyorsa kullanıcının herhangi bir yasal yükümlülüğü yoktur. GPL lisansı ile kullanıcının hakları korunurken, aynı zamanda tüm kaynak kodlara müdahale yetkisi vererek onun da bir geliştirici olması ve GPL yazılım geliştirmesi teşvik edilmektedir. UNIX Mimarisi UNIX işletim sisteminin kendine özgü mimarisi bulunmaktadır. UNIX işletim sisteminin en belirgin özelliklerinden birisi, C programlama dili ile yazılmış olmasıdır. UNIX işletim sistemi yaklaşık 10.000 satırlık C programının oluşuyor. Bunun dışında kalan 1.000 satır ise assembly dili ile yazılmıştır. UNIX işletim sistemi üç ana bölümden oluşmuştur. Bunlar; Çekirdek (Kernel) Kabuk (Shell) Dosya sistemi ve diğer uygulamalar

Çekirdek (Kernel) Şekil 5 UNIX sistem modeli UNIX i oluşturan bölümler birbirleriyle karşılıklı etkileşim halinde çalışırlar. UNIX işletim sisteminin özünü çekirdek oluşturmaktadır. Çekirdek bilgisayara erişimi denetler, bilgisayarın belleğini yönetir, dosya sisteminin bakımını yapar ve kullanıcılar arasında bilgisayar kaynaklarının bölüşümünü sağlar. Uygulamalar Çekirdek (Kernel) CPU Bellek Diğer Aygıtlar Şekil 6 Çekirdek, uygulama yazılımlarının bilgisayarın donanımına erişmesini sağlar

Temel olarak UNIX/Linux sistemleri monolitik bir yapıya sahiptir. Monolitik sistemlerde işletim sisteminin çekirdek kısmı büyüktür ve neredeyse tek parça halindedir. Bu tür sistemlerde sisteme ekleme yapmak zordur ve tüm çekirdeğin yeniden derlenmesini gerektirmektedir. Monolitik yapının tersi mikro kernel teknolojisidir. Mikro kernel sistemlerde işletim sisteminin çekirdeği küçük tutulur. İşletim sisteminin pek çok fonksiyonu gerektiğinde sonradan yüklenilebilen modüller halinde tasarlanır. Bu tür sistemlerde işletim sisteminin genişletilmesi başkaları tarafından daha kolay yapılır, ancak tasarımları ayrıntılı ve zordur. Win32 sistemleri tipik olarak mikro kernel sistemi ile tasarlanmıştır. UNIX sistemleri yüklendiğinde çekirdek tarafından oluşturulmuş bir process login programını çalıştırır. Böylece sisteme girecek kişi bir login ekranıyla karşılaşır. Login ekranı ile karşılaşıldığında işletim sistemi yüklenmiştir ve o anda login programı çalışmaktadır. Login programı kullanıcıdan bir kullanıcı ismi ve password ister ve bunun doğruluğunu kontrol eder ve daha önce belirlenen bir programı o kullanıcı için çalıştırır. Sisteme girdikten sonra kullanıcı için çalıştırılacak program genellikle bir komut yorumlayıcı programdır. Böylece sisteme girildikten sonra kullanıcı bir komut yorumlayıcı ile karşılaşılır. UNIX sistemlerinde komut yorumlayıcılar (command interpreter / shell) bir tane değildir. Bir kullanıcı sisteme girdiğinde hangi komut yorumlayıcının çalıştırılacağı ve kullanıcıya ilişkin diğer bilgiler, kullanıcı yaratılırken belirlenir ve korunmuş olan bazı dosyaların içerisinde saklanır. UNIX sistemleri bir süper kullanıcının her türlü işlemi yapabileceği bir sistemdir. Süper kullanıcının kullanıcı ismi root biçimindedir. Sisteme süper kullanıcı olarak giren birisi hiçbir güvenlik engeline takılmadan sistemle ilgili her türlü işlemleri yapabilir. Her türlü dosyaya erişebilir. Kabuk (Shell) UNIX kabuğu, kullanıcı ile işletim sistemi arasındaki bağlantıyı kurar. Kabuk bir komut yorumlayıcısı olarak da tanımlanabilir. Verilen komutları okur, yorumlar ve diğer programları çalıştırarak dosyalara erişebilecek veya çıktı sağlayabilecek bir biçime dönüştürür. Kabuk, aynı zamanda güçlü bir programlama dili olarak görülebilir. C programlama diline benzer bir biçimde kabuk programları hazırlanarak çalıştırılabilir. Kabuğun ana görevi, terminalden girilen komutları okuyarak yorumlamaktır. Böylece kullanıcı ile çekirdek arasındaki etkileşim kabuk aracılığıyla sağlanır.

Şekil 7OpenBSD UNIX sürümünde terminal ve kabuk komutları örneği (ksh KornShell) UNIX için iki ayrı kabuktan söz edilebilir. Bunlar, Bourne kabuğu (Bourne Shell) C Kabuğu (C Shell) Bourne kabuğu komutlarının Algol 68 e benzemesine karşılık, C kabuğunun komutları C dilinin yapısına daha çok benzediği söylenebilir. LINUX işletim Sistemi Linux işletim sistemi, UNIX işletim sisteminin bir sürümüdür. Her yönüyle UNIX işletim sistemine benzemektedir ve UNIX standartlarını taşımaktadır. UNIX gelişimi boyunca büyük ve orta boy sistemlerde ve özellikle iş istasyonlarında kullanılan bir işletim sistemi olarak yerini korumuştur. Kişisel bilgisayarların ortaya çıkmasıyla birlikte kişisel bilgisayarlarda çalışabilecek etkili bir UNIX sürümünün geliştirilmesi gerekiyordu. Bu gereksinimi karşılamak amacıyla yapılan çalışmalar sonucunda Linux ortaya çıkmıştır. 1990 yılında Helsinki Üniversitesinde Finli bilgisayar bilimi öğrencisi Linus Torwalds Intel mimarisindeki bilgisayarlar için hafıza yönetimi yapan bir yazılım üzerinde Şekil 8 Linus Torvalds çalışmaya başladı. Bir zaman sonra bu projesinin genişletilmiş hâlinin UNIX çekirdeği gibi çalışabileceğini farketti. 1991 yılında comp.os.minix haber grubuna üzerinde çalıştığı projeyi bildiren ve geliştirme için öneri isteyen bir mesaj gönderdi. Torwalds bu yeni işletim

sistemine Linus'un MINIX'i olarak tanımladığı LINUX adını verdi. Unix üzerinde program geliştiren kişilerden Linux'un geliştirilmesi için yardım teklifleri gelmeye başladı. Linux'un bir önemli yanı ise GNU projesinin eksik olan bir parçasını doldurmasıydı. GNU projesi çerçevesinde yaratılacak olan Unix benzeri işletim sisteminin çoğu parçaları bitmişti. Yapılmayan en önemli parça işletim sisteminin çekirdeği idi. Bu eksikte Linux tarafından kapatılmış oldu. 1994 yılında Linux 1.0 serisi kernel GPL lisansı altında yayınlandığında, Linux 100.000 kullanıcıya erişmişti. Günümüzde Linux'un milyonlar ile belirtilen bir kullanıcı kitlesi bulunmaktadır. Yapılan araştırmalardan İnternette bulunan web sunucularının büyük çoğunluğu Linux işletim sistemi üzerinde çalışmakta olduğu sonucu ortaya çıkmıştır. Linux Mimarisi Linux işletim sisteminin temel yapısı UNIX işletim sistemine (şekil 5) benzemektedir. Çekirdek, disk ve yazıcı gibi donanım aygıtlarını yöneten ve programları çalıştıran bir bölümdür. Linux bilgisayara bağlı her aygıtı bir aygıt dosyası olarak ele alır. Bir donanım aygıtına erişebilmek için söz konusu aygıt dosyası üzerinde işlem yapmak yeterlidir. Kabuk, kullanıcı ile çekirdek arasındaki ilişkiyi sağlayan Linux katmanıdır. Kabuk, kullanıcı tarafından girilen komutları yorumlar ve bunları çekirdeğe gönderir. Login işlemi ile birlikte sisteme girildiğinde hangi komut yorumlayıcı programın (shell) çalıştırılacağı kullanıcı yaratılırken belirtilmektedir. Linux sistemlerinde en yaygın olarak kullanılan komut yorumlayıcı programlar şunlardır: C Shell (csh) Bourne Shell (bsh) Bourne Again Shell (bash) Korne Shell (ksh) Bu komut yorumlayıcı programlar arasında bazı komut farklılıkları, script dillerinde çeşitli farklılıklar vardır. Bunlardan en yaygın kullanılanı Linux ta bash tir. UNIX sistemlerinde C Shell de yaygın olarak kullanılmaktadır. Kuşkusuz komut yorumlayıcılar birer sistem programlarıdır ve yeni komut yorumlayıcılar yazılabilir. Kullanıcı login olduğunda başka kişiler tarafından yazılmışkomut yorumlayıcılar ile de çalışabilir. Komut yorumlayıcılar işletim sistemi için sıradan birer process tir. UNIX/Linux sistemlerinde içsel komut kavramı yoktur. Bütün komutlar aslında birer çalışabilen dosyadır. Dolayısı ile her türlü komut yorumlayıcıda bu komutlar çalışmaktadır. Linux işletim sistemi, çekirdek ve kabuk dışında bir dosya sistemine ve uygulama programlarına sahiptir. Linux ta aynen Windows ta olduğu gibi dosyalar dizinler içine yerleştirilerek kullanılır. Bu dizinlerin bir kısmı Linux tarafından kullanılır ve işletim sisteminin bir parçası olarak değerlendirilir. Linux kullanıcılara hiyerarşik bir dosya yapısı oluşturma olanağı sağlar. Linux işletim sistemi üzerinde çok sayıda uygulama programı ve yardımcı programlar geliştirilmiştir. Bunlar içinde grafik kullanıcı arayüzleri (GUI) önemli yer tutmaktadır. Bu

yazılımlar Linux işletim sistemi ile birlikte dağıtılmakta ve işletim sisteminin önemli bir parçası olarak değerlendirilmektedir. Ayrıca kelime işlemciler, grafik programları, elektronik tablo yazılımları ve diğer yazılımlar Linux işletim sisteminin son katmanı olarak kullanıcılara sunulmaktadır. Linux Dağıtımları Linux işletim sistemi standart bir işletim sistemidir. Ancak çeşitli firma veya gruplar tarafından farklı biçimlerde paketlerle dağıtılmaktadır. Tablo 1 de bazı Linux dağıtımları görülmektedir. Linux un çeşitli dağıtımları olmasına rağmen, Linux çekirdeği tek merkezden dağıtılır. www.kernel.org adresinden Linux çekirdeğine ulaşılabilir. Tablo 1 Bazı Linux Dağıtımları Caldera Open Gentoo OpenSuse Turkix Centos Kernel Oralux Ubuntu Corel Knoppix Pardus Vector Debian Kubuntu PcLinuxOS Xubuntu Dynebolic Mandrake Puppy Zenwalk Edubuntu Mandriva Redhat EvilEntity Mepis Slackware Fedora METU-CC Linux Suse FreeBSD Nessus TrueBSD ForeSight NetBSD Truva Gelecek OpenBSD Turbolinux Kısaca Linux Avantaj ve Dezavantajları; Avantajları UNIX işletim sistemine sahip bir bilgisayar kullanmak istiyorsanız ve bu işletim sisteminde platforma bağımlı bir yazılım kullanmıyorsanız, Linux ideal bir çözümdür. Linux ücretsizdir. Sadece işletim sisteminin maliyeti açısından değil, verdiği performans için ihtiyaç duyduğu donanım açısından da çok ucuzdur. Bir Linux makine bu sayede sadece işletim sistemi açısından değil donanım olarak da ucuza gelmektedir. Linux hızla gelişmektedir. Bu gelişimin en büyük yararı, eksikliklerin kullanıcıların talepleri ve çabaları sonucunda hızla giderilmesidir. Linux diğer tüm işletim sistemlerine belirli bir donanım için daha hızlı destek verebilmektedir. Linux çok değişik donanımlar ve servisler için özel olarak hazırlanır. İşletim sisteminin temelini oluşturan çekirdek kullanıcı tarafından da derlenebildiği için, bu derleme sırasında sadece kullanım amacına yönelik alt programlarla donatılır. Bu genel olarak daha

sistemin performansını artırmaktır. (Örnek olarak SCSI donanımınız yoksa çekirdeğinizde SCSI ile ilgili alt programlara yer vermezsiniz) Dezavantajları Linux un serbestçe dağıtılıyor olması birçok kişinin bu işletim sistemine güvenmemesine yol açmıştır. Ciddi olsa, bedava olmazdı! kanısı oldukça yaygındır. Linux un sürekli değişiyor olması en büyük dezavantajlarından biridir. Henüz tüm ihtiyaçlara cevap vermemesi, gelişimin bazı aşamalarında topyekûn değişiklik yapılması, gelişimi takip etmek için bazen sürekli yenileme yapılması birçok kullanıcının bu işletim sistemine güvenmemesine yol açmaktadır. Diğer işletim sistemlerinde olan teknik destek, dağıtım ve dokümantasyon alanlarında eksiklikleri vardır. Bu konudaki eksikleri gidermek için çeşitli gönüllü kuruluşlar, kullanıcı grupları oluşmuştur. Zamanla Linux teknik desteği ticari bir konu olarak ortaya çıkmıştır. Şu anda tüm dünyada Linux çözümleri konusunda teknik destek veren danışmanlar bulunmaktadır. Linux işletim sistemini geliştirenlerin ticari kaygılar gütmemeleri bazı ticari yazılımların Linux üzerinde gelişmemesine sebep olmuştur. Linux üzerinde belirli konularda diğer işletim sistemlerinden aşağı kalmayan yazılımlar bulunmasına rağmen, belirli bazı konularda çok zayıf kalmıştır. Linux üzerinde yer alan çözümlerin hepsi, basit kullanıcıların rahatça kullanabileceği düzeyde değildir. Bazı çözümler kullanıcıların belirli bir yazılım ve işletim sistemi bilgisine sahip olmalarını gerektirmektedir. Şekil 9 Bazı Popüler Linux Dağıtımlarının Logoları

Ubuntu Linux Dağıtımı Ubuntu, Linux tabanlı özgür ve ücretsiz bir işletim sistemidir. Ubuntu projesi, Linux ve özgür yazılımın, bilgisayar kullanıcılarının günlük yaşamının bir parçası haline gelmesi amacıyla başlatılmış olup ilk kararlı sürümü Ekim 2004'te yayınlanmıştır. Ubuntu günümüzde 20 milyonu aşkın kullanıcısıyla dünyanın en yaygın masaüstü Linux dağıtımı konumundadır. Ubuntu Güney Afrikalı girişimci Mark Shuttleworth'e ait Canonical Ltd.'nin sponsorluğunda geliştirilmektedir. Canonical, Ubuntu'yu bireysel ve kurumsal tüm kullanıcılara tamamen ücretsiz olarak sunmakta, teknik destek almak isteyen kuruluşlara destek vererek gelir elde etmeyi amaçlamaktadır. Canonical Ubuntu'yu açık kaynak kodlu ve özgür yazılım olarak sunduğu için, dünya çapında bu işletim sistemini kullanan ve geliştiren gönüllü kullanıcıları sayesinde, tüm bir işletim sistemini tek başına geliştirmek zorunda kalmaz. Tüm Linux katkıcılarının yaptığı geliştirmeler, onu temel alan Ubuntu'yu da doğrudan geliştirir. Şekil 10 Mark Shuttleworth Ubuntu sözcüğü, Zulu dilinde "insanlık" anlamına gelir, aynı zamanda "başkalarına karşı merhametli, şefkatli, iyiliksever" olmak gibi insani değerlerin temel alındığı bir dünya görüşüdür. Buradan hareketle Ubuntu, İnsanlık için Linux (Linux For Human Beings) sloganını kullanır. Şekil 11 Ubuntu İşletim Sistemi Masaüstünden bir görünüm Ubuntu'nun altı ayda bir yeni sürümünü yayınlanmaktadır. Canonical, iki yılda bir yayınlanan LTS (Uzun Süreli Destek; Long Term Support) sürümlerine, hem masaüstü için hem de sunucu ortamlarında 5 yıl boyunca güncelleme desteği sunmaktadır. Ara sürümler için ise 9 ay boyunca güvenlik yamaları, geliştirmeleri ve yazılım güncelleştirmeleri desteği

sunulmaktadır. Ubuntu dağıtımı http://www.ubuntu.com web adresinden ücretsiz olarak temin edilebilir. Kaynaklar C ve Sistem Programcılar Derneği, 2002, Unix/Linux Sistem Programlama Ders Notları Çetin G., 1999, Linux İşletim sistemi, Seçkin Yayınevi Özbilen A., 2013, Linux Sistem ve Ağ Yönetimi, Pusula Yayınları Özkan Y., 2004, Linux İşletim Sistemi, Alfa Yayınları Wikipedia, 2014, Linux, http://tr.wikipedia.org/wiki/linux Wikipedia, 2014, Ubuntu, http://tr.wikipedia.org/wiki/ubuntu (işletim_sistemi) Yazıcı M., 2014, Açık Kaynak İşletim Sistemleri Ders Notu, www.muratyazıcı.com