Bir İşletim Sistemi (OS), bir bilgisayar sisteminin temel süreçlerinin yönetimini yürüten ve geri kalan işlemlerin normal yürütülmesine izin veren program veya program kümesidir.
İşletim Sistemi (Operating System) Nedir, Çeşitleri Nelerdir?
Bir işletim sistemi, kullanıcı ve makine arasındaki iletişimi rahat ve verimli bir şekilde sağlamak için tasarlanmış bir dizi program veya yazılımdır. Bilgisayar kaynaklarının yönetiminden sorumludur, buna donanımın en temel düzeylerden yönetilmesi dahildir.
Hesaplamanın başlangıcında, programcı bir parça derin bilgiye sahip olmalı ve programının başarısız olması durumunda, donanım ile de temas edebilmelidir.
Bilgisayarın durumunun gösterge ışıklarının ve panellerinin değerlerini, hatanın nedenini belirlemek ve sistem zamanını bir kenara koyma ve ayarlama prosedürlerine bir kez daha bakmanın yanı sıra programınızı düzeltebilmek için incelemelidir.
İşletim sistemlerinin önemi tarihsel olarak 50’li yıllardan beri ilk nesil eklenti panoları aracılığıyla bir bilgisayarı çalıştırma yollarından ortaya çıkmıştır.
Ve sonra ikinci nesildeki toplu çalışmalar yoluyla, operatör her zaman bir programın tanımında düşünülen özelliklerden biri olan tekrarlayan adımlar dizisi gerçekleştirdiğinden, belirgin şekilde geliştirilebilir.
Yani, operatörün görevlerinin kendilerinin zaman içinde ve muazzam karmaşıklığı nedeniyle “İşletim Sistemi” olarak adlandırılan bir programda somutlaşabileceği görülmeye başlandı. Bu nedenle, ilk işletim sistemleri arasında Fortran Monitör Sistemi (FMS) ve IBSYS bulunur.
Her bilgisayar sistemi genel olarak donanım ve yazılım olarak iki kısma ayrılır.
Yazılım, donanımı kullanışlı hale getirir ve bilgisayar çalışmasını yöneten sistem programları (temel yazılım) ve kullanıcılar için yararlı eylemler gerçekleştiren uygulama yazılımı olarak iki sınıfa ayrılabilir.
Sistem programları arasında işletim sistemlerinden, derleyicilerden, tercümanlardan, editörlerden bahsedebiliriz. Diğer programların çalışması için her genel amaçlı bilgisayarın bir işletim sistemi olmalıdır.
İşletim Sistemi Tarihi
İşletim sistemleri tarihsel olarak içinde çalıştıkları bilgisayarların mimarisiyle ilişkilendirilmiştir, bu yüzden tarihçeleri budur.
İşletim sistemleri, bilgisayar donanımı gibi, nesiller olarak adlandırılan bir dizi devrimsel değişikliğe uğradı.
Donanım söz konusu olduğunda, nesiller, vanalarda (birinci nesil) transistörlere (ikinci nesil), entegre devrelere (üçüncü nesil), dördüncü nesil için büyük ve çok büyük ölçekli entegre devrelere kadar kullanılan bileşenlerde büyük ilerlemelerle işaretlenmiştir.
Her ardışık donanım nesnesine maliyet, boyut, ısı emisyonu ve güç tüketiminde önemli düşüşler ve hız ve kapasitede önemli artışlar eşlik etti. Şu anda, Windows 10, Linux gibi çok çeşitli İşletim Sistemleri bulunmaktadır.
Birinci Nesil (50’lerin Sonu)
Bu on yılda, işlerin gruplar veya gruplar tarafından toplandığı toplu işleme sistemleri ortaya çıktı.
Herhangi bir görev yerine getirildiğinde, makinenin tam kontrolü vardı. Her görevin sonunda, kontrol bir sonraki görevi temizleyen, okuyan ve başlatan işletim sistemine geri döndürüldü.
Sistem dosya adları kavramı bilgi bağımsızlığına ulaşmış gibi görünmektedir.
General Motors araştırma laboratuvarları, IBM 701’leri için bir işletim sistemini ilk işleten olmak üzere tarihe geçmiştir.
İkinci Nesil (60’ların Ortası)
Makinenin işlem gücünü arttırmak için tek bir sistemde birkaç işlemcinin kullanıldığı bu nesilde çok programlı ortak sistemler geliştirilmiştir.
Program sadece bir dosyanın belirli sayıda iz ve belirli bir yoğunluğa sahip bir teyp sürücüsüne yazılacağını belirtti.
İşletim sistemi daha sonra istenen özelliklere sahip bir teyp sürücüsünü yerleştirdi ve operatöre bu sürücüye bir bant takmasını söyledi.
Üçüncü Nesil
Şu anda, genel kullanım sistemleri olarak tasarlanan ve farklı türlerde büyük hacimli bilgilerin işlenmesini gerektiren IBM/360 bilgisayar ailesi oluşturuldu, bu da işletim sistemlerinin yeni bir evrimine neden oldu: Eşzamanlı toplu desteği destekleyen çoklu mod sistemleri süreçler, zaman paylaşımları, gerçek zamanlı işleme ve çoklu işleme.
Dördüncü Nesil
Mevcut dönemde bilinen işletim sistemleri dördüncü nesil sistemler olarak kabul edilmektedir.
Bilgisayar ağlarının kullanımının ve çevrimiçi işlemlerin yaygınlaşmasıyla, coğrafi olarak uzak bilgisayarlara çeşitli terminal türleri aracılığıyla erişim elde etmek mümkündür.
Bu işletim sistemlerinde, kullanıcının bağlanmak istediği bilgisayar donanımı ile ilgisi olmayan sanal makineler kavramı ortaya çıkar ve bunun yerine kullanıcı işletim sistemi tarafından oluşturulan bir grafik arayüzü gözlemler.
Bileşenleri
İşletim sistemi, donanım ile etkileşimleri yönetmek için kullanılabilecek bir dizi yazılım paketinden oluşur.
Bellek, süreçler, dosyalar, ana girişler/çıkışlar ve iletişim işlevleri gibi işletim sisteminin temel işlevlerini temsil eden çekirdektir.
Bir kontrol dili aracılığıyla işletim sistemi ile iletişimi sağlayan komut yorumlayıcısı, kullanıcının kullanılan donanımın özelliklerini, fiziksel adreslerin yönetimini bilmeden çevre birimlerini kontrol etmesini sağlar.
Dosyaların ağaç yapısında kaydedilmesine izin veren dosya sistemidir.
Kısacası, işletim sistemleri operatörler, uygulama geliştiricileri, sistem programcıları, programlar, donanım ve kullanıcılara sahip bir arabirimdir.
İşlevleri
İşlemci Yönetimi
İşletim sistemi, bir programlama algoritması aracılığıyla işlemcinin farklı programlar arasındaki dağıtımını yönetir.
Programcı tipi, istenen hedefe bağlı olarak tamamen işletim sistemine bağlıdır.
Rasgele Erişimli Bellek Yönetimi
OS, uygunsa, her uygulama ve her kullanıcı için ayrılan bellek alanını yönetmekten sorumludur.
Fiziksel bellek yetersiz olduğunda, işletim sistemi sabit sürücüde sanal bellek adı verilen bir bellek alanı oluşturabilir.
Sanal bellek alanı, sistemdeki RAM’den daha fazla bellek gerektiren uygulamaları çalıştırmanıza izin verir. Ancak, bu bellek çok daha yavaştır.
Giriş/Çıkış Yönetimi
Sürücüler aracılığıyla programların malzeme kaynaklarına erişiminin birleştirilmesini ve kontrol edilmesini sağlar.
Uygulama Yürütme Yönetimi
İşlevlerini yerine getirmek için ihtiyaç duydukları kaynakları tahsis ederek uygulamaların sorunsuz çalışmasını sağlar.
Yetkilendirme Yönetimi
Programların yürütülmesine ilişkin güvenlikten sorumludur ve kaynakların yalnızca ilgili yetkilere sahip programlar ve kullanıcılar tarafından kullanılmasını garanti eder.
Dosya Yönetimi
Dosya sistemine okuma ve yazma işlemlerini yönetir ve uygulama ve kullanıcı dosyaları için yetkilere erişir.
Bilgi Yönetimi
Bilgisayarın doğru çalışmasını teşhis etmek için kullanılabilecek bir dizi gösterge sağlar.
İşletim Sistemlerinin Özellikleri
Kolaylık
Bilgisayarın kullanımını daha kolay hale getirir.
Verimlilik
Bilgisayar kaynaklarının mümkün olan en verimli şekilde kullanılmasını sağlar.
Gelişme Yeteneği
Bir hizmete müdahale etmeden yeni sistem işlevlerinin geliştirilmesine, test edilmesine veya etkili bir şekilde girilmesine izin verecek şekilde oluşturulmalıdır.
Donanım Yeteneği
Bilgisayarın kaynaklarını donanım açısından daha iyi bir şekilde yönetmekten sorumludur, yani her bir işleme, kaynakları paylaşabilmek için işlemcinin bir bölümünü atamaktadır.
İletişim Yeteneği
Kullanıcı gerektirdiğinde çevre aygıtlarıyla iletişim kurmakla sorumlu olmalıdır. Hızlı ve güvenli erişim için verileri düzenler.
Ağ Yönetimi
Kullanıcının bilgisayar ağlarının kurulumu ve kullanımı ile ilgili her şeyi kolaylıkla yönetmesini sağlar.
Girdi ve Çıktı Sağlama
Kullanıcının bilgisayarın giriş/çıkış aygıtlarına erişmesini ve bunları yönetmesini kolaylaştırmalıdır.
Hata Giderme
Kullanıcıların birbirlerini engellemelerini önler ve bu uygulamanın başka bir kullanıcı tarafından işgal edilip edilmediğini bildirir.
İstatistik Sağlama
Donanım ve verilerin kullanıcılar arasında paylaşılmasını sağlar.
Kaynak Yönetimi
Bir işletim sisteminin diğer görevi, aynı anda çalışan ve aynı kaynağı kullanması gereken iki veya daha fazla program olduğunda bilgisayarın kaynaklarını yönetmektir.
Ek olarak, çok kullanıcılı bir sistemde, fiziksel cihazlara ek olarak, bilgilerin paylaşılması genellikle gerekli veya uygundur.
Aynı zamanda güvenlik hususları da dikkate alınmalıdır. Örneğin, gizli bilgilere yalnızca yetkili kullanıcılar erişmelidir, hiçbir kullanıcı Sistemin kritik alanlarının üzerine yazamaz.
Kısacası, OS, hangi kaynakların kaynak talebinde bulunanlara kaynak sağladığını kimin kullandığını takip etmeli ve çelişen taleplerde tahkimde bulunmalıdır.
Gerçekleştirilen Görevler
- Sistem ile kullanıcı arayüzünü sağlar.
- Donanım kaynaklarını kullanıcılar arasında paylaşır.
- Kullanıcıların verilerini birbirleriyle paylaşmasına izin verir.
- Bir kullanıcının etkinliklerinin diğer kullanıcıların etkinliklerine müdahale etmesini önler.
- I/O cihazlarına erişimi kolaylaştırır.
- Hataları yönetir.
- Kaynakların kullanımı üzerinde kontrol sahibi olur.
Yönettiği kaynaklar ise, işlemciler, depolama, giriş/çıkış aygıtları ve veridir.
İşletim Sistemlerinin Sınıflandırılması
İşletim sistemlerinin evrimi nedeniyle bir sınıflandırma yapmak gerekiyordu; bileşenleri arasındaki farkları göz önüne alarak bunları şu şekilde sınıflandırabiliriz:
1) Batch Operating Systems (Toplu İşletim Sistemleri)
Toplu işletim sistemleri, bilgilerin toplu veya toplu olarak toplanmasını gerektirir.
Çalışmalar kabul sırasına göre “önce ilk gelenler” modeline göre işlenir. Bu sistemlerde, bellek iki bölgeye ayrılmıştır.
Bunlardan biri OS tarafından işgal edilir ve diğeri yürütme için geçici programları yüklemek için kullanılır. Bir programın yürütülmesi tamamlandığında, aynı bellek alanına yeni bir program yüklenir.
2) Multiprogramming Operating Systems (Çok Programlı İşletim Sistemleri)
Çoklu programlama sistemleri, iki veya daha fazla çoklu eşzamanlı işlemi destekleyebilir ve iki veya daha fazla işlemden alınan talimatların ve verilerin aynı anda birincil bellekte kalmasına izin verebilir.
Bu sistemler bilginin yönetimi için çoklu işlem operasyonunu içerir. Öncelikle işlemci, bellek ve G/Ç aygıtları gibi sistem kaynakları için rekabet eden çok sayıda eşzamanlı olarak aktif program ile karakterize edilirler.
Bu sistemler, tüm etkin programların ve sistem kaynaklarının durumunu izler.
3) Multi-User Operating Systems (Çok Kullanıcılı İşletim Sistemleri)
Çok kullanıcılı işletim sistemleri, iki veya daha fazla terminal aracılığıyla bir bilgisayar sistemine eşzamanlı erişim sağlar.
Bu tür bir OS bugün bilgisayar ağlarının yönetiminde esastır.
4) Timeshare Operating Systems (Zaman Paylaşımlı İşletim Sistemleri)
Timeshare işletim sistemleri, kullanıcılara ayrı bir bilgisayara sahip oldukları izlenimini vermek için ortak kaynakların eşit paylaşımını sağlamaya çalışır.
Bu sistemlerde, bellek yöneticisi genellikle birbirleriyle iletişim kurmaları gerekmediği için programların izolasyonunu ve korunmasını sağlar.
G/Ç kontrolü, aygıtların sistem bütünlüğünü koruyacak ve tüm kullanıcılara hizmet sağlayacak şekilde eşleme sağlamak veya kaldırmaktan sorumludur.
Dosya yöneticisi, dosyalara erişmeye çalışırken uyum ve çakışma olasılığı göz önüne alındığında, bilgilerin erişiminde koruma ve denetim sağlar.
5) Real-Time Operating Systems (Gerçek Zamanlı İşletim Sistemleri)
Bu sistemler, daha hızlı tepki süreleri sağlamayı, bilgileri kesinti olmadan işlemeyi amaçlamaktadır.
Bu sistemlerde, birçok işlem bellekte kalıcı olarak yer aldığından bellek yöneticisi nispeten daha az talep edilir.
Dosya yöneticisi genellikle büyük gerçek zamanlı sistemlerde bulunur ve birincil amacı, ikincil depolamanın verimli kullanımı yerine erişim hızını yönetmektir.