Yazılım Kavramı

DersHub
4 min readJan 1, 2020

--

Bilgisayarlar sıradan bir insanın veya makinenin yapabileceği çeşitli işlemleri hızlı bir şekilde yapabilen elektronik cihazlardır. Bu işlemi gerçekleştirmemizi sağlayan fiziksel ve somut materyallere donanım; bu donanımlara komutlarla ne yapacağını söyleyen birime ise yazılım denir.

Yazılım, bilgisayar sistemini yönetmek ve donanım bileşenlerini işlemek için programlar şeklindeki komutlar grubudur diyebiliriz. Örnek vermek gerekirse:

  • Bilgisayarımızı virüslerden korumak için kullandığımız antivirüs uygulamaları bir yazılımdır.
  • Müzik veya video oynatmak için kullandığımız medya uygulamaları birer yazılımdır.
  • Dosyaları düzenlemek için kullandığımız Microsoft Office uygulamaları birer yazılımdır.

Kullanıldığı yere ve amacına göre yazılımı 3 ana dala ayırabiliriz :

Sistem Yazılımları

Bunlar kullanıcının bir bilgisayar sistemindeki donanımlarla doğrudan etkileşime girmesine izin verir. İnsanlar ve makinalar farklı dilleri kullandıkça kullanıcıların, bilgisayarın çekirdek sistemi ile etkileşime geçebilmesi için bir arayüz olmalıdır. Bu arayüzü de yazılım sağlamaktadır. Sistem yazılımı bir bilgisayarın donanımının çalıştırılmasını büyük oranda kapsadığı için ana yazılım olarak adlandırılır. Sistem yazılımı da 4 ana dalda incelenebilir :

1. The Operating System (İşletim Sistemi)

Bir bilgisayar sisteminin bileşenleri arasındaki işbirliğini koruyan ve yöneten ana programdır.

2. The Language Processor (Dil İşlemci)

Donanım bileşenleri insan dillerini anlamaz. Bu yüzden insanlar ile donanımlar arası etkileşimde kullanılan 3 tür dil vardır.

  • Machine-Level Language (Makine- Seviye Dili):

Makineler yalnızca 0 ve 1' den oluşan ikili dijital sinyalleri, kodları veya ikili dilleri anlar. Bunlar tamamen makineye bağlı dillerdir.

  • Assembly-Level Language (Montaj- Seviye Dili) :

Bunlar makine seviyesi talimatları ile montaj seviyesi talimatları arasında bir yazışma oluşturan düşük seviye bir dildir. Montaj dili op kodları olarak da adlandırılan her düşük seviye makine talimatını veya işlem kodunu ulaştırmak için bir anımsatıcı kullanır. Örneğin ADD komutu iki öğe eklemek için kullanılır HALT komutu ise işlemi durdurmak için kullanılır. Makineye bağlı bir dildir işlemciden işlemciye değişir.

  • High-Level Language (Yüksek- Seviye Dili) :

Bunlar okunması ve anlaşılması kolay olduğu için insanlar tarafından kodlama ve programlama için kullanılan basit ingilizce ifadelerdir. Örneğin: Java, C++, Python …

Makine seviye dili anlaşılması ve kodlaması çok karmaşık olan bir dildir. Bu yüzden kullanıcılar kodlama için Yüksek Seviye Dili kullanırlar. Bu nedenle yüksek seviye dille yazılmış kodların bilgisayar tarafından anlaşılması ve işlenmesi için bu kodların makine seviye diline dönüşmesi gerekir. Bu işlem dil işlemcisinin diğer üç bileşeni tarafından gerçekleştirilir :

  • Assembler(Montajcı): Bu dil işlemci, montaj dilini makine diline dönüştürmek için kullanılır.
  • Compiler(Derleyici): Bu dil işlemci, üst seviye bir dili tek seferde makine diline dönüştürmede kullanılır, bu nedenle çok hızlıdır. Bu dil işlemcisinde hata tespiti zordur. C, C++ ve Scala gibi diller bu dil işlemcisini kullanır.
  • Interpreter(Yorumlayıcı): Bu dil işlemci, üst seviye bir dili satır satır makine diline dönüştürür, bu nedenle yavaştır. Yorumlayıcı işlemcisinde hata yakalamak daha kolaydır. hatayı yakaladığında işlemi yeniden başlatır. Bu nedenle gereksiz bellek tüketir. Python, Java ve Ruby gibi diller bu dil işlemcisini kullanır.

3. Device Drivers (Aygıt Sürücüleri) :

Çeşitli giriş-çıkış aygıtı ile kullanıcılar veya işletim sistemi arasında arabirim görevi gören aygıt sürücüleri, programları veya sistem yazılımlarıdır. Örneğin web kamera ve yazıcı gibi aygıtların sistemde çalışması için sisteme kurulması gereken bir sürücüyle beraber gelir.

4.The BIOS :

Temel giriş-çıkış sistemi anlamına gelir ve sisteme bağlı çevre birimini veya giriş-çıkış aygıtlarını kontrol eden küçük bir donanım yazılımdır. Bu yazılım aynı zamanda işletim sisteminin başlatılmasından veya önyükleme işleminin başlatılmasından da sorumludur.

3.Application Software (Uygulama Yazılımı)

Bunlar belirli görevleri gerçekleştirmek için kullanılan temel düzey yazılımlardır. Bunlar iki çeşittir :

1.Genel Amaçlı Uygulama Yazılımı :

Bunlar, yerleşik veya kullanıma hazır olarak gelen, bazı şirketler veya bazı geliştirici grupları tarafından üretilen uygulama yazılımlarıdır. Örneğin:

  • Microsoft Excel -excel sayfaları hazırlamak için kullanılır.
  • VLC Media Player-video ve ses dosyalarını oynatmak için kullanılır.
  • Adobe Photoshop -tasarlama animasyon ve daha birçok işlem yapmak için kullanılır.

2.Özel Amaçlı Uygulama Yazılımı:

Bunlar, özelleştirilebilir ve çoğunlukla gerçek zamanlı veya iş ortamında kullanılan yazılım türüdür. Örneğin:

  • Bilet Rezervasyon Sistemi
  • Sağlık Yönetim Sistemi
  • Otel Yönetim Sistemi
  • Bordro Yönetim Sistemi

4.Utility Software (Yardımcı Yazılım)

Bunlar, kullanıcıya ve sisteme yüksek fayda sağlayan en temel yazılım türüdür. Örneğin:

  • Antivirus yazılımları: Bilgisayarınızın kötü amaçlı yazılım ve virüslerden korunmasını sağlar. Örnek: QuickHeal, McAfee …
  • Disk Birleştirici Araçları (Disk Defragmenter Tools): Kullanıcıların diskin bozuk yerlerini analiz etmelerine ve dosyaları uygun bir sırada yeniden düzenlemelerine yardımcı olur.
  • Metin Editörleri (Text-editors): Kullanıcıların düzenli notlar almasına ve temel metin dosyaları oluşturmasına yardımcı olur. Örneğin : Notepad, Gedit …

Bu yazıda yazılım kavramlarına temel düzeyde bir giriş yaptık. Okuduğunuz için teşekkürler

Orijinal makaleye buradan ulaşabilirsiniz: Software Concepts

--

--