Windows API

Durum
Üzgünüz bu konu cevaplar için kapatılmıştır...
Uzman Üye
Katılım
8 May 2022
Mesajlar
210
Çözümler
1
Tepki puanı
15
Ödüller
2
4 HİZMET YILI
MH.PNG



ara çizgi.png



Merhabalar bugün sizlere Windows'ta sıkça ismini duyduğumuz programlama dillerinde kullanılan Windows API'den kısaca bahsetmek istedim.

İçindekiler;
- Özellikler
- Yapı Taşlarının Açıklanması
- Önemi
- Temel Kavramlar



15258692.png


Windows API (Application Programming Interface), Microsoft’un Windows işletim sistemi için üzerinde çalışıp geliştirdiği yazılım kütüphaneleri bütünü. Geliştiricilerin veya kullanıcıların, Windows işletim sistemi üzerinde çalışan uygulamalar oluşturabilmesi için kullandıkları bir fonksiyonlar bütünüdür.


12088204.png
Kısaca Windows API Özelliklerinden Bahsedelim:
12088204.png

İlk olarak API bize işletim sistemi entegrasyonu ile karşımıza çıkar. Windows API, işletim sisteminin çekirdek bileşenleri ve işlevlerini kullanılabilir olmasını sağlar. Bu sayede geliştiriciler ve kullanıcılar, dosya işlemleri, ağ bağlantıları gibi diğer sistem kaynaklarına erişebilirler. Bunun haricinde Windows API bize işletim sistemi üzerinde istediğimiz dilde kod yazabilme olanağı sunar. Mesela Python, Visual Basic .NET, C++ vb.

Her Windows sürümü için standart olduğundan dolayı kullanıcılar farklı Windows sürümlerinde API’yi kullanmak istedikleri zaman sıkıntı yaşamazlar. Windows API’mız bu seçeneklerle de kalmayarak içerisinde bulundurmuş olduğu esneklik ve genişletilebilirlik özelliği sayesinde sürüm güncellemeleri ile yeteneklerini genişletebilir ve yeni Windows bileşenlerini içerisine dahil edebilir. İçerisinde bu kadar özellik bulunmasına rağmen kullanıcıyı ve sistemi yormayarak iyi bir performans optimizasyonu özelliği taşır.

Kullanıcı ve geliştiriciler Windows API sayesinde kullanmış oldukları bilgisayar üzerinde işletim sistemi özelliklerine erişme, ağ iletişimi sağlama, kullanıcı ara yüzü oluşturma, BIOS bilgilerine erişme gibi pek çok işlem yapabilirler. Yapılan bu tarz işlemler, işletim sistemi üzerinde bulunan uygulamaların geliştirilmesine katkı sağlar.


2890578-artificialintelligence4_101959.png
Şimdiyse Windows API’mızı oluşturan temel yapı taşlarını inceleyeceğiz;
2890578-artificialintelligence4_101959.png


RAM(Bellek) Yönetimi: Windows API içerisinde bellek yönetimi için fonksiyonlar barındırır. Uygulamaların bu fonksiyonlar ile belleği doğru şekilde ayırır ve serbest bırakır.

Hata İşleme: Windows API içerisinde bulunan fonksiyonlar ile işletim sistemi üzerinde gerçekleşen belirli hata durumlarında hata kodları meydana gelir. Geliştirici ve kullanıcıların oluşan hata kodlarını okuyup işlemesi gerekir.

Olay Yönetimi: Windows API içerisinde bulunan fonksiyonların birçoğu olay tabanlı çalışır. Bundan dolayı uygulamalar gerçekleşen olayları yakalamalı ve işlemelidir.

DLL (Dinamik Link Kütüphanesi): Windows API’nın olmazsa olmazı diyebiliriz. Çünkü bu fonksiyonlar herhangi bir uygulama içerisinde çağrılırken DLL kullanma yoluna başvurulur. Fonksiyonlar DLL içerisinde tanımlanır.

Programlama Modelleri: Geliştiriciler ve kullanıcılar Windows API fonksiyonlarını kullanmak istediğinde herhangi bir programlama modeli seçmesi gerekir. Mesela .NET, Win32

Veri Tipleri: Windows API içerisinde bulunan fonksiyonlar C dilinde yer alan veri tiplerini kullanır. Eğer API’ yi kullanmak istiyorsak bu fonksiyonları bilmemiz gerekir.

Fonksiyon Çağrıları: Windows API fonksiyonlarını kullanmak isteyen geliştirici veya kullanıcılar kullanmış oldukları programlama dillerinde fonksiyon çağrı yöntemini kullanır. Örnek, (
Bağlantıları görmek için lütfen Giriş Yap
) Çağırma esnasında dönen hata kodları, parametreler geliştirici veya kullanıcı için API’ yi yönlendirmesi açısından önemlidir.

Güvenlik ve Yetkilendirme: Windows API içerisinde bulunan fonksiyonlarda erişim izni veya yetki sınırlaması bulunmaktadır. Bu API’ yi kullanmak isteyen fonksiyonlar gerekli yetki veya erişim iznini alması gerekir.

Peki nedir API’nin kullanımının önemi? Neden kullanmalıyız?
2353677.png


Yukarıda yer alan özellikleri arasında da bahsettiğimiz üzere standart olması, performans, işletim sistemi entegrasyonu, genişletilebiliyor olması haricinde Windows API Windows işletim sisteminin dünya üzerinde kullanımının çok olması nedeniyle büyük bir veri bankası birikimi olması ve içerisinde sunduğu güvenlik yetki sınırlaması işlevleri ile uygulamalar doğru, güvenilir şekilde kullanılabilir veya yönlendirilebilir.

Protect-icon.png
Windows API Geliştirme Üzerinde Temel Kavramlar:
Protect-icon.png


Windows Handle: Hand kelimesi bildiğimiz üzere el demektir. API içerisinde de birden fazla el bulunmaktadır. Ellerimizden bazılarına örnek verecek olursak pencere (HWND), dosya, süreç gibi çeşitli ellerimiz mevcut.

Pencere Prosedürleri (WndProc): Windows’ta her pencere için bir pencere prosedürü diye adlandırılan bir deyim vardır. Pencere prosedürü pencereye gönderilen mesajları alır işler ve dönen yanıta uygun cevaplar üretir. Bu prosedürler kullanıcıyı veya geliştiriciyi yönlendirmek amacı ile kullanılabilir mesela şuraya bas buraya tıkla gibi…

Windows Mesaj Döngüsü: Grafiksel kullanıcı arayüzü işlemlerinde var olan donanım ile iletişim sağlamak amacıyla kullanılır. Mesela USB girişi, fare tıklatması, klavye tuşu basılması gibi…

Konu harici Zararlı Yazılım Analizi kavramında da Windows API genel anlamda kullanılmaktadır. Çünkü zararlı yazılımlar dosya ve klasör işlemlerini sıkça kullanırlar ve API’nın içerisinde bulunan fonksiyonlardan faydalanmaktadırlar. İnceleme yaparsanız fonksiyonlar içerisinde “CreateProcessW”, “CreateFile”, “WriteFile” gibi ibareler görürseniz mutlaka nerelerde ne yaptığına bakın derim.

ara çizgi.png


Okuduğunuz için teşekkür ederim. İnşallah demek istediğimi anlatabilmişimdir.İyi forumlar dilerim.



 
Durum
Üzgünüz bu konu cevaplar için kapatılmıştır...
Üst