İşletim Sistemleri ve Dosya Yönetimi PDF
Document Details
Uploaded by ReachableArgon
Anadolu Üniversitesi
Tags
Summary
Bu belge, işletim sistemlerinin tanımını, tarihsel gelişimini, özelliklerini ve çalışma prensiplerini kapsamaktadır. İşletim sistemlerinin yönetim işlevleri, yapısı, bileşenleri ve çeşitleri hakkında bilgi vermektedir.
Full Transcript
Bölüm 3 İşletim Sistemleri ve Dosya Yönetimi İşletim Sistemlerinin Tanımı, Tarihçesi ve öğrenme çıktıları Özellikleri 1 2...
Bölüm 3 İşletim Sistemleri ve Dosya Yönetimi İşletim Sistemlerinin Tanımı, Tarihçesi ve öğrenme çıktıları Özellikleri 1 2 1 İşletim sistemlerinin tanımını, tarihçesini, İşletim Sistemlerinin Yönetim İşlevleri özelliklerini ve çalışma prensibini 2 İşletim sistemlerinin dosya, aygıt, bellek, açıklayabilme süreç yönetimini sıralayabilme İşletim Sisteminin Yapısı ve Bileşenleri 3 4 3 İşletim sistemlerinin kullanıcı arayüzü, İşletim Sistemlerinin Türleri çekirdek ve kabuk bileşenlerini ayırt 4 Aygıt türüne ve kaynak kodu türüne göre edebilme işletim sistemlerini örneklendirebilme Anahtar Sözcükler: İşletim Sistemleri Dosya Yönetimi Aygıt Yönetimi Bellek Yönetimi İşlem/Süreç Yönetimi Kullanıcı Arayüzü Çekirdek Kabuk 62 Bilişim Teknolojileri GİRİŞ rak çalışmaya devam etmektedir. İşletim sistemleri, Bilgi ve iletişim teknolojilerinde meydana ge- özel ve önemli yazılımlardır. Donanım ve yazılım- len değişimler sonucunda insanlık tarihine damga lar arasındaki koordinasyonu sağlarken kullanıcı vuran bilgisayar sistemleri, bireylerin günlük ha- arayüzü ile kullanıcılardan gelen talepleri tekrar bu yatına çeşitli şekillerde giriş yapmıştır. Bilgisayar bileşenlere iletirler. Bu işlemleri yaparken de kul- sistemlerini yalnızca kişisel bilgisayarlar olarak dü- lanıcının yaptığı işlemlerdeki güvenlik açıklarını şünmemek gerekir. Akıllı cep telefonlarından oyun da kapatmaya çalışırlar. İşletim sistemleri üzerinde konsollarına, beyaz eşyalardan otomobillerdeki çalışan uygulama yazılımlarını çalıştırdığı gibi bu multimedya sistemlerine kadar bilgisayar sistemleri programların geliştirileceği platformları da kullanı- kullanılmaktadır. Bilgisayar sistemleri temel olarak cıya sağlamaktadır. donanım ve yazılım bileşenlerinden oluşmaktadır. Donanım bileşenleri bilgisayarların gözle görü- len, elle tutulan somut parçaları olarak yazılımlar Donanım olmadan işlevsizdir. Yazılımlar programlama dille- riyle yazılmakta ve çeşitli alt türlere ayrılmaktadır. Bu noktada işletim sistemleri de en temel yazı- lımlardan biri olarak karşımıza çıkmaktadır. İşle- tim sistemleri donanımla diğer yazılım bileşenleri arasında bir köprü görevi gören sistem yazılımları İşletim Sistemi olarak genel sistemin bir ahenk ve uyum içerisinde Kullanıcı Yazılım çalışmasını sağlayan, gerekli güvenlik önlemlerini alan ve genel haberleşmeyi düzenleyen özel yazı- lımlardır. Bilgisayar sistemlerindeki tüm kaynak- ları en uygun şekilde diğer bileşenlere paylaştıran, aygıtlara gerekli kaynakları kullanması için izin veren, bellek kullanımını kontrol eden, dosya yö- Şekil 3.1 İşletim Sistemlerinin Donanım, Kullanıcı ve netimini gerçekleştiren işletim sistemleri hakkında Yazılım İlişkisi bu bölümde, işletim sistemlerinin ne olduğu, tari- hi, özellikleri, görevleri, çalışma prensibi, yönetim işlevleri, yapısı, bileşenleri ve işletim sistemlerinin İşletim Sistemlerinin Kısa Tarihçesi türleri işlenmektedir. İşletim sistemlerinin tarihçesine bakıldığında ilk gerçek sayısal bilgisayarın tasarımcısı olan İn- İŞLETİM SİSTEMLERİNİN TANIMI, giliz matematikçi Charles Babbage (1792-1871) tarafından temellerin atıldığı söylenebilir. Charles TARİHÇESİ VE ÖZELLİKLERİ Babbage tarafından geliştirilen sayısal bilgisayar İşletim sistemleri, bir bilgisayar sisteminde- sayıları işlemekte ve buharla çalışmaktaydı ancak ki koordinasyon süreçlerini yürüten ana yazılım o dönemdeki mevcut altyapının yeterli olmama- olduğu için büyük önem taşımaktadır. Bu bö- sından dolayı tasarladığı bu bilgisayarlarda bir lümde işletim sistemlerinin ne olduğu, tarihsel işletim sistemi yapısının olmadığı görülebilmek- gelişim süreci, özellikleri, gerçekleştirdiği görevler tedir. 1940’lı yıllara yani II. Dünya Savaşı döne- ve nasıl çalıştığı ile ilgili bilgiler sunulmaktadır. mine kadar elektronik sistemlerde işletim sistemi bulunmamaktadır. 1947 yılında transistörün Bell İşletim Sistemlerinin Tanımı Laboratuvarında keşfedilmesi işletim sistemleri İşletim sistemleri, bir bilgisayar sisteminin yazı- tarihinde önemli bir yer tutmaktadır. Transistör, lım boyutunda bir yönetici gibi görev yaparak ya- elektrik sinyalleri ve elektrik gücünü değiştirmek zılım ve donanım arasında iletişim ve haberleşme ve düzenlemek için kullanılan bir yarı iletken ci- süreçlerini koordine etmektedir. Bu özel yazılımlar hazdır. Böylece vakum tüplerine ihtiyaç kalmak- ile bilgisayarda yüklü olan diğer programlar, mev- sızın düğmeler aracılığıyla akım kontrol edilebilir cut donanım kaynakları en etkin şekilde kullana- hâle gelmiştir. 63 İşletim Sistemleri ve Dosya Yönetimi 1950’li yıllarda geliştirilen ve delikli kartların kullanıldığı bilgisayarlarda da işletim sistemi mevcut değildir. Babbage’ın yaptığı çalışmalardan ilham alan Howard Aiken ise John Von Neumann ile birlikte vakum tüpleri ile dijital bilgisayarların bugünkü iskeletini ortaya koyan çalışmalar gerçekleştirmiştir. Bu bilgisayar sistemleri bugünkü yapıdan oldukça farklı olarak büyük bir odayı kaplayan binlerce vakum tüpünden oluştuğu için kullanılabilirliği sınırlıdır. Programlama mantığı kontrol panelinde ilgili yerlere takılan kablolar ile gerçekleştirilmiştir. Makine diliyle yapılan bu işlemler için bir işletim sistemine gerek- sinim yoktur. Özetle, Babbage’ın ürettiği sayısal bilgisayardan 1950’li yıllara kadar geçen sürede kullanılan elektronik makinelerde herhangi bir işletim sisteminden söz etmek mümkün değildir. Bu dönem 1. dönem işletim sistemleri olarak anılmaktadır. 2. dönem işletim sistemleri ise 1955-1965 yılları arasında- ki dönemde gerçekleşen gelişmeleri kapsamaktadır. Büyük ve hantal bilgisayarların kullanılmaya devam ettiği bu dönemde, bu bilgisayarların soğutulması için klimalar kullanılmaktaydı. Bu dönem yine de üreticilerin müşterilere bu bilgisayarlar üzerinde iş uygulamaları yapması için satıldığı bir dönem olarak dikkat çekmektedir. Bu dönemdeki en önemli gelişmelerden biri günümüzde kul- lanılan ilk işletim sistemlerine prototip olabilecek bir işletim siste- minin geliştirilmesiydi. Bu işletim sistemi, General Motors tara- fından 1956 yılında tek bir IBM ana bilgisayarını çalıştırmak için oluşturulmuştu. Diğer IBM ana bilgisayar sahipleri de bu işletim sistemini izleyerek kendi işletim sistemlerini oluşturdu. 1966-1980 yılları arasındaki 3. dönem işletim sistem- lerinde ise bilgisayarlarda kullanılan transistörlerin yeri- ne entegre devreler kullanılmaya başlanmıştır. Bu döneme damgasını vuran işletim sistemi IBM OS/360 olmuştur. Bu dönemde ayrıca ilk grafiksel kullanıcı arayüzü kullanı- lan bilgisayar olan Xerox Alto (Şekil 3.2) geliştirilmiştir. Bu Şekil 3.2 Xerox Alto üzerinde bulunan Alto bilgisayarın üzerindeki işletim sistemi Alto Executive olarak Executive İşletim Sistemi adlandırılmıştır. 3 yıl sonra 1976 yılında ise, Steve Jobs ve Kaynak: http://www.righto.com/2017/10/the- Steve Wozniak Apple Computers’ı kurarak Apple I adlı ilk xerox-alto-smalltalk-and-rewriting.html tek devre kartlı bilgisayarı tanıttılar. 4. dönem işletim sistemleri 1980 ile 2015 yılla- rı arasındaki dönemde gerçekleşen gelişmelerin ele alındığı dönemdir. Bu dönemde kişisel bilgisayarlar günlük hayatta kullanılmaya başlanmıştır. Kişisel bilgisayarların yaygınlaşmasıyla, her eve bir bilgisa- yar ve dolayısıyla bir işletim sistemi girmeye başla- mıştır. Bu dönemdeki en önemli gelişmelerden biri Microsoft firmasının ortaya çıkardığı MS-DOS işle- tim sisteminin 1981 yılının Ağustos ayında ilk IBM kişisel bilgisayarda kullanılması oldu. MS-DOS metin tabanlı bir işletim sistemi olarak kullanımı uzmanlık gerektirdiğinden dolayı ilerleyen yıllarda Windows’un etkileşimli kullanıcı arayüzüne sahip işletim sistemlerine yerini bıraktı. Bunun dışında bu dönem, pek çok ilke imza atılan bir dönem ola- rak dikkat çekmektedir. Kişisel bilgisayarlarda kul- lanılan ilk kullanıcı arayüzüne sahip işletim sistemi Şekil 3.3 Apple Lisa İşletim Sistemi Kullanıcı Arayüzü Apple Lisa’nın üretilmesi (1983), Linux işletim sis- Kaynak: https://www.britannica.com/technology/Lisa teminin oluşturulması (1991), işletim sistemi dün- yasında kullanım kolaylığı ve hızlı çalışmasıyla devrim yaratan ve bugünkü işletim sistemlerini arayüzüyle ilham veren Microsoft Windows 95 (1995) işletim sisteminin ortaya çıkışı bu dönemde gerçekleşmiştir. 64 Bilişim Teknolojileri farklı kullanıcılar varsa bu ayrımı göz ardı etmemeli ve gerekli kaynakları sunmalıdır. Gerçekleşen hatalı dikkat işlemleri durdurmalı ve hata çözülene kadar yeniden Xerox Alto adlı bilgisayar, ilk grafiksel kullanıcı çalışmasına izin vermemelidir. arayüzünü 1973’te kullanmasına rağmen 1983’te İşletim sistemleri temel olarak bilgisayarın do- Apple Lisa ilk kez “kişisel bilgisayarlar”da grafik- nanım ve yazılım bileşenlerini en etkin ve verimli sel kullanıcı arayüzünü kullanmıştır. şekilde kullanmak zorunda olan ana uygulamadır. İşletim sistemleri donanım kaynaklarını adil ve verimli bir şekilde yönetirler. Hangi donanım kay- 5. dönem olarak da adlandırılan 2015 sonrası nağına kullanıcıdan istek geldiğini ve bu isteklerin başlayan ve günümüze kadar devam eden işletim nasıl karşılanabileceğini organize ederler. Yani kul- sistemleri dünyasında ise özellikle mobil cihazların lanılan kaynakların hesap cetvelini tutarak verim- gelişmiş özellikler kazanması, güçlü işlemci, dona- liliği en üst düzeyde tutmaya çalışırlar. Donanım nım ve sensörlerle donatılmasıyla kullanıcıların bu kaynaklarını kullanıp yönetirken kullanıcılardan yöne doğru bir eğilim gösterdiği bir dönem olarak bu detayları gizleyerek onların kullanım zorluğu dikkat çekmektedir. Mobil işletim sistemlerinden yaşamasına engel olurlar. Bir soyutlama (abstracti- Android ve IOS’un iyice güç kazandığı bu dönemde on) oluşturarak donanım ayrıntılarını gizlemenizi giyilebilir teknolojilerin, akıllı telefonların kullanım sağlar. Bunun için uygun ve etkileşimli kullanıcı oranlarının yüksekliği de göze çarpmaktadır. Bu dö- arayüzü sunmak zorundadır. İlk dönem işletim sis- nemde Nesnelerin İnterneti, Bulut Bilişim gibi yeni temlerinde bu arayüzler oluşturulamadığı için bil- yaklaşımların da devreye girmesiyle işletim sistemleri gisayarları kullanabilmek için temel bilişim okur- üreticilerinin de kendilerini bu yönde geliştirme eği- yazarlığı yetmiyordu. Daha sonraki dönemlerde, liminde olduğu görülebilmektedir. Bunun dışında kullanıcıların rahatça bilgisayar sistemlerini kulla- robotik, üç/dört boyutlu yazıcılar, sanal dijital asis- nabilmeleri için uygun arayüzler oluşturulmuş ve tanlar, kuantum bilgisayarlar gibi teknolojilerin de böylece bu işletim sistemleri sayesinde bilgisayarlar yaygınlaşmasıyla daha farklı ve özelleştirilmiş işletim tüm evlere girmeye başlamıştır. Bu arayüzler sa- sistemlerinin gelecekte yaygınlaşacağı öngörülebilir. yesinde işletim sistemleri donanım ve kullanıcılar arasında bir aracı işlevi görmektedir. Bu arayüzlerin İşletim Sistemlerinin Özellikleri ve etkileşimli olması, kolay kullanılabilir ve anlaşılabi- lir olması, kullanıcıyı yormaması beklenmektedir. Görevleri İşletim sistemleri, bilgisayar sistemlerinin organi- zatörü gibi hareket ederek donanımların uyumlu bir şekilde çalışmasını sağlamak zorundadır. Bir işletim İşletim sistemlerinin, bilgisayardaki do- sistemi, mevcut iş yükünü kontrol ederek bu işleri nanımları soyutlayarak donanımda ger- bir sıraya göre yerine getirmelidir. İşletim sistemle- çekleşen işlemlerin karmaşıklığını ortadan ri ayrıca işlerde öncelikli olanları tespit ederek bu kaldırmasına ve kullanıcılara kolay bir işlemlerin gerçekleşmesini sağlamalıdır. Öncelikli kullanım olanağı sağlamasına Soyutlama işleri belirleyebilmesi için de güçlü bir iş bölümü (abstraction) adı verilmektedir. gereklidir. İş bölümü yaparken işlemler arasındaki süre mümkün olduğunca kısa olmalıdır. Bunun için işletim sisteminin yanıt verme süresinin hızlı olma- İşletim sistemlerinin bir diğer özelliği de üzerin- sı çok önemlidir. Kısa sürede çok fazla işlem yap- de barındırılan verileri uzun sürede saklama yete- ma kabiliyetine sahip olmalı ve çoklu görevleri de neğidir. İşletim sistemleri çökmelere karşı pek çok gerçekleştiriyor olması gerekmektedir. Bunun için mekanizma kullanarak bu problemleri gidermeye de işletim sisteminin rahat çalışması, hafif-küçük çalışmakta ve verilerin kaybolmasına engel olmak- boyutlu olması ve fazla yer kaplamaması gerekmek- tadır. Hata durumlarında problemli işlemleri so- tedir. Ayrıca öncelikli işlemleri ve diğer işlemleri ger- nuçlandırmak için kesmeleri kullanır. Bir şekilde çekleştirebilmesi için işletim sistemlerinin mevcut çökme ve verilerin kaybolması gerçekleştiğinde de kodları yorumlayabilme ve işleme kabiliyetine de bu verilerin geri yüklenmesinin kolaylıkla gerçek- sahip olması gereklidir. İşletim sistemini kullanan leştirilebilir olması gerekmektedir. 65 İşletim Sistemleri ve Dosya Yönetimi ve bazı işletim sistemlerinin oldukça pahalı olması gibi dezavantajlar da içermektedir. İşletim sistemlerinin donanımlara mevcut işi durdurup veya ara verip farklı iş ve iş- Bu genel bilgiler dışında işletim sistemlerinin lemleri gerçekleştirmesini sağlayan sinyal- dosya yönetimi, aygıt yönetimi, bellek yönetimi, lerine kesme adı verilmektedir. işlem/süreç yönetimi, güvenlik mekanizmalarının kontrolü, sistem performansı kontrolü, komut yo- rumlama, iletişim yönetimi, ağ iletişimi ve yönetimi İşletim sistemlerinin bilgisayar sisteminin gü- gibi görevleri de bulunmaktadır. Bunlara ilişkin bil- venliğindeki rolü de oldukça önemlidir. Sistemin giler ilerleyen başlıklarda detaylarıyla yer almaktadır. hatalardan arıtılmış olması, yalnızca yerel dosyalar- da değil ağ güvenliği önlemlerini de almış olması ve İşletim Sistemlerinin Çalışma yeni hataları önleyecek şekilde çalışması gerekmek- Prensibi tedir. İşletim sistemleri gizlilik ve güvenlik adına İşletim sistemleri, bilgisayar sistemlerinin ilk açılış kullanıcıların ve işletmelerin verilerini güvende tu- anından itibaren devreye girmesi gereken sistemlerdir. tan özelliklere sahiptir. İşletim sistemleri üzerinde Açma tuşuna basıldığı anda BIOS adı verilen açılış bütünleşik olarak gelen güvenli duvarları ve antivi- ekranı devreye girmektedir. BIOS bilgisayar dona- rüsler olduğu gibi, üçüncü parti yazılımlarla da giz- nımlarını kontrol eder ve tanımlar. BIOS, donanım lilik ve güvenlik en üst düzeyde tutulabilmektedir. taraması esnasında bir problemle karşılaştığında sesli Ayrıca işletim sistemlerinin sürekliliğin sağlanması ve görsel olarak hata mesajı yayınlar ve bilgisayarın için güncellemelerinin yapılması, bakımlarının ve açılışını hata düzelene kadar durdurur. Daha sonra güvenlik yamalarının yüklenmesi gerekmektedir. BIOS, işletim sistemini yükleme aşamasına geçer. Bir işletim sisteminde pek çok kullanıcı aynı Açılış sırasında kendini belleğe yerleştiren işletim sis- platform üzerinde farklı kullanıcı hesaplarıyla çalış- temi ve üzerindeki uygulamalar hazır hâle gelir. Bu malarını sürdürebilir. Bu noktada işletim sistemle- noktada işletim sisteminin yüklenmesinin hızlı ger- rinin kullanıcılara birden fazla erişim noktası sağla- çekleşebilmesi için solid state disk (SSD) adı verilen yan, birbirlerinin yetkilerini düzenleyen bir görevi katı hâl diskleri ve güçlü RAM belleklerden faydalan- de bulunmaktadır. Bunun için disk erişimine ve mak gerekmektedir. SSD’ler ATA, SATA ve IDE tü- dosya sistemlerine gerekli yetki ve izinleri veren ya- ründeki sabit disklere göre daha pahalı sürücüler olsa pılar kullanılmaktadır. Örneğin yönetici hesabı ile da onlara göre güvenlik ve hız açısından bir adım ön- işletim sistemlerinin kullanımında her türlü izine dedir. Bu tür yüksek kapasiteli donanımlarla işletim sahip olabilirken misafir hesaplarıyla daha kısıtlı sistemlerini kullanırken verimliliği de en üst düzeye bir kullanım söz konusu olmaktadır. çıkarmak mümkün olmaktadır. İşletim sistemleri çalı- İşletim sistemleri; herhangi bir hatayla karşıla- şırken tüm özelliklerini en etkin şekilde yansıtabilecek şıldığında sistemde depolanan tüm verilerin kay- ortamı üst düzey donanım ve zararlı uygulamalardan bolması, asla tamamen güvenliğin sağlanamaması arıtılmış yazılım ortamlarıyla sağlayabilmektedir. Öğrenme Çıktısı 1 İşletim sistemlerinin tanımını, tarihçesini, özelliklerini ve çalışma prensibini açıklayabilme Araştır 1 İlişkilendir Anlat/Paylaş İşletim sistemlerinin çalışma İşletim sistemlerinin dona- prensibinden yola çıkarak Bir işletim sisteminde en nım, yazılım ve kullanıcı günlük hayatta sık kullanılan çok olmasını istediğiniz arasındaki ilişkideki rolü cihazların hangileriyle benzer- özelliği paylaşın. nedir? lik gösterdiğini ilişkilendirin. 66 Bilişim Teknolojileri İŞLETİM SİSTEMLERİNİN YÖNETİM İŞLEVLERİ Dosya Aygıt İşletim sistemlerinin 4 temel yönetim işlevi bulunmaktadır. Bunlar; Yönetimi Yönetimi dosya yönetimi, aygıt veya giriş çıkış yönetimi, bellek yönetimi, işlem/ süreç yönetimidir. Bu 4 temel yönetim işlevi dışında güvenlik, sistem performansı kontrolü, komut yorumlama, iletişim yönetimi, ağ iletişimi Bellek İşlem/Süreç ve yönetimi gibi görevleri de “diğer işlevler” başlığı altında incelenmiştir. Yönetimi Yönetimi Şekil 3.4 İşletim Sistemlerinin Yönetim İşlevleri Dosya Yönetimi İşletim sistemlerinde bilgisayar sistemlerinde bulunan dosyaların organizasyonunu sağlayan bir yapıya ihtiyaç vardır. Dosya yönetimiyle yeni dosyaların veya klasörlerin oluşturulması, silinmesi, kopyalanması, kesilerek taşınması gibi görevler gerçekleştirilmektedir. Dosyalar, çeşitli programlar, resimler, videolar, müzikler ve metinler gibi çoklu ortam ögelerinden olu- şur. Bilgisayarda dâhilî olarak sabit disk adı verilen donanımlarda tutulabileceği gibi CD, DVD, Flash disk gibi harici depolama birimlerinde de dosya ve klasörler saklanabilir. Bilgisayarda bulunan verilerin sanal olarak saklandığı bu dosyalara varsayılan olarak bir isimlendirme yapılabileceği gibi kullanıcı kendisi de isimlendirmeyi yapabilir. İsimlendirme yapılırken kullanıcının aradığında kolaylıkla bulabilmesi amacı gözetilmektedir. Şekil 3.5’de görüldüğü gibi işletim sistemlerinde bir dosyanın özellikleri de tutulmakta ve istendiği zaman kullanıcıya dosya türü, açılacağı programın türü, dosyanın konumu, diskte kapladığı boyutu, oluşturulduğu, değiştirildiği ve en son erişim sağlandığı tarih, salt okunur veya gizli olup olma- dığı özniteliği, güvenlik özellikleri, verilen izinler, çevrim dışı kullanılabilirliği, dosyanın sahibi, dosyanın tutulduğu bilgisayarın adı gibi bilgiler sunulmaktadır. Bu bilgiler bir metin dosyasında farklı, bir fotoğraf dosyasında farklı şekillerde görüntülenmektedir. Örneğin bir fotoğraf dosyasının ayrıntılarında çekildiği tarih, görüntü boyutu, çözünürlüğü, bit derinliği gibi resim özellikleri; kamera üreticisi, kamera modeli, poz süresi, nesne uzaklığı, flaş gücü gibi kamera özellikleri; mercek üreticisi, ışık kaynağı, doygunluk, kes- kinlik gibi gelişmiş fotoğraf özellikleri de bulunabilmektedir. Her dosyanın hangi türe ait olduğunu belir- ten bir uzantısı da bulunmaktadır. Bu uzantılar kimlik görevini de görmektedir. Örneğin metin dosyalarının uzantısı.txt iken video dosyalarının uzantısı.avi,.mp4 olabilmektedir. Aynı türdeki dosyaların da farklı uzantıları olabilmektedir. Ör- neğin bir resim dosyası,.jpg,.png,.gif,.tiff olabi- lir ve bu uzantıları çalıştıran programlar da farklı olabilir. Bir.tiff dosyası her resim işleme progra- mında çalışmayabilir ve görüntülenemeyebilir. İşletim sistemlerinin kendine özgü dosya yö- netim sistemleri mevcuttur. FAT, NTFS, EXT4, HFS+, XFS, UFS gibi pek çok dosya yönetim sis- temi bulunmaktadır. Çoğu işletim sistemi de fark- lı dosya yönetim sistemlerine uyumludur. İşletim sistemlerinde dosya yönetimi hiyerarşik bir ağaç yapısı üzerinde dallandırılmış bir yapı üzerinde ça- lışmaktadır. Her depolama biriminin “root\”, “C:\” gibi bir kök dizini bulunmaktadır. Kök dizini de- polama başlangıç dizinidir ve işletim sistemleri bu kök dizini içinde alt dizinlerin ve dosyaların oluştu- rulmasını ve yönetilmesini sağlamaktadır. Şekil 3.5 Bir Dosyanın Özelliklerinin Gösterimi 67 İşletim Sistemleri ve Dosya Yönetimi Aygıt Yönetimi İşletim sistemleri donanım aygıtlarının nasıl ve hangi durumlarda çalışacağının organizasyonunu dikkat gerçekleştirmektedir. Aygıt yönetimi bazı kaynak- Giriş donanımları ya da girdi birimleri adı ve- larda “Giriş Çıkış Yönetimi (I/O Management)” rilen donanımlar fare, klavye gibi veri girişi ya- pılan donanımlar iken çıkış donanımları ya da olarak da adlandırılmaktadır. Aygıt yönetimiyle çıktı birimleri adı verilen donanımlar ise veri- tüm giriş çıkış donanımlarının yönetimi gerçekleş- lerin çıktılarını veren yazıcı, monitör, hoparlör tirilmektedir. gibi donanımlardan oluşmaktadır. Şekil 3.6 Aygıt Yöneticisi İşletim sistemleri Şekil 3.6’da görüldüğü gibi aygıt yöneticisine veya benzer birimlere sahiptir. Aygıt yöneticileriyle donanımların durumu, yüklü donanımların özellikleri, donanımların düzgün bir şekilde çalıştıklarının kontrolü ve donanım aygıtlarının sürücülerinin güncelleştirilmesi gibi görevler gerçekleş- tirilebilir. Aygıt yöneticisi donanımların yönetiminden sorumludur. Aygıt yöneticisiyle bir donanımda aşağıdaki eylemler gerçekleştirilebilir: Sürücü yazılımını güncelleştirme Aygıtı devre dışı bırakma Donanım değişikliklerini tarama Eski donanımı ekleme İlgili aygıtın özelliklerini gösterme Bellek Yönetimi İşletim sistemlerinin en önemli görevlerinden biri de ana belleği yönetmektir. Bellek yönetimiyle işlem- lerin hangi bellek parçasında çalıştırılacağı ile ilgili iş bölümü gerçekleştirilir. Bazı işlemlerde belleğe aşırı bir yük bindirilebilir. Bu noktada bellekte ilgili alanın paylaşımının yapılması, iş bittikten sonra belleğin boşaltılması ve belleğin genel anlamda yönetilmesi önemlidir. 68 Bilişim Teknolojileri İşletim sistemlerinde bellek yönetiminde Görev Yöneticisi gibi bazı araçlarda belleğin performansı, ne kadar ve hangi uygulamalar tarafından kullanıldığı gibi bilgilere erişmek mümkündür (Şekil 3.7, Şekil 3.8). Şekil 3.7 Görev Yöneticisinde Bellek Kullanımı Şekil 3.8 Görev Yöneticisinde Uygulamalara Göre Bellek Kullanımı 69 İşletim Sistemleri ve Dosya Yönetimi İşletim sistemlerinde sanal bellek denilen ve fizik- Bilgisayar sistemlerinde hızı belirleyen bir de sel belleğin (RAM/Random Access Memory) pahalı önbellek (cache memory) adı verilen bellek türü olduğu zamanlarda geliştirilen bir bellek türü de bu- bulunmaktadır. Önbellek, merkezi işlem birimi ile lunmaktadır. Sanal bellek, bilgisayarın RAM adıyla ana bellek arasına yerleştirilen çok hızlı ve küçük bilinen rastgele erişim belleğinden sabit diske (hard- bir bellektir. RAM’dan daha hızlıdır. Önbellek, or- disk) geçici olarak veri aktararak fiziksel bellek yeter- talama bellek erişim sürelerini azaltmak için kulla- sizliğini telafi etmesini sağlamak için donanım ve ya- nılır. Bu, ana bellek adreslerinde sıklıkla erişilen ve- zılım unsurları kullanan işletim sisteminin bir bellek rilerin depolanmasıyla yapılır. Böylece işlemcinin yönetimi özelliğidir. Sanal adres alanı, bitişik adresler verilere daha hızlı erişmesine izin verilir. Bunun oluşturmak için RAM’daki etkin bellek alanlarını ve nedeni, önbelleğin ana bellekten çok daha hızlı sabit disk sürücülerindeki etkin olmayan bellek alan- okunabilmesidir. larını kullanarak artırılır. Bilgisayar sistemleri sınırlı RAM belleğe sahip olduğundan özellikle birden fazla program aynı anda çalıştırıldığında bu bellek tükene- İşlem/Süreç Yönetimi bilmektedir. Sanal bellek kullanan bir sistem, RAM’i İşlem/süreç yönetimi, işletim sisteminin sü- taklit etmek için sabit sürücünün bir bölümünü kul- reçler oluşturmasına ve silmesine yardımcı olur. lanır. Sanal bellekle bir sistem aynı anda çalışan daha Aynı zamanda işlemler ve süreçler arasında senk- büyük programları veya birden çok programı yükle- ronizasyon ve iletişim için mekanizmalar sağlar. yebilir. Böylece sistem sonsuz bellek varmış gibi ha- İşletim sistemlerinin en temel görevlerinden biri reket eder ve daha fazla RAM satın almak zorunda de işlemleri bir sıraya koymak, problemli durum- kalmadan uygun bir şekilde çalışır. larda çökmelere karşı süreci durdurmak, işlemler yapılırken verimliliği artırmak, işleri etkin bir Sanal bellek dışında bilgisayar sistemlerinde en şekilde dağıtmak, çoklu görevlerde çakışmaları bilinen fiziksel bellekler RAM adı verilen rastgele engelleyerek her uygulamanın doğru süreçte çalış- erişim bellekleridir. Bir işletim sisteminde ve do- masına olanak sağlamaktır. İşletim sistemlerinde layısıyla bilgisayarda tutulan tüm verilerin geçici donanım ya da yazılımlar tarafından bir olayın olarak tutulduğu bellek türüdür. RAM belleklerde gerçekleştiğini bildirmek için yayınlanan, işlem- tutulan bilgiler geçicidir ve değiştirilmesi müm- cinin acil dikkatini isteyen sinyallere kesme adı kündür. Yazılıp silinebilen bir bellek türü olması verilmektedir. Kesme ile programı geçici olarak nedeniyle oldukça hızlıdır. RAM’ler Statik RAM durdurarak bunun yerine ihtiyaç duyulan işlem- (SRAM), Dinamik RAM (DRAM), SDRAM, ler gerçekleştirilmektedir. Kesme işlemleri doğru DDR RAM, DDR4 SDRAM, DIMM RAM, bir şekilde çalışmadığında sistemde kilitlenme adı DRD RAM, PS RAM, SG RAM ve RLD RAM verilen sonsuz döngüler oluşur ve işletim sistemi gibi pek çok RAM türü içermektedir. kullanıcıya yanıt veremez hâle gelir. İşletim sis- ROM (Read Only Memory) bellek ise, sade- temleri işlemler ve süreçler arasındaki senkroni- ce okunabilen bellektir. Bilgisayarın açılışı sıra- zasyonu sağlayarak bu problemlerin yaşanmasını sında gereken verileri tutmak için tasarlanmıştır. en aza indirgemektedir. ROM’lar ise, PROM, EPROM, EEPROM veya Flash bellek gibi türlere ayrılmaktadır. Diğer İşlevler İşletim sistemleri yukarıda belirtilen 4 temel yönetim görevi dışında aşağıdaki işlevleri de ger- dikkat çekleştirmektedir: PROM programlanabilir salt okunur bellek ola- Güvenlik modülü: İşletim sistemlerinde gü- rak veriler üzerine bir kez yazılabilirken EPROM venlik modülü, bir bilgisayar sisteminin verilerini yeniden kullanım için ultraviyole ışık ile siline- ve bilgilerini kötü amaçlı yazılım tehdidine ve yet- bilen programlanabilir silinebilir salt okunur kisiz erişimlere karşı korur. Şifre, güvenlik duvarı bellektir. EEPROM veya flash bellek ise en geliş- (firewall), antivirüs, yüz tanıma, parmak izi gibi miş ROM bellek türü olarak elektrikle silinebilir biyometrik tanıma bileşenleri ve benzeri diğer tek- programlanabilir salt okunur bellektir. Birçok kez nikler sayesinde programlara ve verilere yetkisiz yeniden programlanabilir ve tekrar kullanılabilir. erişimi önler. 70 Bilişim Teknolojileri Sistem performansı kontrolü: Hizmet talepleri ve sistemin verdiği yanıt arasındaki gecikmeleri kay- deder. Komut yorumlama: Bu modül, sistem kaynakları tarafından verilen komutları yorumlar ve bu komut- ları işlemek için sistem kaynaklarını kullanır. İletişim yönetimi: Bilgisayar sistemlerinde çeşitli kullanıcıların derleyicilerin ve başka bir yazılım kay- nağının koordinasyonunu sağlar ve gerekli atamaları gerçekleştirir. Ağ iletişimi ve yönetimi: Donanım kaynaklarının ağ üzerinden birbirleriyle iletişim kurmasını koor- dine eder. Ayrıca ağ bileşenlerinin düzgün bir şekilde çalıştırılmasını ve gerekliyse diğer kullanıcılarla veya bileşenlerle paylaştırılmasını sağlar. Öğrenme Çıktısı 2 İşletim sistemlerinin dosya, aygıt, bellek, süreç yönetimini sıralayabilme Araştır 2 İlişkilendir Anlat/Paylaş Önbelleğin ana bellekten Bellek yönetiminde RAM hızlı çalışmasıyla tarayı- türlerinin arasındaki farkla- İşletim sistemlerinin temel cılarda kullanılan çerezler rı sıralayın. yönetim işlevleri nedir? arasındaki bağlantıyı ilişki- lendirin. İŞLETİM SİSTEMİNİN YAPISI VE Kullanıcı Arayüzü BİLEŞENLERİ İşletim sistemlerinde kullanıcı arabirimi ya da İşletim sistemleri katmanlı bir yapıdadır. İşletim kullanıcı arayüzü (graphical user interface/GUI) sistemleri en dışta, grafik ögelerinin yer aldığı kulla- kullanıcıların işletim sistemlerini daha rahat ve ko- nıcı arayüz katmanından, daha sonra API’lerin yer lay kullanabilmeleri, arka planda gerçekleşen süreç- aldığı kabuk katmanından ve en içte çekirdek kat- leri farketmeden işlemlerini gerçekleştirebilmeleri manından oluşmaktadır. amacıyla tasarlanan bileşenlerdir. İşletim sistem- lerinin ilk dönemlerinde henüz grafiksel kullanıcı arayüzleri tasarlanmamışken metin tabanlı kullanıcı Çekirdek arayüzleriyle klavyeden kod yazılarak işletim sistem- (Kernel) leri kullanılıyordu. MS-DOS işletim sistemi gibi Kabuk komut satırı kullanılarak işlemlerin gerçekleştirildi- (Shell) ği dönemden, grafiksel kullanıcı arayüzleri kullanı- Kullanıcı larak işlemlerin yapıldığı döneme geçiş yapılmıştır. Arayüzü Böylece klavye ve fare ya da dizüstü bilgisayarlarda (GUI) bulunan touchpad adı verilen dokunmatik yüzeyler aracılığıyla işletim sistemleri kullanıcılar tarafından Şekil 3.9 İşletim Sistemlerinin Bileşenleri kolaylıkla kullanılabilir hâle gelmiştir. Bir grafiksel 71 İşletim Sistemleri ve Dosya Yönetimi kullanıcı arayüzü, simgelere, düğmelere ve menüle- Çekirdek re tıklamak için fareyi kullanmaya olanak tanır ve Çekirdek (core), işletim sistemlerinin kalbi gi- her şey grafik ve metin kombinasyonu kullanılarak bidir ve donanım aygıtlarıyla yazılım ve uygulama- ekranda açıkça görüntülenir. Donanımda gerçekle- ları birbirine bağlayan, iletişimi kuran ve araların- şen karmaşık işlemler soyutlanmakta ve kullanıcıya da senkronizasyonu sağlayan bileşendir. Çekirdek, hissettirilmemektedir. Kullanıcı arayüzleri mobil süreçleri bir takvime bağlayarak süreçler arası ileti- işletim sistemlerinde de benzer şekilde taşınabilir şimi düzenleyen merkezi bir birimdir. Bu nedenle cihazların kullanımı kolaylaştıran bir bileşendir. çekirdek, işletim sistemlerinin özellikle işlem/süreç Her işletim sisteminin grafiksel kullanıcı ara- yönetimi ve aygıt yönetimi üzerinde etkin bir rol yüzünün farklı bir görünümü ve hissi vardır. Bu oynamaktadır. İşletim sistemlerinin görünen yüzü nedenle farklı bir işletim sistemine geçildiğinde kullanıcı arayüzü iken görünmeyen ve karmaşık iş- kullanıcıya tanıdık gelmediği için alışmakta zorla- lemlerin gerçekleştiği birim ise çekirdektir. nabilir. Bununla birlikte, modern işletim sistemleri Uygulama ve yazılımlar çekirdekten herhangi kullanımı kolay olacak şekilde tasarlanmıştır ve te- bir işlem talep ettiğinde sistem çağrılarını kullan- mel ilkelerin çoğu aynıdır. maktadır. Örneğin, kullanıcı bir dosyaya ilişkin erişim izinlerini değiştirmek istediğinde, bir dosya silmek istediğinde, uzak bir bilgisayara bağlanmak istediğinde veya sabit diske erişmek istediğinde bir sistem çağrısı kullanır. Sistem çağrıları bazı kaynak- larda çekirdek çağrıları olarak geçmektedir. Çekirdekler 4 türe ayrılmaktadır. Bunlar monoli- tik adı verilen tek parça çekirdekler, mikro çekirdek- ler, ekzo çekirdekler ve melez (hibrid) çekirdeklerdir. Şekil 3.10 Bir Kullanıcı Arayüzü Monolitik çekirdek Kabuk Kabuk (shell) katmanı, işletim sisteminin çekir- dek ile kullanıcı arayüzü katmanları arasında yer almaktadır. Çekirdeğin çevresini sararak çekirdeğe Melez Mikro Çekirdek kullanıcılardan gelen komutları iletmekten sorum- çekirdek çekirdek ludur. Kabuk, API adı verilen uygulama program- lama arayüzlerini ve komutları içermektedir. Ka- buk için komutların yorumlandığı yer denilebilir. Ekzo çekirdek Application Programming Interface (API): Uygulama Programlama Arayüzü (API), bir uygulamanın başka bir uygu- Şekil 3.11 İşletim Sistemlerinde Çekirdek Türleri lama veya bir işletim sistemi, veritabanı, ağ vb. ile iletişim kurmasına ve fonksiyon- Monolitik Çekirdekler: İlk üretilen çekirdek larını kullanmasına izin veren arayüzlere türü olarak tüm işletim sisteminin çekirdek alanın- Application Programming Interface (API) da çalıştığı bir işletim sistemi mimarisidir. Tek par- adı verilir. Örneğin, Google Haritalar çadan oluşan ve modüler olmayan yapısıyla “çekir- API’sı ile Google Haritalar uygulamasına dek” işletim sisteminin en önemli bileşeni gibidir. restoranların eklenebileceği 3. parti bir ya- Unix ve MS-DOS en bilinen monolitik çekirdek zılımın eklenmesi mümkün olabilir. mimarisine sahip işletim sistemleridir. 72 Bilişim Teknolojileri Mikro Çekirdekler: Monolitik çekirdeklerin risi, uygulamayı özelleştirmeyi kolaylaştırmak parçalı olmayan yapısından hareketle geliştiril- için tasarlanmıştır. Ekzo çekirdekler, sınırlı ça- miş çekirdeklerdir. Kaynak kod boyutu açısından lışabilirlikleri nedeniyle tipik olarak küçük bo- mikro çekirdekler, monolitik çekirdeklerden daha yutludur. küçüktür. Mikro çekirdek küçük ve belli işleri ta- Melez Çekirdekler: Monolitik ve mikro çe- nımlanmış olan modüler bir çekirdek yapısından kirdeklerin melezleştirilerek performanslarını ibarettir. Ekzo çekirdeklerle yakın akrabadır. artırmaya yönelik geliştirilmiş çekirdek türüdür. Ekzo Çekirdekler: Ekzo çekirdekler tıpkı Bu çekirdek mimarisi, monolitik çekirdeğin mikro çekirdekler gibi küçüktür. Ekzo çekir- mikro çekirdekle harmanlanmasıyla son hâlini dekler, Massachusetts Teknoloji Enstitüsünde almıştır. Microsoft Windows NT ve Apple Ma- (MIT) geliştirilen ve donanım kaynaklarının cOS’unda kullandığı XNU çekirdeği melez çe- uygulama düzeyinde yönetimini sağlamaya çalı- kirdektir. Mobil işletim sistemlerinden iOS’da şan bir işletim sistemidir. Ekzo çekirdek mima- melez çekirdek kulanmaktadır. Öğrenme Çıktısı 3 İşletim sistemlerinin kullanıcı arayüzü, çekirdek ve kabuk bileşenlerini ayırt edebilme Araştır 3 İlişkilendir Anlat/Paylaş İşletim sisteminin görün- meyen yüzü olan çekirdekle Kabuk ile grafiksel kullanıcı İşletim sistemlerinde yer alan biyolojik hücrelerde bulu- arayüzü arasındaki farkları çekirdek türleri nelerdir? nan çekirdek kavramı ara- sıralayın. sındaki ilişkiyi tartışın. İŞLETİM SİSTEMLERİNİN TÜRLERİ İşletim sistemleri “aygıt türüne” göre, Sunucu işletim sistemleri Mobil işletim sistemleri Kişisel masaüstü işletim sistemleri ve Diğer işletim sistemleri olarak 4 türe; “Kaynak kodu türüne” göre ise, Açık kaynak kodlu işletim sistemleri Kapalı kaynak kodlu işletim sistemleri olarak 2 türe ayrılmaktadır. Aygıt Türüne Göre İşletim Sistemleri Aygıt türüne göre işletim sistemleri; sunucu işletim sistemleri, mobil işletim sistemleri, kişisel masaüstü işlemleri ve diğer işletim sistemleri olarak sınıflara ayrılmaktadır. 73 İşletim Sistemleri ve Dosya Yönetimi Sunucu İşletim Sistemleri Sunucu (server) işletim sistemleri, sunucu bilgisayarlar adı verilen dona- nımları diğer bilgisayarlara oranla güçlü bilgisayarlara kurulan özelleştirilmiş iş- letim sistemleridir. Bu işletim sistemleri ağdaki istemci bilgisayarların isteklerini karşılamak için istemci-sunucu mimari- si içinde çalışmaktadır. Sunucu işletim sistemleri, üstünde diğer yazılım prog- ramlarının veya uygulamalarının sunu- cu donanımında çalışabileceği yazılım katmanıdır. Sunucu işletim sistemleri; Web sunucusu, posta sunucusu, dosya sunucusu, veritabanı sunucusu, uygula- ma sunucusu ve yazdırma sunucusu gibi tipik sunucu rollerini etkinleştirmeye ve Şekil 3.12 Bir Sunucu Bilgisayar kolaylaştırmaya yardımcı olur. Sunucu işletim sistemleri genellikle büyük ölçekli kuruluşlarda, bilgi işlem merkezlerinde, bankalarda, fabrikalarda kullanılan sunucu bilgisayarlarda işlemlerin daha hızlı ve daha güvenli gerçekleştirilmesi için kurulan özel işletim sistemleridir. Donanım, yazılım ve ağ konfigürasyonu açısından en üst düzeyde kul- lanıma uygun bir şekilde tasarlanmışlardır. Kullanıcıları yönetmek, güvenlik ve diğer yönetim süreçlerini uygulamak için merkezi bir arayüz sağlamaktadır. Windows 54% Linux 17% Unix 11% IBM System z 6% Other 12% 0% 5% 10% 15% 20% 25% 30% 35% 40% 45% 50% 55% 60% Market revenue share Şekil 3.13 2015 Yılında Küresel Sunucu İşletim Sistemi Pazarının Gelir Payı Kaynak: https://www.statista.com/statistics/639574/worldwide-server-operating-system-market-share/ Şekil 3.13’te gösterilen grafik, 2015 yılında çeşitli sunucu işletim sistemleri tarafından tutulan piyasa gelir payını göstermektedir. Linux tarafından işletilen sunucular için 12 milyar ABD doları olan gelir, genel sunucu işletim sistemi pazarının yüzde 17’sini temsil ediyordu. Şekil 3.13.’ten de görülebileceği gibi Windows sunucu işletim sistemleri pazar payının liderliğini elinde bulundurmaktadır. 74 Bilişim Teknolojileri Tablo 3.1’de bazı sunucu işletim sistemleri yer almaktadır: Tablo 3.1 Sunucu İşletim Sistemleri Microsoft Tabanlı Apple Tabanlı Linux/Unix Tabanlı Windows Home Server MacOS Server RedHat Windows Server 2008 Apple Network Server Debian Windows Home Server 2011 Suse Windows Server 2012 Fedora Windows Server 2016 Free BSD Windows Server 2019 Solaris Ubuntu Server Mobil İşletim Sistemleri Mobil cihazların son yıllarda güçlü donanımsal özelliklere, sensörlere ve pek çok önemli özelliğe sahip olması; toplumda bu cihazların kullanım oranlarını da artırmıştır. Bu cihazların güçlenmesi ve benim- senmesi, işletim sistemlerinde de kendini göstermiş ve mobil işletim sistemi alanında son yıllarda önemli dönüşümler yaşanmasına neden olmuştur. Mobil işletim sistemleri, akıllı telefon ve tablet gibi taşınabilir cihazlara özel olarak geliştirilmiş işletim sistemleridir. Akıllı telefona yönelik geliştirilen bir mobil işletim sistemi, bir masaüstü bilgisayara kurula- maz. Tam tersi bir kişisel masaüstü işletim sistemi de bir mobil cihazda çalıştırılamaz. Son yıllarda pek çok mobil işletim sistemi piyasaya sürülmüştür. Bu işletim sistemlerinin kullanıcı arayüzleri, güvenlik düzeyleri gibi özellikleri birbirinden farklı olsa da işlevsellik açısından her kullanıcıya hitap eden mobil işletim sis- temleri mevcuttur. Aşağıdaki listede bu mobil işletim sistemlerinin bazıları yer almaktadır: Android webOS IOS ColorOS Windows Mobile EMUI Tizen Flyme OS Bada MIUI BlackBerry OS Pixel UI MeeGo OS KaiOS Palm Ubuntu Touch Symbian Şekil 3.14’te bu işletim sistemlerinin Mart 2020 tarihi itibarıyla pazar payları yer almaktadır. Buna göre, Android işletim sistemi %72.26 ile dünyada pazar payı en yüksek mobil işletim sistemiyken onu %27.03 ile iOS, %0.32 ile KaiOS, %0.16 ile Samsung ve %0.1 ile Windows Mobile izlemektedir. Şekil 3.14 Dünya Çapında Mobil İşletim Sistemi Pazar Payı - Mart 2020 Kaynak: https://gs.statcounter.com/os-market-share/mobile/worldwide Türkiye’de ise Mart 2020 verilerine göre Android’in kullanımı dünya geneline oranla daha fazla görün- mektedir. Türkiye %84.05 ile en çok Android işletim sistemi kullanırken onu 15.65% ile IOS, 0.2% ile Samsung ve 0.01% ile Linux izlemektedir. Bu bölüm kapsamında, Apple iOS, Android, Windows Mobile, Tizen, Symbian, Bada, KaiOS ve Ubuntu Touch mobil işletim sistemleri detaylandırılacaktır. 75 İşletim Sistemleri ve Dosya Yönetimi iOS Apple firması tarafından geliştirilen iOS (Şekil 3.15), ilk olarak 2007 yılında ilk iPhone’lar ile birlikte kullanıma sunulmuştur. Bu yüzden ilk adı da iPhone OS olarak belirlenmiştir. Kaynak kodları kapalı olmasına rağmen açık kaynak kodlu Unix tabanlı Darwin iş- letim sistemi üzerine kuruludur. iPhone, iPod Touch, iPad ve Apple TV cihazları iOS kullanmaktadır. Android’e kıyasla daha sınırlı bir şekilde özelleştirilebilen iOS işletim sistemlerine ayrıca App Store uygulama mağazası dışından uygulama yüklenememektedir. iOS işletim sisteminde güvenlik ön plandadır. dikkat iOS’un ilk sürümü iPhone OS 1.x iken, son sürümü Mart 2020 itibariyle iOS 13.4.1 sürü- müdür. Haziran 2020’de iOS 14 sürümünün piyasaya sunulması beklenmektedir. internet iOS uygulama mağazası App Store hak- kında detaylı bilgi için https://www.app- Şekil 3.15 iOS Kullanıcı Arayüzü le.com/tr/ios/app-store/ adresini ziyaret Kaynak: https://www.apple.com/tr/ edebilirsiniz. newsroom/2019/06/apple-previews-ios-13/ Android Android, açık kaynak kodlu mobil bir işletim sistemi olarak temelleri 2003 yılında teknoloji üssü olarak bilinen Kaliforniya’nın Palo Alto şehrin- de Andy Rubin, Rich Miner, Nick Sears ve Chris White tarafından kurulan Android isimli anonim şirket ile atılmıştır. 2005 yılında Google mobil tek- nolojiler alanındaki etkinliğini artırmak amacıyla Android’i satın almıştır. Linux çekirdeği temel alınarak geliştirilen Android, Java, C ve C++ dillerin- de yazılmıştır. dikkat Android uygulamalarının uzantısı.apk’dır. Kişiselleştirme ve özelleştirme noktasında iOS’tan bir adım önde olan Android (Şekil 3.16), dünya genelindeki bağımsız uygulama geliştiricile- rinden de destek alarak günden güne büyümektedir. Bağımsız uygulama geliştiriciler, Google tarafından hazırlanmış Android Studio adlı yazılım ge- liştirme kiti (Software Development Kit/SDK) kullanarak Java ve HTML5 gibi programlama dillerinde kendi mobil uygulamalarını geliştirerek Goog- Şekil 3.16 Android işletim le Play Store üzerinden ücretli ya da ücretsiz olarak sunulabilmektedir. sistemi kullanıcı arayüzü 76 Bilişim Teknolojileri Şekil 3.17 Android Studio Kaynak: https://developer.android.com/studio Android’in 2.0’dan önceki sürümleri (1.0, 1.5, 1.6) yal- nızca cep telefonlarında kullanılmıştır. Android 2.x sürüm- leri de çoğunlukla cep telefonları için kullanılmıştır. Aynı zamanda bazı tabletler için kullanılan Android 3.0, tablet internet odaklı bir sürüm olarak bilinmektedir ve resmi olarak cep Android’in uygulama mağazası Google telefonlarında çalışmamıştır. Hem telefon hem de tablet Play Store’a https://play.google.com/store uyumluluğu Android 4.0 ile başlatılmıştır. Android ekosis- adresinden ulaşabilirsiniz. teminde otomobiller için Android Auto, televizyonlar için Android TV ve Google destekli yürütülen ve giyilebilir cihazlara özelleştirilmiş olarak kullanılan Wear OS by Google yer almaktadır. Android’in 1.5’ten 9’a kadar olan sürümleri tatlılardan veya şekerlemelerden esinlenilerek adlandırıl- mıştır. Yalnızca son sürümü olan Android 10.0 Q adıyla piyasaya sunulmuştur. 3 Eylül 2019 itibarıyla Android 10 bu işletim sisteminin son sürümüdür. 1.5 – Cupcake 4.4.4 – KitKat 1.6 – Donut 5.0, 5.0.1, 5.0.2 – Lollipop 2.0 – Eclair 6.0 & 6.0.1 – Marshmallow 2.2.x – Froyo (“Frozen Yogurt”) 7.0 – Nougat 2.3 – Gingerbread 8.0 – Oreo 3.0 – Honeycomb 9.0 – Pie 4.0 – Ice Cream Sandwich 10.0 - Q 4.1 – Jelly Bean 77 İşletim Sistemleri ve Dosya Yönetimi Android, 2011’den beri akıllı telefonlarda ve 2013’ten beri tabletlerde dünya çapında en çok kullanılan işletim sistemi olarak günümüzde de liderliğini korumaktadır (Şekil 3.18). Mart 2020 itibarıyla Google Play Store mağazasında 2 milyon 870 bin uygulama mevcuttur. Şekil 3.18 Mobil İşletim Sistemlerinin 2009’dan 2017’ye Kadar Küresel Pazar Payı Kaynak: https://www.statista.com/statistics/263453/global-market-share-held-by-smartphone-operating-systems Windows Mobile Windows Mobile işletim sistemi 1996 yılında ortaya çıkarılan Windows CE işletim sistemi üzerinde temellendirilmiştir. Özellikle Personal Digital dikkat Windows Mobile uygula- Assistant (PDA) adı verilen cep bilgisayarlarında popüler olmuştur. Bu yüz- maları Windows Store’dan den 2000 yılında ilk çıkarılan sürümüne Pocket PC 2000 adı verilmiştir. indirilmektedir. 3 yıl sonrasında 2003 yılında bu isim değiştirilerek Windows Mobile ol- muştur. Windows Mobile 6.5.5 sürümü bu işletim sisteminin son sürümü olmuştur. 2013 tarihinden itibaren desteklenmeyen Windows Mobile yerine Win- dikkat dows Phone üzerine çalışmalar yoğunlaştırılmış ve tamamen yenilenmiş bir Windows 10 Mobile’ın, 10 işletim sistemi ortaya çıkarılmıştır. Daha sonra ise Microsoft firması, Win- Aralık 2019 tarihinde geliş- dows Mobile 10 ile tekrar mobil teknolojiler piyasasına giriş yapmıştır. Win- tirilmesine ara verilmiştir. dows 10 Mobile sürümü tüm Microsoft cihazlarda çalışabilen tek bir işletim Ayrıca 16 Aralık’tan itibaren sistemi olma mottosuyla piyasaya sürülmüş olsa da Android ve iOS’un göl- WhatsApp, Windows mağa- gesinde kalmıştır. zadan kaldırılmış olacaktır. Diğer Mobil İşletim Sistemleri Tizen: Tizen; cihaz üreticileri, mobil operatörler, uygulama geliştiriciler ve yazılım pazarlayan bağımsız kuruluşlar dahil olmak üzere mobil ve buna bağlı cihaz ekosisteminin tüm paydaşlarının ihtiyaçlarını kar- şılamak için sıfırdan oluşturulmuş; Linux tabanlı, açık kaynak kodlu, esnek bir mobil işletim sistemi olarak açık kaynak yönetimi kapsamında bir geliştiriciler topluluğu tarafından geliştirilmiştir ve katılmak isteyen herkese açıktır. Uygulama geliştiricileri için Tizen, HTML5 desteği sunarak yerel uygulama geliştirme imkânı da sağlamaktadır. Tizen ayrıca uygulama geliştiricilerine; giyilebilir cihazlar, akıllı TV’ler, oyun konsolları, otomobiller ve diğer akıllı cihazlara uygulama potansiyeli sunmaktadır. 78 Bilişim Teknolojileri 2014 yılında da Nokia aldığı kararla bağımsız ge- liştiricilerin de yeni uygulamalar geliştirmemesini dikkat talep etmiştir. Tizen’in ilk sürümü 2012 yılında 1.0 olarak Bada: Bada, Samsung firması tarafından gelişti- sunulmuştur. 2013 yılında 2.0 ve 2017 yılında rilmiş bir mobil işletim sistemi olarak Linux çekir- Tizen 3.0 kullanıma geçmiştir. deği kullanmaktadır. Bada’nın, kaynak kodlarının büyük bir kısmı özgür yazılım lisanslarıyla açık tu- tulsa da özel kod yapıları da içermektedir. Tizen Projesi, “Teknik Yönlendirme Grubu” ta- rafından yönetilmektedir. Tizen Projesi ve marka değeri hakları Linux Vakfı’na aittir. Teknik Yönlen- dikkat dirme Grubu, platform destekleyici çalışma grup- Bada kelimesi Kore dilinde “okyanus” anlamına larının yanı sıra platform geliştirme ve dağıtımına gelmektedir. odaklanan bu açık kaynak projesi için birincil karar organıdır. Tizen aşağıdaki cihazların kullanıma sunulmuştur: Samsung daha sonra 2013 yılında artık Tizen Akıllı telefonlar, tabletler (Tizen Mobile) işletim sistemi için destek çalışmalarına başladığını duyurarak Bada işletim sisteminin uygulama ma- Araç içi bilgi eğlence sistemleri (Tizen IVI) ğazasını, desteklerini ve güncellemelerini tamamen Akıllı TV (Tizen TV) kapatmıştır. Giyilebilir cihazlar (Tizen Wearable) KaiOS: KaiOS, ABD merkezli bir şirket olan KaiOS Technologies’in sahip olduğu Linux taban- lı bir mobil işletim sistemidir. Mozilla vakfının 2016 yılında geliştirmeyi durdurduğu Firefox OS dikkat işletim sisteminin devamı niteliğindedir. KaiOS; Tizen 3.0’dan itibaren tüm profiller; Tizen monolitik çekirdeğe sahip, kapalı kaynak kodlu Common adı verilen ortak, paylaşılan bir altyapı bir işletim sistemidir. İşletim sistemi ilk kez 2017 üzerine inşa edilmiştir. yılında ortaya çıkmış ve Sebastien Codeville baş- kanlığındaki San Diego, California merkezli bir şirket olan KaiOS Technologies Inc. tarafından Symbian: Symbian, geliştirilmesi durdurulan başka ülkelerdeki ofislerle birlikte geliştirilmiştir. ve akıllı telefonlar için tasarlanmış bir mobil iş- Haziran 2018’de Google KaiOS işletim sistemine letim sistemidir. 1997 yılında ilk olarak PDA adı 22 milyon ABD doları yatırım yapmıştır. KaiOS verilen kişisel dijital asistanlara yani cep bilgisayar- şu anda, Kuzey Amerika ve Hindistan’da oldukça larına yönelik olarak hazırlanmıştır. Nokia başta popülerdir. Mayıs 2018’de açıklanan pazar payı olmak üzere Motorola ve Ericsson marka mobil çalışması sonuçlarında KaiOS, Apple’ın iOS’unu cihazlarda da kullanılmıştır. Fujitsu, Sharp ve Mit- Hindistan’da ilk kez geçerek Android’in ardın- subishi gibi markalar tarafından kullanılması özel- dan ikinci sıraya itmiştir. Temmuz 2019 itibarıyla likle Japonya’da yaygınlaşmasına neden olmuştur. Android’in Hindistan’da %91,5’in üzerinde kulla- Android henüz popülerliğe ulaşmadan önce akıllı nım oranına sahip olmasına rağmen iOS’un %2,6 mobil cihazlar için en çok benimsenen işletim sis- kullanım oranına sahip olduğu görülmektedir. Ka- temlerinden biri Symbian işletim sistemiydi. Plat- iOS ise ülkede %4,3’ün üzerinde paya sahip olarak form, 2010 yılına kadar popülerliğini korumuştur. dikkat çekmektedir. 2018 yılının ilk çeyreğinde 23 milyon KaiOS cihazı satılmıştır. Symbian platformunun başarısı ilk olarak 2004 yılının ilk çeyreğinde gerçekleşmiş ve 2.4 milyon Özellikle Hindistan gibi sosyoekonomik olarak cihazda kullanılmıştır. 2012 yılında Nokia son düşük seviyeli ülkelerde bu işletim sistemi gün geç- Symbian akıllı telefonunu piyasaya sunmuş ve tikçe popüler hâle gelmektedir. Facebook, Twitter, Symbian’a tüm desteklerini kesme kararı almıştır. Youtube, Whatsapp ve Google Maps gibi bir akıllı telefonda olmazsa olmaz uygulamaları barındıran tuş- 79 İşletim Sistemleri ve Dosya Yönetimi lu telefonlar için yazılmış işletim sistemi Akıllı telefonlar ve mobil operatörlerden olarak daha az bellek ve enerji tüketimi veri kullanmak pahalıdır. Ayrıca dokunma- ile dokunmatik olmayan cihazlara daha tik ekranlı cihazlar ve uygulamalar genellik- uzun pil ömrü sağlar (Şekil 3.19). le ilk kez kullanan kişileri korkutmaktadır. Bu yüzden KaiOS, herkesin bütçesine uy- gun tuşlu telefonlar için kolay kullanımı ve minimal donanım gereksinimleriyle herke- se uygun bir işletim sistemidir. internet https://www.kaiostech.com/explore/devices/ adresinden KaiOS işletim sistemine uyumlu cep telefonlarını görüntüleyebilirsiniz. Ubuntu Touch: Ubuntu Touch işletim sistemi, açık kaynak kodlu Unix tabanlı bir işletim sistemi- dir. Akıllı telefon ve tablet bilgisayarlar gibi mobil Şekil 3.19 KaiOS İşletim Sistemi Kullanılan Bir Telefon cihazlar için geliştirilen Ubuntu Touch Ubuntu Kaynak: https://www.kaiostech.com/explore/devices/ Phone olarak da bilinmektedir. Ubuntu Projesi 2011 yılında Canonical Şirketinde başlatılsa da ilk sürüm 2013 yılında çıkarılmıştır. Dünyanın ilk Ubuntu tabanlı akıllı telefonu BQ Aquaris E4.5 Ubuntu Edition, 9 Şubat 2015 tarihinde Avrupa’da dikkat satışa sunulmuştur. KaiOS, HTML5 tabanlı uygulamalara sahip ol- masının yanı sıra 4G LTE, VoLTE, GPS ve Wi- Nisan 2016’da da dünyanın ilk Ubuntu tabanlı Fi desteği sağlamaktadır. tableti BQ Aquaris M10 Ubuntu Sürümü piyasaya sürülmüştür. internet internet https://www.kaiostech.com/explore/ Ubuntu Touch işletim sistemini cihazları- apps/ adresinden 17 Nisan 2020 itibariy- nıza yüklemek için https://ubuntu-touch. le KaiOS uyumlu indirilebilir 479 uygu- io/get-ut adresinden yararlanabilirsiniz. lamayı görüntüleyebilirsiniz. Ubuntu Touch mobil uygulama mağazası Ubuntu Open Store’a https://open-store. io/ adresinden erişebilirsiniz. KaiOS işletim sistemini geliştirenler, aşağıdaki Ubuntu Touch destekleyen cihazların lis- nedenlerle bu mobil işletim sistemini geliştirdikle- tesine https://devices.ubuntu-touch.io/ rini belirtmektedir: adresinden ulaşabilirsiniz. Dört milyardan fazla insanın internet erişimi yoktur. Bu ekonomik durumlar yüzünden dünya nüfusunun yarısından fazlası dijital dev- Mobil, dokunmatik ekranlı bir cihazda çalışacak rimin dışında kalmıştır. şekilde uyarlanan Ubuntu Touch “masaüstü modun- da” masaüstü bilgisayar olarak da çalışabilmektedir. 80 Bilişim Teknolojileri Kişisel Masaüstü İşletim Sistemleri Türkiye verilerine bakıldığında ise Mart 2020 Masaüstü (desktop) ve dizüstü (notebook/lap- itibarıyla Microsoft Windows %86,18 ile büyük top) bilgisayarlarda kullanılan işletim sistemleri- farkla en çok kullanılan işletim sistemi olarak dik- dir. Microsoft Windows, Apple Mac OS, Linux, kat çekmektedir. İkinci sırada %9,82 ile Mac OS Ubuntu, Chrome OS en popüler örneklerindendir. X takip etmektedir. Linux %1,74, Chrome OS ise %0.02 kullanım oranına sahiptir. Tablo 3.2’de dünyada kullanılan işletim sistem- lerinin Mart 2020 tarihi itibariyle pazar payları Bu bölüm kapsamında, Microsoft Windows, gösterilmektedir. Microsoft Windows %77,1 pazar Apple Mac OS ve Linux kişisel masaüstü işletim payı ile liderliğini uzun süredir korurken bu işletim sistemleri detaylandırılacaktır. sistemini %18,34 ile MacOS X takip etmektedir. Microsoft Windows Tablo 3.2 Dünya Çapında Masaüstü İşletim Sistemi Microsoft kuruluşunun piyasaya sunduğu Pazar Payı- Mart 2020 Windows işletim sistemi ilk ortaya çıktığı 1985 yılından (Windows 1.0) bugüne işletim sistemleri İşletim Sistemi Pazar Payı tarihine damga vurmuştur. 2020 itibariyle Dün- Windows %77,1 yanın en çok kullanılan masaüstü işletim sistemi MacOS X %18.34 Windows’tur (Şekil 3.20). Kapalı kaynak kodlarına Linux %1,71 sahip, ücretli bir işletim sistemidir. Windows işle- Bilinmeyen %1,61 tim sisteminin son sürümü Windows 10, 2015 yı- Chrome OS %1,24 lında kullanıma sunulmuştur. Windows 10 çoklu Kaynak: https://gs.statcounter.com/os-market-share/ platform desteği sunmaktadır. desktop/worldwide Şekil 3.20 Microsoft Windows Kullanıcı Arayüzü internet dikkat Windows 10 uygulamalarını incelemek için Microsoft Cortana, Windows 10 ile gelen bir https://www.microsoft.com/tr-tr/windows/ sanal asistandır. windows-10-apps adresini ziyaret edebilirsiniz. 81 İşletim Sistemleri ve Dosya Yönetimi Windows’un tarihçesine bakıldığında komut satırı ile çalışan MS-DOS’tan Windows 10’a kadar geçen sürede bazı kırılma noktaları olduğu görülmektedir. Bunlardan biri ilk başlat menüsünün, görev çubu- ğunun, fareyle sağ tıklama özelliğinin ve masaüstü yapısının kullanıma sunulduğu Windows 95’tir. 1995 yılında satışa sunulan Windows 95’in günümüzde kullanım alışkanlığı edinilen kullanıcı arayüzüne temel teşkil ettiği görülmektedir. Güvenlik açıkları nedeniyle 1998 yılında Windows 98’in geliştirilmesiyle bazı güvenlik yamalarıyla bu sorun giderilmiştir. Temel bazı Windows sürümleri aşağıdaki gibi sıralanmaktadır: Tablo 3.3 Microsoft Windows Tarihçesi ve Özellikleri Çıkış Tarihi Windows Sürümü Kod Adı Temel Aldığı Yapı 1985 Windows 1.0 Arayüz Yöneticisi (Interface Manager) MS-DOS 1987 Windows 2.0 - MS-DOS 1990 Windows 3.0 - MS-DOS 1992 Windows 3.1 - MS-DOS 1993 Windows NT 3.1 Razzle Windows NT 1995 Windows 95 Chicago MS-DOS 1998 Windows 98 Memphis, ChiCairo MS-DOS 2000 Windows 2000 Windows NT 5.0 Windows NT 2000 Windows Me Millennium MS-DOS 2001 Windows XP Whistler Windows NT 2007 Windows Vista Home Longhorn Windows NT 2009 Windows 7 Blackcomb, Vienna Windows NT 2012 Windows 8 - Windows NT 2015 Windows 10 Threshold, Redstone, 19H1, YYHx Windows NT Kaynak: https://en.wikipedia.org/wiki/List_of_Microsoft_Windows_versions adresinden uyarlanarak düzenlenmiştir. 1985 yılında satışa sunulan Windows 1.0, 1981 yılında kullanıma sunulan MS-DOS’un grafiksel ara- yüzle tasarlanmış hâlidir. MS-DOS’ta yalnızca klavye yardımıyla komut satırına yazılan kodlarla işlem yapılırken Windows 1.0 ile fare de kullanılmaya başlanmış ve kullanıcı arayüzüyle işlemler daha kolay gerçekleştirilmeye başlanmıştır. Microsoft Windows uygulamaları geliştirmek için Visual Studio kullanılabilmektedir. Visual Studio güvenli ve hızlı kod yazmaya elverişlidir. Yalnızca Windows uygulamaları değil, Android, iOS, Mac, web ve bulut için uygulamaları geliştirmek de mümkündür. Visual Studio Code, açık kaynak kodlu, ücretsiz bir platformdur. Windows işletim sistemlerinde varsayılan internet tarayıcısı olarak Microsoft Edge 2015 yılından itiba- ren kullanılmaktadır. HTML tabanlıdır. Microsoft Edge Windows 10 işletim sistemiyle birlikte Internet Explorer yerine kullanıma geçmiştir. Yeni Microsoft Edge ise Chromium tabanlı olarak 15 Ocak 2020 tarihinde yayımlanmıştır. Windows’un desteklenen tüm sürümleri ve macOS ile uyumlu olan yeni Edge indirildiğinde bir önceki versiyonun yerini almaktadır. MacOS dikkat MacOS, Apple firmasının geliştirmiş olduğu kısmi açık kaynak kodla- Siri adlı dünyaca ünlü kişisel rına sahip olsa da kapalı kaynak kodu ücretli Macintosh işletim sistemine dijital asistan, Mac OS işle- ailesinin bir üyesidir. Melez (hibrid) çekirdek temelli olan MacOS, Mirosoft tim sistemlerinde varsayılan Windows’tan sonra en çok kullanılan masaüstü işletim sistemidir. olarak yüklü gelmektedir. 82 Bilişim Teknolojileri Şekil 3.21 MacOS X Catalina Kullanıcı Arayüzü Kaynak: https://www.apple.com/macos/catalina/ MacOS’un 10.9’a kadarki her bir sürümüne yırtı- cı dağ kedilerinin adları verilmiştir. 2019 yılında son dikkat sürüm olan MacOS 10.15 Catalina ortaya çıkmıştır. Finder (bulucu), MacOS işletim sistemlerinde Catalina, yalnızca 64 bit uygulamaları destekleyen ve varsayılan bir bileşen olarak, bilgisayarda ve iC- “Etkinleştirme Kilidi”ni içeren ilk MacOS sürümdür. loud bulut ortamında depolanan dosyalara ko- İşletim sistemi, Güney Kaliforniya kıyılarında bulu- layca göz atmayı ve bunları düzenlemeyi sağlar. nan Santa Catalina Adası’ndan adını almıştır. Apple firması tarafından kaynak kodları kapalı Mac’teki belgeler, film gösterim saatleri, uçuş tutulsa da aslında açık kaynak kodlu Unix tabanlı kalkış ve varış saatleri gibi bilgileri hızlı ve Darwin altyapısı üzerine kuruludur. MacOS, ilk sü- zahmetsiz bir şekilde bulmaya yardımcı olan rümü 2001 yılında piyasaya sürülmüş olsa da klasik araç, spotlight olarak adlandırılır. Spotlight MacOS olarak bilinen işletim sistemi 1984 yılından arama alanına birkaç tuş vuruşu ile yazılması 1999 yılına kadar sunulmuştur. 1999 yılındaki son yeterlidir ve otomatik tamamlama ile hemen sürüm MacOS 9’dan sonra ilk masaüstü sürümü alakalı sonuçlar gösterilmektedir. olan MacOS X 10.0 satışa çıkarılmıştır. Böylece Roma rakamı olarak on sayısını temsil eden X, Ma- cOS işletim sistemlerinde kullanılmaya başlanmıştır. Linux Linux işletim sistemi, GNU Genel Kamu Li- sansı ile sunulmaktadır. Kendilerine ait vakıfları da olan bir topluluk tarafından sürekli geliştirilen dikkat Linux, temel olarak Finlandiya Üniversitesinde öğ- MacOS işletim sistemi Safari adlı kendine özgü renci olan ve bu işletim sistemi çekirdeğine kendi bir internet tarayıcısı kullanmaktadır. Apple adına uygun bir isimlendirme yapan Linus Torvalds ürünlerinde varsayılan tarayıcı olarak yüklenen ve gönüllü ekibinin katkıları ile 1991 yılında 0.01 Safari, 2003 yılında sunulmaya başlanmıştır. sürümü ile geliştirilmeye başlanmıştır. Linux temel olarak Unix tabanlıdır ve ondan esinlenilmiştir. 83 İşletim Sistemleri ve Dosya Yönetimi Linux işletim sistemi, gönüllü yazılımcıların des- teğiyle ilk çıktığı andan itibaren gelişim gösteren iş- letim sistemi çekirdeğinin (kernel) genel adıdır. Bu çekirdeği temel alan farklı uygulamalar ve programlar dikkat geliştirilebilir. Linux çekirdeği kullanılarak üretilen GNU Genel Kamu Lisansı, Richard Stallman farklı uygulamalara Linux dağıtımı adı verilmektedir. tarafından ortaya atılan serbest yazılım mode- Böylece özelleştirilmiş işletim sistemleri, uygulamalar lidir ve yazılımların açık kaynak kodlu olması ve diğer yazılımlar bu çekirdek üzerine inşa edilebi- gerektiğinden hareket etmektedir. Böylece her- lir. Günümüzde pek çok platformda Linux’u görmek kesin daha özgün, daha özgür ve daha yaratı- mümkündür. Örneğin, dünyanın en çok kullanılan cı çalışmalar yapacağı öngörülmektedir. GPL mobil işletim sistemi olan Android de Linux çekirdeği (GNU Public Licence), en yaygın kullanılan üzerine temellenmiştir. Linux tabanlı işletim sistem- özgür yazılım lisansıdır. leri dağıtımları, GNU/Linux olarak isimlendirilmek- tedir. Aşağıda GNU/Linux dağıtımları olan kişisel işletim sistemlerinden bazıları yer almaktadır: Pardus Slackware Ubuntu Elementary OS Debian Zorin OS Fedora Deepin Mint Red Hat Gentoo Knoppix Open Mandriva Caldera Open SUSE Şekil 3.22 Bir GNU/Linux Dağıtımı Olan Ubuntu Arayüzü Kaynak: https://ubuntu.com/tutorials/tutorial-install-ubuntu-desktop#1-overview Linux dağıtımlarının bazıları diskten bazıları CD/DVD üzerinden kurulabilir veya direkt CD/DVD gibi optik okuyuculardan çalıştırılabilir. Ayrıca içerdikleri paketler, masaüstü ortamları/kullanıcı arayüzleri ve sistemsel anlamda da farklılıkları bulunmaktadır. 84 Bilişim Teknolojileri Türkiye’de de gönüllü yazılımcı top- Ayrıca hesap makinesi, kol saatleri, modem/router luluklarının geliştirdiği Linux dağıtımı gibi ağ aygıtları, banka ATMleri (bankamatikler), olan Pardus, Archman, Mebis, Milis, GPS navigasyonları ve akıllı televizyonlar gibi gün- Pisi, Gibux, Turkix, Gelecek Linux gibi lük hayatta kullanılan pek çok cihazda da özelleşti- yerli işletim sistemleri bulunmaktadır. rilerek yalnızca o görevi yerine getiren gömülü işle- tim sistemleri bulunmaktadır. Bu işletim sistemleri belirli bir göreve odaklanmakta ve o işe özgü olarak geliştirilmektedir. Kullanım alanlarına göre yukarı- dikkat da verilen sunucu, mobil veya kişisel işletim sistem- Linux çekirdeği, açık kaynak kodlu olmasına rağ- lerine entegre olarak da çalıştırılabilmektedir. men bu çekirdek üzerine geliştirilecek platformla- rın açık kaynak kodlu olma zorunluluğu yoktur. Kaynak Kodu Türüne Göre Bilgisayar uygulamaları geliştiriciler tarafından kaynak kodları yazılarak oluşturulmaktadır. Bu kay- Linux, gönüllüler topluluğu tarafından destek- nak kodları açık veya kapalı olabildiği gibi kısmi açık lendiği için karşılaşılan problemlerin çözümü kısa veya kısmi kapalı kaynak kodları da olabilmektedir. zaman almaktadır. Ayrıca yazılımcılar ve kullanıcılar İşletim sistemleri de en temel yazılımlardan biri ola- özgür olduğu için eklentilerin geliştirilmesi, hatalı bi- rak açık kaynak kodlu ve kapalı kaynak kodlu olabil- leşenlerin değiştirilmesi çok kolaydır. Linux nispeten mektedir. Bu bölümde açık ve kapalı kaynak kodla- hafif bir sistem olduğu için en düşük donanımlarda rına sahip işletim sistemleri detaylandırılacaktır. bile rahatlıkla çalışabilmektedir. Ayrıca zararlı yazı- lımlara karşı daha güvenlidir. Bunun nedeni güven- Açık Kaynak Kodlu İşletim Sistemleri lik açıklarının Linux destek ekiplerince kısa sürede güvenlik yamalarıyla çözüme kavuşturulmasıdır. Li- Açık kaynak kodlu yazılımlar, kaynak kodları üze- nux diğer alternatiflerine göre düşük maliyetle daha rinde herkesin değişiklik yapıp yazılımın istenildiği yüksek verim ve platform çeşitliliği sağlar. Linux gibi özelleştirilebildiği, hatalarının giderildiği yazılım- kişisel bilgisayarlarda kullanılabildiği gibi, yazılım lardır. Ancak lisans türüne göre her yazılımcı, her açık geliştirme platformlarında, internet sunucuların- kaynak kodlu yazılımda düzenleme yapma yetkisine da, gömülü cihazlarda, otomotiv sektöründe, süper sahip olmayabilir. Hatta açık kaynak kodlu bir yazılım bilgisayarlarda, nesnelerin interneti ve bulut bilişim ücretsiz kullanılabileceği gibi ücretli şekilde satışa da uygulamalarında kullanım alanı bulmaktadır. Linux sunulabilir. Bu açık kaynak kodlu yazılım, lisans türü- işletim sisteminin ücretsiz olması, isteğe bağlı olarak ne göre değişiklik göstermektedir. Açık kaynak kod- özelleştirilebilmesi, açık kaynak kodlu olması, hızla larına sahip bir yazılım, gönüllü geliştiricilerin sürekli yaygınlaşması, düşük donanımlarda yüksek perfor- desteğiyle hatalardan arıtılmış, uyarlanabilir, yüksek mans sağlaması, ek yazılım ve sürücülerin kurulma- kaliteli, güvenli ve düşük maliyetli, hızlı olmaktadır. sını gerektirmemesi, kullanıcı dostu arayüzlere sahip Açık kaynak kodlu bir yazılımda hatalar düzeltilebilir, dağıtımlar geliştirilebilmesi, güvenilir olması ve ağ işlevler iyileştirilebilir veya yazılım geliştiricinin kendi sistemleri üzerindeki yüksek performansı Linux’un ihtiyaçlarına göre uyarlanabilir. Neredeyse tüm açık en güçlü yönleridir. Ancak hâlâ çok bilinmeyen ve kaynak kodlu yazılımlar, özgür yazılım olsa da bazı yeterince tanıtımı yapılmayan bir yapısı olduğundan istisnalar vardır. Birincisi, bazı açık kaynak lisansla- dolayı yaygınlaşamamış ve Microsoft Windows ve rı çok kısıtlayıcıdır. Apple MacOS’un gölgesinde kalmıştır. Bu nedenle ücretsiz lisans olarak nitelen- dirilmezler. Örneğin, dikkat Diğer İşletim Sistemleri “Open Watcom” üc- Açık kaynak kodlu yazılım- İşletim sistemleri yalnızca sunucu, mobil veya retsiz değildir çünkü lar, kaynak kodlarıyla bera- kişisel masaüstü işletim sistemlerinden ibaret de- lisansı değiştirilmiş ber yayımlanarak dünyanın ğildir. Buzdolabı, fırın, çamaşır/bulaşık makinesi bir sürümün oluş- her bölgesinden yazılım- gibi beyaz eşyalardan otomobillerdeki bilgi eğlen- turulmasına ve özel cıların ortak çalışmasının ce multimedya sistemlerine, akıllı tahtalardan sim olarak kullanılmasına ürünü olarak sürekli geli- kartlara kadar işletim sistemleri bulunmaktadır. izin vermez. şim içerisindedir. 85 İşletim Sistemleri ve Dosya Yönetimi Açık kaynaklı yazılımlar, “Açık Kaynak Girişimi (Open Source Initiative/ OSI)” tarafından işaretlendirilir. Serbestçe paylaşılması ve geliştirilip başka- ları tarafından yeniden dağıtılması amaçlanan yazılımlar, dağıtım koşulları dikkat bu girişimin “açık kaynak” tanımına uygunsa açık kaynak girişiminin ticari Açık kaynak kodlu yazılım- markasını kullanabilir. ların büyük çoğunluğu kâr Açık kaynak kodlu uygulamalar olabildiği gibi işletim sistemleri de bu- amacı gütmezler. lunmaktadır. Bilinen açık kaynak kodlu bazı program ve uygulamalar aşağı- daki gibidir: Phyton Mozilla Firefox Java Google Chrome/Chromium MySQL GIMP Apache HTTP Server LibreOffice NGINX Open Office osCommerce Notepad++ En bilinen açık kaynak kodlu işletim sistemleri aşağıdaki gibidir: Fedora Caldera Linux / Linux çekirdeği Linux Mint Darwin Android Gentoo AROS Qubes OS Open Mandriva FreeDOS Haiku Open SUSE Tock Redox Slackware Subgraph OS Solus Elementary OS AquilaOS FreeBSD React OS MINIX Arduino Chrome OS OpenBSD Pardus Zorin OS Helen OS Ubuntu Deepin X Ubuntu Red Hat Debian Knoppix Açık kaynak kod hareketinin en önemli öncülerinden biri Linux çekirdeği ve bu çekirdekten üretilmiş yüzlerce Linux dağıtımı işletim sistemleridir. Bu dağıtımların tamamı açık kaynak kodludur ve yazılımcı- lara kaynak kodlarıyla birlikte sunulmaktadır. dikkat Her açık kaynak kodlu sistemin tüm bileşenleriyle açık olabileceğini düşünmek doğru bir yaklaşım olmaz. Android, açık kaynaklı Linux işletim sistemine dayanan ve en bilinen mobil işletim sistemlerinden biri olsa da birçok özel, kapalı kaynak uzantısına sahip tescilli eklentiyi de bünyesinde barındırmaktadır. 86 Bilişim Teknolojileri Kapalı Kaynak Kodlu İşletim genellikle iyi yazılmıştır ve ayrıntılı talimatlar içerir. Sistemleri Kapalı kaynaklı yazılımlar genellikle ücretlidir ve Kaynak kodları diğer geliştiricilere ve topluluk- maliyetler, yazılımın karmaşıklığına bağlı olarak de- lara açık olmayan yazılımlara kapalı kaynak kodlu ğişebilir. Bununla birlikte çoğu şirket, alıcıyı, yazı- yazılım adı verilmektedir. Büyük çoğunluğu ücretli lımlarının doğru ve etkin çalıştığına ikna etmek için ve tescilli (proprietary) uygulamalardır. Yasal ola- ücretsiz denemeler (free trial) sunar. rak değiştirilmesi ve dağıtılması sınırlandırılmıştır. Tanınmış kapalı kaynak kodlu yazılımlar aşağı- Genellikle kâr amacı güderler. Kapalı kaynak kodlu da maddeler hâlinde gösterilmektedir: yazılımlar veya işletim sistemleri diğer geliştiricile- Microsoft Office rin ve kuruluşların kullanmasını önlemek için özel Adobe Photoshop kodlar ve kriptografi kullanırlar. Böylece üzerinde Adobe Acrobat Pro değişiklik yapma ve başkalarıyla paylaşma gibi du- rumlar söz konusu olamaz. Kaspersky Antivirus Norton Antivirus Tanınmış bazı kapalı kaynak kodlu işletim sis- temleri aşağıda listelenmektedir: dikkat Microsoft Windows Kapalı kaynak yazılımlarda, kullanıcılar yazılımı Apple MacOS kodlarıyla birlikte satın almaktan ziyade, sadece kullanmak için ödeme yapmaktadır. Apple iOS Windows Mobile KaiOS Kapalı kaynak kodları, belli kuruluşların özel Açık ve kapalı kaynak kodlu işletim sistemle- yazılımları olduğu ve başka kötü niyetli olabilecek rinin birbirlerine göre üstün ve sınırlı yönleri bu- kişilerle kodlar paylaşılmadığı için güvenlidir ancak lunmaktadır. Seçim yaparken kullanıcıların kendi- güncellemeler ve güvenlik yamaları da ilgili progra- lerine en uygun işletim sistemini çeşitli özellikleri mın geliştiricilerinin inisiyatifindedir. Bunun dışın- gözeterek belirlenmesi gerekmektedir. Tüm yönle- da hızlı ve yüksek performanslı ürünler ortaya çıkar. riyle bir sistemin diğerinden üstün olduğunu söyle- Geliştiricilerin izin verdiği ölçüde özelleştirilebilir ve mek mümkün değildir. Ayrıca kapalı kaynak kodlu kişiselleştirilebilir. Bazı kullanıcıların yorumlarına yazılım ve işletim sistemlerinde açık kaynak kodlu göre açık kayna