İşletim Sistemleri Operation Systems Yrd. Doç. Dr. Zülfü GENÇ/ BTÖ 303 İşletim Sistemleri Genel Bakış Bu bölümde aşağıdaki konular ele alınacaktır ◦ İşletim sistemi kavramı ◦ İşletim sistemlerinin genel yapısı ◦ Tarihsel gelişim süreci ◦ İşletim sistemlerine hızlı bakış ◦ ◦ ◦ ◦ Cloud computing Sanallaştırma (virtualization) Mobil işletim sistemleri 32 ve 64-Bit işletim sistemleri Yrd. Doç. Dr. Zülfü GENÇ/ BTÖ 303 İşletim Sistemleri İşletim Sistemi Nedir? Kısaca OS (Operation System) olarak da adlandırılır Asıl itibariyle bilgisayarınızda çalışan bir yazılımdır Donanımların doğrudan denetim ve yönetimini sağlar Temel sistem işlemlerini çalıştırır Uygulama yazılımlarına çalışabilecekleri ortamı sağlar Son kullanıcı için bilgisayar donanımını anlamlı hale getirir Yrd. Doç. Dr. Zülfü GENÇ/ BTÖ 303 İşletim Sistemleri Bilgisayar Katmanlarındaki Yeri Uygulama Yazılımları Sürücüler Uygulama Yazılımları Derleyiciler Sistem Yazılımları İşletim Sistemi Makine Dili Komutları Donanım Fiziksel Birimler Yrd. Doç. Dr. Zülfü GENÇ/ BTÖ 303 İşletim Sistemleri Genel Yapı Arayüz Kabuk Çekirdek Donanım Kernel Shell GUI Yrd. Doç. Dr. Zülfü GENÇ/ BTÖ 303 İşletim Sistemleri Grafiksel ve Komut Satırı Arabirimi API’ler ve Komutlar İşletim Sisteminden Beklenen İşlevler Bilgisayarı Başlatma Kullanıcı Arayüzü Sunma Programları Çalıştırma ve İşlem Yönetimi Bellek Yönetimi Kullanıcı Yönetimi Ağ Yönetimi ve Denetimi Dosya Sistemi ve Depolama Yönetimi Performans Kontrolü Yrd. Doç. Dr. Zülfü GENÇ/ BTÖ 303 İşletim Sistemleri Internet Bağlantısı Aygıt, Sürücü ve I/O Yönetimi Kernel Çekirdek veya Core olarak da isimlendirilir İşletim sisteminin kalbidir; yazılım ve donanımı birbirine bağlar Donanıma kullanıcıların ve uygulama yazılımlarının doğrudan erişimlerini sınırlandırır ve düzenler Bir çok sistemde kabuk ve çekirdek ayrımı sadece kavramsaldır Yrd. Doç. Dr. Zülfü GENÇ/ BTÖ 303 İşletim Sistemleri Shell: Kabuk Katmanı Kabuk katmanı çekirdeğe kullanıcı veya uygulama arabirimlerinden gelen komutları iletmekten sorumludur Aynı zamanda çekirdekten aldığı bildirimleri ve çekirdeğin geçerli durumunu arayüze iletir Uygulama yazılımları, API (Application Programming Interface) adı verilen arabirimler ile kabuk katmanıyla konuşur Bu anlamda API’ler de kabuk katmanına dahil edilebilirler API’ler yazılım geliştiriciler için SDK olarak bilinen geliştirme kılavuzları sunarlar Yrd. Doç. Dr. Zülfü GENÇ/ BTÖ 303 İşletim Sistemleri GUI: Grafiksel Kullanıcı Arayüzü Monitörünüze yansıyan grafiksel görünümdür Klavye ve fare aracılığı ile bilgisayarı birçok farklı iş için kullanabilmenizi sağlar Son kullanıcı açısından işletim sisteminin anlamı bu arayüzdür Yrd. Doç. Dr. Zülfü GENÇ/ BTÖ 303 İşletim Sistemleri Metin Tabanlı Kullanıcı Arabirimi Günümüzde GUI kavramı grafiksel arayüzleri ifade eder Ancak MS-DOS gibi sadece komut girilebilen metin tabanlı arabirimlere sahip işletim sistemleri de vardır Linux veya sunucu işletim sistemlerinde ise komut satırı işlevlerini kullanmak son derece kritik ve popülerdir Yrd. Doç. Dr. Zülfü GENÇ/ BTÖ 303 İşletim Sistemleri Depolama Birimleri Yönetimi ve Dosya Sistemi Her işletim sisteminin bir depolama yönetim sistemi vardır ◦ FAT, NTFS, Linux SWAP … vb. ◦ Çoğu işletim sistemi birden fazla yöntemi destekler Uygun şekilde biçimlendirilmiş her depolama biriminin bir kök dizini; yani depolama başlangıç noktası vardır ◦ root\ , c:\ …. vb. İşletim sistemi bu kök dizin içinde alt dizinlerin ve dosyaların oluşturulmasını ve yönetilmesini sağlar Yrd. Doç. Dr. Zülfü GENÇ/ BTÖ 303 İşletim Sistemleri Donanım Sürücüleri İşletim sistemlerinin bağlı donanımları kullanabilmesi için uygun sürücü yazılımına sahip olması gerekir Her işletim sistemi, yaygın kullanıma sahip bir çok donanım için yerleşik sürücüler bulundurur Ancak işletim sisteminden sonra piyasaya çıkan donanımların veya yenilenen sürücü yazılımlarının sisteme eklenmesi gerekir Yerleşik sürücüler, bir donanımı sisteme tanıtsa bile tüm fonksiyonları ile çalıştırmayabilir Üretici web sitesinden güncel sürücüleri indirmek ve işletim sistemine eklemek en doğru yöntemdir Yrd. Doç. Dr. Zülfü GENÇ/ BTÖ 303 İşletim Sistemleri Programlama Dilleri ve Derleyiciler Bir işi bilgisayara yaptırmak için kabuk katmanına bir dizi komutun bir düzen içinde verilmesi gerekir Bu komutları oluşturmak için kullanılan kod sistematiklerine programlama dili denilir ◦ C++, C#, VB, Pascal, Cobol, Java ◦ Derleyici (compiler) yazılımlar ile uygun biçime dönüştürülürler Bu komutlar bir yorumlayıcı tarafından kabuk katmanına aktarılabileceği gibi, makine diline çevrilerek de aktarılabilir Yrd. Doç. Dr. Zülfü GENÇ/ BTÖ 303 İşletim Sistemleri Uygulama Yazılımları Kategorisi Örnekler Kelime İşlemciler Notepad, WordPad, MS Office Word, OpenOffice Writer Hesap Tabloları MS Office Excel, Corel Quattro Pro, OpenOffice Calc Sunu MS Office PowerPoint, Corel Presentations, OpenOffice Impress Grafik Paint, PhotoShop, PaintShopPro Vektörel / 3D Corel, Freehand, OpenOffice Draw, AutoCad, 3DMax, Maya Veritabanı MS Office Access, MS SQL Server, MySQL, Oracle Server Yazılım / Tasarım VS. Net, Dreamweaver, FrontPage Ticaret Muhasebe, Stok, Üretim Planlama vb. yazılımlar… Web ve İletişim Internet Explorer, Firefox, MSN Messenger, Google Talk, CuteFTP Multimedya Windows Media Player, Winamp, Ulead Video Studio Güvenlik Antivirüs, Firewall, Internet Filtreleme, PopUp Blocker Oyun Mayın Tarlası, Quake III, Counter-Strike Yrd. Doç. Dr. Zülfü GENÇ/ BTÖ 303 İşletim Sistemleri Komut İşletim Yetenekleri Mono Programming: Aynı anda tek işlevi yürütme (DOS) Multi Tasking: Aynı anda birden çok görevi yapma (Windows) Multi User: İki veya daha fazla kullanıcıya hizmet verebilme Multi Processing: İki veya daha fazla CPU bulunması Multi Threading: İşleri küçük parçalara ayırıp yürütebilme Yrd. Doç. Dr. Zülfü GENÇ/ BTÖ 303 İşletim Sistemleri İşletim Sistemlerinin Tarihsel Gelişimi İlk bilgisayarlarda OS yoktu ve işlemler donanım kontrollü idi ◦ İşlemler bir panele takılan kablolarla makine dilinde yapılıyordu Daha sonra yığın işlem yapabilen sistemler tasarlandı ◦ Manyetik bantlarda sıralanmış program komutlarının çalıştırılması Entegre devrelerin kullanımı ve bilgisayar tasarımlarının ilerlemesi ile işletim sistemleri kullanılmaya başlandı ◦ ◦ ◦ ◦ IBM OS360 (1965) UNIX (1970) DOS - MacOS (1980) Windows -Linux (1990) Yrd. Doç. Dr. Zülfü GENÇ/ BTÖ 303 İşletim Sistemleri UNIX İşletim Sistemi İlk olarak AT&T Bell firması tarafından C dilinden yazıldı Ücretsiz ve her sisteme kolayca uyarlanabilir yetenekte idi Güncel işletim sistemleri, UNIX üzerinden geliştirilmiştir Açık kaynak kodludur; Linux’lar UNIX türevleridir Günümüzde kullanılan ticari sürümleri oldukça pahalı ve azdır Daha çok sunucu bilgisayarlarda kullanılan, kararlı sistemlerdir Yrd. Doç. Dr. Zülfü GENÇ/ BTÖ 303 İşletim Sistemleri MacOS Apple firmasının Macintosh bilgisayarları için özel olarak tasarlanan bir UNIX türevidir İlk sürümlerinden beri güçlü ve renkli görsel bir arabirimi vardır Masaüstü yayıncılık alanını hedefleyen özel bir bilgisayar sistemi için geliştirilmesi, daha kararlı olmasını sağlamıştır Sınırlı hedef kitle ve pazar payına rağmen, bir çok yeteneği çok daha erken tarihlerde kullanıcılarına sunmuştur Günümüzde oldukça güçlü sürümleri bulunmaktadır Yrd. Doç. Dr. Zülfü GENÇ/ BTÖ 303 İşletim Sistemleri DOS: Disk Operating System 80’li yıllara damgasını vuran, siyah komut satırı ekranına sahip IBM firmasının işletim sistemdir Daha sonra Microsoft tarafından MS-DOS olarak sunulmuştur Kendinden sonra gelen ve görsel arabirime sahip bir çok işletim sistemi de, uzun süre MS-DOS tabanlı olmuştur Ana görevi disket ve sabit disk gibi saklama ortamlarının yönetimidir Bugün Windows’un DOS tabanlı olmayan sürümleri, bir komut satırı ekranı ile DOS komutlarını desteklemektedir Yrd. Doç. Dr. Zülfü GENÇ/ BTÖ 303 İşletim Sistemleri OS/2 ve Windows 3 DOS işletim sisteminin siyah ekranına karşın MacOS’un güçlü görsel arabirimi, oldukça başarılı bir gelişim süreci sergiliyordu IBM ve Microsoft, görsel bir arabirime sahip işletim sistemi geliştirmeyi hedefleyerek OS/2 projesine başladılar Bir süre sonra Microsoft projeden ayrılmış, IBM ise bir süre daha projeyi sürdürmeye devam etmiştir Microsoft görsel arabirime sahip OS sürecinde ilk başarısını Windows 3 ile elde etmiştir Yrd. Doç. Dr. Zülfü GENÇ/ BTÖ 303 İşletim Sistemleri Windows 95 Microsoft’un tüketici odaklı ilk işletim sistemidir Bugün %90’lık pazar payına ulaşan Microsoft hakimiyeti Windows 95 ile başlamıştır Grafik arabiriminin yanında bilgisayar kullanımını kullanıcılar için son derece basitleştirmesi en önemli başarısıdır Windows 95, genelde ev kullanıcılarına hitap etmiştir Windows 95’in iş istasyonlarını hedefleyen kardeşi ise Windows NT 3.1 olmuştur Ev ve iş istasyonları için ayrı Windows’lar çıkartma eğilimi uzun süre devam etmiştir Yrd. Doç. Dr. Zülfü GENÇ/ BTÖ 303 İşletim Sistemleri Hızlı Bakış: Windows Sürümleri Windows 95, 98 ve ME sürümleri DOS tabanlıdır Windows NT üzerine geliştirilen Windows 2000’in elde ettiği başarı sonrasında DOS tabalı Windows’lar terk edilmiştir Windows XP, Windows 2000 Popüler Windows Sürümleri mimarisi üzerine kuruludur Windows 95 Windows NT 3.1 XP sonrasında ev ve iş Windows 98 NT Workstation 4 istasyonları için ayrı Windows Windows ME Windows 2000 versiyonları da terk edilmiştir Windows XP Home / Pro Bunun yerine, daha az veya Windows Vista daha fazla özellik sunan farklı Starter / Home Basic / Home Premium Bussines / Ultimate alt sürümlerin çıkartılması Windows 7 yoluna gidilmiştir Starter / Home Basic / Home Premium Professional / Ultimate / Enterprise Yrd. Doç. Dr. Zülfü GENÇ/ BTÖ 303 İşletim Sistemleri Microsoft Windows Serüveni 1985 1987 1990 1993 1993 1993 1995 1996 1998 1999 2000 2000 2001 2003 2006 2007 2008 Yrd. Doç. Dr. Zülfü GENÇ/ BTÖ 303 İşletim Sistemleri 2009 2010 Windows 98 ve NT Windows 95’in ilk pencereleri, bir çok açıdan yetersizdi Windows 98, bir önceki sürümün oldukça toparlanmış halidir Windows 98 DOS tabanlı iken, kardeşi NT (New Technology), Microsoft’un yeni nesil işletim sistemi teknolojisidir Windows 98’in Second Edition, en kararlı Windows sürümlerinden birisi olmuştur Yrd. Doç. Dr. Zülfü GENÇ/ BTÖ 303 İşletim Sistemleri Windows ME ve 2000 Milennium Edition, en başarısız Windows sürümlerindendir Windows 2000 iş istasyonları ve sunucular için sunulduğunda, ev kullanıcıları için çıkartılmış bir ara sürüm niteliğindedir Windows 2000 ise, gelecekteki Windows sürümlerinin de temelini oluşturan çok ciddi bir altyapıya sahip sistemdir Halen Windows 2000 ile çalışan çok sayıda sunucu vardır Yrd. Doç. Dr. Zülfü GENÇ/ BTÖ 303 İşletim Sistemleri Windows XP XP, en uzun soluklu Windows sürümüdür (6 yıl aktif kullanım) Windows NT ve 2000 ile aynı alt yapıyı kullanır Microsoft Windows XP için verdiği desteği yavaş yavaş azaltmaktadır; sadece SP2 ve üzeri için destek sunmaktadır Günümüzde çoğu kullanıcı halen Windows XP kullanmakta; hatta Vista ve sonraki sürümlere geçişte direnmektedir Aynı zamanda halen çoğu kullanıcının ihtiyacına cevap verebilecek durumdadır Yrd. Doç. Dr. Zülfü GENÇ/ BTÖ 303 İşletim Sistemleri Windows Vista Vista, Windows’da özellikle görsel açıdan devrim niteliğindedir ◦ Auro özelliği olarak sunulan şeffaf ve 3 boyutlu pencereler ◦ Çok daha şık bir tasarım ve uyumlu renkler ◦ Gerçek zamanlı multimedya ve pencere önizleme destekleri ◦ Programcılar için çok basit “ileri düzey grafik işlemler” kütüphaneleri Görsel yeniliklerin yanında çok sayıda gelişme de sunmaktadır ◦ IPv6 desteği ve gelişmiş ağ yönetim hizmetleri ◦ Yerleşik güvenlik duvarı ve ileri düzey güvenlik servisleri ◦ Oldukça başarılı yeni bir klasör gezinti ve dosya listeme sistemi Yrd. Doç. Dr. Zülfü GENÇ/ BTÖ 303 İşletim Sistemleri Windows Server Ailesi Windows XP’ye eşlik eden sunucu sürümü Server 2003’tür Windows Server 2008 ise Vista ve Windows 7’ye eşlik eder Windows Server ailesi, bir çok yönden Windows 2000 Server sürümünü takip eder; süreçler çok fazla farklılaşmamıştır Windows Home Server ise, ev ve küçük işyeri ağlarında kullanılması amacıyla piyasaya sürülmüş sınırlı bir sürümdür Yrd. Doç. Dr. Zülfü GENÇ/ BTÖ 303 İşletim Sistemleri Windows 7 Windows 7,Vista Core kullanmaktadır; yani 7. sürüm değildir ◦ Vista’ya geçişteki sürücü sıkıntıları büyük oranda yaşanmayacaktır Vista’nın problemleri giderilmiş, daha performanslı halidir Vista sonrasında bir çok geliştirme içermektedir ◦ Kullanıcıyı rahatsız eden abartılı güvenlik uyarları daha düzenlidir ◦ Başlat menüsü ve görev çubuğu yeni nesil bir tasarıma sahiptir Yrd. Doç. Dr. Zülfü GENÇ/ BTÖ 303 İşletim Sistemleri Linux Kernel İlk linux çekirdeğini, 1991 yılında Linus Torvalds hazırlamıştır UNIX’e benzer bir yapıda ve açık kaynak kodludur UNIX gibi sunucu tarafında çok kuvvetli olmasının yanında masaüstü uygulamaları için önemli geliştirmeler bulundurur Ücretsiz dağıtılan ve Linux çekirdeğini kullanan çok sayıda işletim sistemi mevcuttur Bir çok ülke, ulusal organizasyonlarla kendi dillerinde Linux dağıtımları geliştirmektedir Yrd. Doç. Dr. Zülfü GENÇ/ BTÖ 303 İşletim Sistemleri Linux İşletim Sistemleri Çok sayıda Linux sürümü bulunsa da, bazı sürümler dünya çapında yaygınlaşmış ve genel kabul görmüştür ◦ Red Hat, Free BSD, Fedora, Debian, Ubuntu, Mandriva, SuSE Dağıtımlar GPL (Genel Kamu Lisansı) kullanır Kaynak kodları da ücretsiz olarak dağıtımlara eklenir Son kullanıcı piyasasına Windows hakim olsa da, sunucu pazarında ciddi bir paya sahiptirler Yrd. Doç. Dr. Zülfü GENÇ/ BTÖ 303 İşletim Sistemleri Pardus:Yerli Malı Linux TÜBİTAK’ın geliştirdiği yerli Linux dağıtımı projesidir İlk sürümü 2005 yılında çıkmıştır Bazı özellikleri diğer Linux dağıtımlarının da ilgisini çekmektedir ◦ Ubuntu'nun KDE arabirimini kullanan sürümü Kubuntu, ilerideki sürümlerinde Pardus Ağ Yöneticisi'ni kullanacağını açıklamıştır Çomar / COnfiguration MAnageR gibi ilginç benzetmelerle Türkçe isimlendirmeleri ile de dikkat çekmektedir Yrd. Doç. Dr. Zülfü GENÇ/ BTÖ 303 İşletim Sistemleri Google Chrome Chrome, aslında Google tarafından geliştirilen, açık kaynak kodlu bir web tarayıcısıdır Google 2009 yılında aynı isim ile bir linux sürümü çıkaracağını da duyurmuş ve Alfa aşamasına ait görüntüleri yayınlamıştır Chrome işletim sisteminin internet üzerinden kullanılabilmesi ve Google web servisleri ile entegre olması bekleniyor Bu anlamda Google henüz açılmadan Windows’un yerini alacak Azure platformuna rakip olmaya hazırlanıyor Chrome’un ilk olarak netbook bilgisayarları hedeflemesi bekleniyor Yrd. Doç. Dr. Zülfü GENÇ/ BTÖ 303 İşletim Sistemleri Cloud Computing : Web Tabanlı İşletim Sistemleri Bilgisayar bulutu anlamına gelen bir kavramdır Sadece bir web tarayıcısı ve hızlı bir internet bağlantısı gerektiren, web tabanlı servis platformlarını ifade etmektedir Bu sayede bilgisayarınızın donanım gücü önemini yitirmektedir Bunu mümkün kılan ise Google, Amazon, Microsoft ya da IBM gibi büyük şirketlerin sunucu çiftlikleridir Henüz çok yeni bir sistem olsa da kullanıcılara düşük maliyet ile geniş olanaklar vaat etmektedir Google Docs uygulaması bu sistemler için iyi bir örnek kabul edilebilir Yrd. Doç. Dr. Zülfü GENÇ/ BTÖ 303 İşletim Sistemleri Windows Azure Azure, Windows servis platformu olarak tanımlanmaktadır .Net tabanlı geliştirici araçları kullanıma sunulmuş durumdadır İlk tanıtım aşamasında sistemin ücretsiz olarak açılacağı, daha sonra 3 farklı abonelik sistemi ile sunulacağı duyurulmuştur ◦ Kullandığın kadar öde, abonelik sistemi ve çoklu kullanım lisansı Hizmetin Türkiye’de 2010 Mart ayından önce satışa sunulması beklenmemektedir Sistem şu anda ücretsiz olarak denenebilir durumdadır Yrd. Doç. Dr. Zülfü GENÇ/ BTÖ 303 İşletim Sistemleri MacOS Windows ve Linux mücadelesinin dışında MacOS gelişimi kendi alanında devam etmektedir MacOS sistemlerin en önemli yenliği Intel işlemcileri de desteklemeye başlaması ve PC’ler kullanılabilecek olmasıdır Eşdeğer Windows ve Linux sürümlerine karşı halen oldukça güçlü durumdadır MacOS 9 sonrası sürümlerin hepsi MacOS X adını alır MacOS X’in; Puma, Jaguar, Panther, Tiger, Leopard ve Snow Leopard sürümleri bulunmaktadır Yrd. Doç. Dr. Zülfü GENÇ/ BTÖ 303 İşletim Sistemleri Sanallaştırma / Virtualization Yazılımsal olarak sanal donanım ortamları oluşturulmasıdır Bu sayede farklı alt işletim sistemleri kullanılması mümkün olur ◦ Örneğin Windows bir sistemin için Linux kullanabilir, veya tersi şekilde Linux bir sistemi kapatmadan Windows çalıştırabilirsiniz Sanal makineler, ana makinenin donanım kaynaklarını paylaşırlar İnternette kiralanan web sunucuları genellikle bir tek makine üzerinde çalışan çok sayıda sanal makineden ibarettir Yrd. Doç. Dr. Zülfü GENÇ/ BTÖ 303 İşletim Sistemleri Sanallaştırma Yazılımları Piyasada bir çok sanallaştırma yazılımı bulunmaktadır ◦ VMWare, Microsoft Virtual PC ve VirtualBox en popülerleridir Sanal makinelerin sabit diskleri, özel tür bir dosyadan ibarettir Bu yazılımlar, sanal işletim sistemine kurdukları özel bir yazılım ile sanal makine ile master sistem arası ilişkileri düzenlerler Yrd. Doç. Dr. Zülfü GENÇ/ BTÖ 303 İşletim Sistemleri WebOS: Web İşletim Sistemleri WebOS, internet tarayıcınızda çalışan sanal işletim sistemidir Cloud computing kavramı ile aynı şey değildir ◦ Cloud computing servis platformları ileri düzey bir 3D oyunu bile oynamanızı mümkün kılarken, WebOS yetenekleri oldukça sınırlıdır Internet üzerinde bu hizmeti veren çok sayıda site vardır ◦ Craythur, Desktoptwo, EyeOs, Glide, Orca, Xindesk, Wubuntu Yrd. Doç. Dr. Zülfü GENÇ/ BTÖ 303 İşletim Sistemleri Mobil İşletim Sistemleri PDA ve akıllı telefonlar gibi mobil cihazlar için özel olarak tasarlanmış işletim sistemleridir ◦ ◦ ◦ ◦ ◦ Microsoft Windows CE ve Windows Mobile Symbian 60 Google Android iPhone OS Palm OS Yrd. Doç. Dr. Zülfü GENÇ/ BTÖ 303 İşletim Sistemleri 32 ve 64-Bit İşletim Sistemleri İşletim sistemleri kullanılacakları CPU mimarisine bağımlıdır 32 bit bir CPU ile sadece 32 bit bir işletim sistemi kullanılabilir 64 bit desteği yaygın olarak 32 bit CPU’lara komut seti olarak eklendiğinden, 64 bit bir CPU ile 32 veya 64 bit OS çalışabilir 32 bit işletim sistemleri sadece 3 GB hafızayı destekler 3 GB’dan büyük RAM için, 64 bit CPU ve işletim sistemi kullanılmalıdır Yrd. Doç. Dr. Zülfü GENÇ/ BTÖ 303 İşletim Sistemleri