Yazılım ve işletim sistemleri
1.YAZILIM
Yazılım, belli bir görevin nasıl yapılacağını bilgisayara bildiren komutlardır. Bir bilgisayarın kullanılabilmesi için donanımın yanında bir programında uyumlu bir şekilde çalışması gerekmektedir.
Genellikle yazılım ve program kavramları birbirlerinin yerine kullanılsa da temel olarak bir program belli işlevleri yerine getirmek üzere yazılmıştır ve komut satırlarından oluşur. Yazılım ise programlar bütününe verilen isimdir, diyebiliriz [1].
Bir bilgisayar üzerinde bulunan yazılımları iki ana kategoride inceleyebiliriz:
1. Sistem Yazılımları,
2. Uygulama Yazılımları
Sistem yazılımı, genellikle bilgisayar satın aldığınızda yüklü olarak gelen, kullanıcı ve diğer programların bilgisayar ile etkileşimini sağlayan yazılımlardır. Sistem yazılımı, genel olarak dört bileşenden oluşur:
– İşletim sistemi, sistem yazılımının temel bileşenidir.
– Aygıt sürücüler, bilgisayar sistemi çevre aygıtlarının kullanımını sağlar.
– Yardımcı programlar, bilgisayar sisteminde var olan programları destekleyen, işlevlerini zenginleştiren ve genişleten programlardır.
– Dil çevirmenleri, programcılar tarafından yazılan komutları bilgisayarın anlayabileceği makine diline çeviren programlardır.
Uygulama yazılımları ise sistem programlarıyla kullanıcı arasındaki iletişimi sağlarlar. Uygulama yazılımlarının çalışabilmesi için sistem yazılımlarına muhakkak olarak ihtiyaç vardır.
Sistem yazılımlarını iki başlık altında inceleyebiliriz:
1)İşletim Sistemi
2)Yardımcı Yazılımlar
Yardımcı programlar, bilgisayar kaynaklarının denetimi ve dağıtımıyla ilgili görevleri yerine getiren programlardır. Bir kısmı işletim sistemi ile beraber gelir. Örneğin, Windows işletim sisteminde, donatılar altındaki sistem araçları menüsünden bazı yardımcı programlara erişilebilir. Örneğin Norton Desktop ve McAfee yardımcı programları ise ayrı satılırlar. Bu tür programları satın alırken, kullandığımız bilgisayar sistemine uygun olmasına dikkat etmek gereklidir.
En yaygın kullanılan yardımcı program türleri, dosya bütünleştirme, disk tarayıcı, disk temizleme, yedekleme, veri sıkıştırma ve virüs koruma programlarıdır.
Örnek olarak;
Dosya bütünleştirme programı: Sabit diskte eski dosyalar silinip yenileri yaratıldıkça, dosyalar parçalanmaya başlar. Parçalanma, dosya bloklarının diskin ardışık olmayan kısımlarına dağılarak, dosya erişimlerinin yavaşlamasına neden olmasıdır.
İşletim sistemi yeni yüklendiği zaman, dosyalar diskte ardışık kısımlara konur. Ancak, zaman içinde dosyalar güncellenip boyutları artınca, dosyanın yeni kısımları kullanılmayan bloklara yerleştirilir. Bu kısımlar, dosyanın içinde var olan kısımlarla yan yana olmayabilir. Bu yüzden dosyanın erişimi daha uzun sürebilir.
Dosya bütünleştirme programı, parçalanan dosyaları bularak ardışık kısımlara yerleştirerek diski tekrar düzenleyen yardımcı programdır.
Disk tarayıcı programı: Çeşitli nedenlerle disk ya da disket yüzeyinde bazı bozukluklar oluşabilir ve bu kısımlarda bulunan veriye erişilemeyebilir. Disk tarayıcı programlar, disk ve disketlerde bulunan sorunları bulmaya ve düzeltmeye yardımcı olan programlardır.
Yukarıda verdiğimiz örneklerin dışında gerek bilgisayarımıza kurulu olarak gelen gerekse sonradan yüklediğimiz yardımcı yardımcı programlar işletim sistemini daha esnek ve kullanışlı bir hale getirir.
1.1. İŞLETİM SİSTEMİ
İşletim Sistemi (Operating Şystem), sistem yazılımlarının en önemlisi, bilgisayarın işlemlerini kontrol edenidir. Bilgisayarın donanımını ve uygulama yazılımlarını kontrol eden ve düzenleyen bir grup program olarak tanımlanabilir. Bunları yapabilmek için mikroişlemci, bellekler ve giriş/çıkış birimleri gibi kaynakların kullanımını denetler[1].
İşletim sistemleri bilgisayarların kolay ve verimli kullanılmaları amacıyla hazırlanmışlardır.
Bilgisayarlarda başlıca aşağıda sıralanan görevleri yürütürler:
• Program işletimi: Uygulama programları ve diğer sistem programlarının işletimini
denetler.
• Hata denetimi: İşletim sırasında programlarda ve donanımlarda ortaya çıkacak
hata durumlarını denetler ve gerekirse kullanıcıyı uyarırlar,
• Giriş/Çıkış denetimi: Programların donanımdan istedikleri okuma ve yazma
isteklerini denetlerler,
• Dosya yönetimi: Bilgi saklama ortamları üzerinde bulunan dosyaların, adı,
nerede oldukları vb. türünden bilgilerin tutulmasını sağlarlar,
• Muhasebe: Bilgisayar donanımının kim tarafından ne kadar süre ile kullanıldığına
ilişkin istatistiksel bilgileri tutarlar,
• Paylaşım: Bilgisayarların verimli bir şekilde kullanılabilmesi için, olabildiğince
çok kişi tarafından ortak olarak kullanılabilmesini sağlarlar,
• Koruma: Bilgisayarda kayıtlı olan dosyalar ve çalışmakta olan programların,
başka kullanıcılar tarafından bilinçli ya da bilinçsiz olarak bozulmasını engellerler [2].
1.1.1. İşletim Sisteminin İşlevleri
İşletim sistemleri çeşitli işlevleri yerine getirir:
Önyükleme (boot): İşletim sisteminin bilgisayarın ana belleğine yüklenmesi işlemidir. Bu yükleme, bilgisayarın kalıcı belleği olan ROM’da bulunan programlar tarafından yapılır.
Kaynak yönetimi: İşletim sistemi, merkezi işlem birimi ve bellek gibi donanım kaynaklarını programlar tarafından paylaşımlı olarak kullanımını sağlar.
Dosya yönetimi: Veri ya da program içeren dosyaların ikincil bellekte (disk, disket, teyp) saklanmasını işletim sistemi düzenler. İşletim sistemi, ikincil bellekte hangi dosyanın nerede bulunduğunu, nerelerin boş olduğunu takip eder[4].
Görev yönetimi: Bazı işletim sistemleri, birden fazla programı aynı anda çalıştırabilir. Her program ayrı bir pencere içinde görüntülenir. Bazı işletim sistemleri ise birden fazla kullanıcıya aynı anda hizmet verebilir. İşletim sistemlerinin bu yeteneği görev yönetimi ile sağlanır [4].
Güvenlik yönetimi: İşletim sistemleri, kullanıcılara bilgisayara erişim denetleme olanağı sağlamaktadır.
1.1.2.İşletim Sisteminin Mimarisi
İşletim sistemini genel olarak kontrol programları ve işlem programları diye iki grupta düşünebiliriz [1].
1.1.2.1 Kontrol Programları
Kontrol programlarının başlıca görevleri:
-Kaynakların atanması
-İşlemlerin sıraya konması
-Giriş çıkış işlemlerinin kontrol edilmesidir.
Kontrol programlarının görevlerini kısaca aşağıdaki gibi özetleyebiliriz:
a)Kaynak Yönetimi: Kaynak yönetimi kaynakların hangi sıraya göre kullanılacağını belirler. Hangi kullanıcının önce hangisinin sonra kullanacağına karar verirler.
Özellikle çok kullanıcılı sistemlerde önem kazanan bu sistem aynı anda kaynaklara erişmek isteyen kullanıcıların erişimini en iyi şekilde düzenlemeyi amaçlar.
b)Kesmelerin Ele Alınması: İşlemcinin, normal yürütüm sırasını değiştirmek ve gereksinim duyulan başka bir işi varsa onu yerine getirmek için kesme programları kullanılır. Kesme sürecinde kontrolü kesme programı devralır. Kesmeler işletim sistemlerinin genel bir parçasıdırlar. Kesmeler:
• İşlemcinin etkinliğini artırır.
• Bir G/Ç işlemi yapılırken, işlemcinin diğer komutları yürütmesine olanak verir.
• Bir sürecin geçici olarak durdurulmasına (sonradan çalıştırılmak üzere) sebep olurlar[3].
c)İşlem Yönetimi: Bu paylaşım türünde bir kaynak bölümlere ayrılmaz, bunun yerine kaynak bir işlem tarafından belli bir süre kullanılır yani o işleme adanır ardından diğer işlem bu kaynağı belli bir süre kullanır. Örneğin MİB’ni işlemlerin belirli süreler için kullanılması bu
duruma bir örnektir [2].
d)Veri kontrolü: Veri girişinin sağlanması, girilen verilerin ana belleğe ve oradan da ikincil belleğe aktarılması ve verilerin çıkış birimlerine yazılması uygulama programlan tarafından işletim sistemine bildirilmesidir. Bu işlemlerin ayrıntılarının işletim sistemi tarafından ele alınması, her uygulama yazılımı içine bununla ilgili komutlar eklenerek yapılan işleme oranla daha verimlidir.
Veri kontrol yazılımları genellikle giriş/çıkış ve depolama birimlerini kontrol eden alt düzey programlardır[1].
e)Sistem Durum Denetimi: Bu işletim sisteminin temel görevlerinden birisi de sistemi sürekli olarak denetlemek ve oluşan hataları olabildiğince az sorun yaratarak çözmektir [1].
1.1.2.2. İşlem Programları
Bu programlar kullanıcıların bilgisayar sistemlerinde sıkça kullandıkları işlevlerin sağlanmasını amaçlayan programlardır.
Bu programlar dosyaları kopyalama, bastırma, arama türü işlemlerin yapılabilmesi için kullanıcıya olanak sağlar [1].