Bilgisayar Yazılımları
Yazılım, kullanıcıların bilgisayarda işlerini yapmalarına imkan veren tüm programlara verilen genel addır. Yazılımlar :
1.Sistem Yazılımları
2.Uygulama Yazılımları
olmak üzere iki ana gruba ayrılır.
Uygulama yazılımları; programlama dilleriyle yazılan kullanıcıya yönelik yazılımlardır.
Sistem yazılımları ise uygulama yazılımlarının belli bir donanım grubu üzerinde pürüzsüz olarak çalışmasını sağlayan zemin programlarını içerir.
Uygulama Yazılımları
Kullanıcıların belli başlı bazı işlemleri yapmalarına imkan veren yazılımlardır. Uygulama yazılımlarının geliştirilmesi için programlama dilleri ve diğer bazı uygulama geliştirme araçları kullanılır. Uygulama yazılımları genellikle belli bir işletim sistemi altında çalıştırılmak üzere hazırlanır. Örneğin, Macintosh işletim sistemi altında çalıştırılmak üzere hazırlanan bir kelime işlem programı DOS veya WINDOWS işletim sistemini kullanan kişisel bilgisayar(PC-Personal Computer)larda çalışmayacaktır. Bununla birlikte, çoğu durumlarda ticari uygulamalar; diğer bir çok işletim sistemi altında da çalışabilecek şekilde hazırlanmaktadır.
Genel Amaçlı Uygulama Yazılımları
Günümüzde bilgisayar sistemleri için geliştirilmiş çok sayıda genel amaçlı uygulama yazılımı mevcuttur. Bunların sayısı ve özellikleri her geçen gün hızla artmaktadır. Bu yazılımlardan kişi ve kurumlarca en yaygın olarak kullanılanları; kelime işlem programları, elektronik hesap tablosu programları, sunum programları, dosya yönetim ve veri tabanı yönetim programlarıdır.
Kelime İşlem Programları : Bilgisayarın, çok güçlü özellikleri olan bir daktilo makinesi gibi kullanılması özelliğini sağlayan programlardır. Hazırlamak istediğiniz belgede grafik, tablo, resim, dipnot ve belgeyi birden fazla sütun halinde düzenlemek gibi özellikleri sağlarlar. Bu programlar diğer genel amaçlı uygulama yazılımlarına oranla çok daha yaygın kullanılmaktadır. Bazı kelime işlemciler, masa üstü yayıncılık, elektronik takvim, ve elektronik posta gibi özelliklere sahip olan entegre ofis sistemlerinin temelidir(Word, WordStar, WordPerfect, PW-Professional Write gibi).
Hesap Tablosu Programları : Hesap tablosu programları bilgisayar sistemini son derece özellikli bir elektronik hesap makinesine dönüştüren programlardır. En basit özelliği verileri oldukları gibi tablo şeklinde listelemek olduğu gibi, verileri alıp çeşitli türlerde grafiklere dönüştürme özelliğine de sahiptirler(Excel, Lotus 123, Quattro Pro gibi).
Sunum Programları : Belli bir konuda yapılan araştırmanın ve/veya hazırlanan raporların sonuçlarını bilgisayar yardımıyla diğer kişilere anlatmak için kullanılır. Sunum genellikle bilgisayara bağlı bulunan bir projeksiyon/data shov cihazı yardımıyla yapılır. Bu uygulamalar her türlü grafik, ses ve video görüntülerinin kullanılmasına imkan verir.
Dosya Yöneticileri ve Veri Tabanı Yönetim Programları : Büyük miktardaki verileri depolayıp bu verilere hızlı bir erişim ve bu verilerden raporlar hazırlanmasına imkan veren programlardır(Access, Database/Dbase, FoxBase/FoxPro, Oracle, File Maker gibi).
Bu yazılımlar genellikle üretici firmalar tarafından birleştirilerek MS-Office, Star Office(Sun), Open Office(ücretsiz) gibi tek bir ofis paketi halindedirler.
Özel Amaçlı Uygulama Yazılımları
Özel amaçlı uygulama yazılımları belirli bazı işleri yapabilmek için geliştirilen, dolayısıyla sınırlı amaçları olan yazılımlardır. Aşağıda bazı özel amaçlı yazılım türleri kısaca belirtilmiştir.
Analiz ve karar verme : Belli işlemleri yapmaktan çok; problemlerin çözümünde yöneticilere yardımcı olmak amacıyla geliştirilmiştir. Matematiksel modellerden faydalanmak üzere istatistik ve yönetim bilimi yazılımlarını birleştirir.
Planlama, programlama, koordinasyon ve organizasyon: Finansal planlama, bütçe, masraf ve satış raporları hazırlama, toplantı gündemlerinin hazırlanması ve randevuların ayarlanması gibi işler “masa üstü düzenleyici”de denilen özel uygulama yazılımları ile yapılır.
Ayrıca “akıllı binalar”, “Hastane Otomasyon Sistemleri” ve proje yönetimi yazılımları da vardır.
İletişim : İletişim programları, bilgisayar ağları arasında iletişim kurulmasına imkan veren yazılımlardır. Günümüzde yaygın bir şekilde kullanılan İnternet hizmetlerinden yararlanmak için geliştirilmiş olan her türlü program iletişim programları içerisinde düşünülebilir.
Eğitim : Bilgisayarlar eğitimde her geçen gün gittikçe artan bir oranda kullanılmaktadır. Bugün piyasada olan programların çoğu öğreticileriyle birliktedir, yani program içindeki yardım menüsünde programın kullanım bilgileri bulunmaktadır. Ansiklopedik bilgiler içeren, belli bir yer veya konuda hazırlanmış olan tanıtıcı programlar, yabancı dil veya herhangi bir dersle ilgili olarak yardımcı olmak üzere hazırlanmış, internette online veya asenkron eğitim için hazırlanmış programlar eğitim amaçlı programlardır.
Sistem Yazılımları
Uygulama yazılımları ile bilgisayar donanımı arasında aracılık eden yani bilgisayar sisteminin pürüzsüz bir şekilde çalışmasını sağlayan yazılımlardır. Bu kısımda İşletim Sistemi (Operating System) ve Hizmet (Utility) yazılımları kısaca incelenecektir
Hizmet Yazılımları
Hizmet (Utility) yazılımları, genel sistem destek işlemlerini yapmak için kullanılan programlardır. Diskleri biçimlendirmek, dosyaları kopyalamak, disklerdeki programları yedeklemek, dosya sıkıştırma, dosya transfer(ftp), klavye düzenleme, disk yüzeyini düzenleme(fdisk, partition magic), virüs temizleme gibi işlemleri yaparlar. Çoğu işletim sistemi hizmet yazılımlarının yaptığı işlerin çoğunu yapmaktadır. Fakat bazı durumlarda hizmet yazılımları ayrı bir paket olarak daha güçlü özelliklerle üretilmektedir.
Zararlı Yazılımlar
Buraya kadar anlattığımız faydalı yazılımların yanı sıra, faydalı yazılımlara zarar veren yada kullanıcı dosyaları üzerinde tahribat yapan zararlı yazılımlar da vardır. Bu yazılımlara genel bir ifadeyle zararlı yazılımlar yada “bilgisayar virüsleri” denir. Bilgisayar virüsleri kendi kendilerini çoğaltabilen, bir bilgisayardan diğerine yayılabilen ve çoğu kez bilgisayar sistemlerine kasten zarar vermek için yazılmış programlardır.
Bir bilgisayar virüsünün üç temel karakteristiği vardır:
1.Kendi kendini çoğaltma mekanizması, aşağıdaki fonksiyonları yapar;
· Enfekte etmek için diğer programları arar,
· Bir program bulduğu zaman, daha önce enfekte edilip edilmediğini tespit eder,
· Gizli talimatları program içerisinde bir yere ekler,
· Programın veya dosyanın enfekte edildiğini gösteren bir işaret ekler. İşaret (flag) gerekli olabilir. Aksi takdirde işaret olmadan programlar tekrar tekrar enfekte edilir veya çok anormal şekilde büyüyebilir.
Kendi kendini çoğaltma mekanizması dosyaların enfekte edildiğinin gizlenmesine yardım edecek olan diğer bazı fonksiyonları da icra eder. Mesela dosyaların üzerinde değişiklik yapıldığı son tarihi tekrar eski değerine ayarlayabilir.
2.Aktivasyon mekanizması, bazı olayların ortaya çıkmasını kontrol eden bir mekanizmadır. Olay vuku bulduğu zaman virüs amacını yerine getirir. Eğer aktivasyon mekanizması amacını icra etmeden önce belli bir tarihin veya zamanın gelmesini kontrol ediyorsa, ona zaman bombası (time bomb) denir. Bir programın önceden tespit edilmiş bir sayıda icra edilmesi gibi belli bir faaliyeti beklerse, buna da mantık bombası (logic bomb) denir. Bunun birçok varyasyonu olabileceği gibi, herhangi bir programın ilk defa icra edilmesiyle de aktivasyon mekanizmasının devreye girmesi söz konusu olabilir.
3.Amaç, genellikle istenmeyen ve tahrip edici bazı olayların meydana getirilmesidir. Bugüne kadar yaşanan olaylarda virüsler taşıdıkları amaçlarda farklılıklar göstermişlerdir. Bazen ekranda ortaya çıkan sinir bozucu fakat zararsız mesajlar, bazen dosyaların ve programların silinmesi veya değiştirilmesi ve bazen de sistem donanımının farklı bir şekilde davranmasına sebep olunması şeklinde ortaya çıkmışlardır. Bazen virüsün sebep olduğu zarar tüm sistem yazılımlarının ve verilerin yeniden yüklenmesini gerektirir.
Bir truva atı virüs programı gerçekte bilgisayara veya sisteme zarar vermek amacında olmasına rağmen faydalı bir fonksiyon icra ediyormuş gibi görünen bir programdır. Bir truva atının yazarı ya faydalı gibi görünen bir program yazar yada diğer kullanıcılara cazip görünen faydalı bir programın kaynak koduna erişim kazanıp faydalı fonksiyonun yanı sıra zararlı bazı fonksiyonlar da yerine getiren bir kod ekleyerek amacına ulaşır.
Ağ solucanı denilen virüs programları ise sistemden sisteme yayılmak için ağ bağlantılarını kullanırlar.