Rabu, 28 Oktober 2009

Windows API

Application Program Interface (API)
Antarmuka
Pengertian antarmuka ( interface) adalah salah satu layanan yang disediakan sistem operasi sebagai sarana interaksi antara pengguna dengan sistem operasi. Antarmuka adalah komponen sistem operasi yang bersentuhan langsung dengan pengguna. Terdapat dua jenis antarmuka, yaitu Command Line Interface(CLI) dan Graphical User Interface(GUI).
Command Line Interface(CLI)
CLI adalah tipe antarmuka dimana pengguna berinteraksi dengan sistem operasi melalui text-terminal. Pengguna menjalankan perintah dan program di sistem operasi tersebut dengan cara mengetikkan baris-baris tertentu.
Meskipun konsepnya sama, tiap-tiap sistem operasi memiliki nama atau istilah yang berbeda untuk CLI-nya. UNIX memberi nama CLI-nya sebagai bash, ash, ksh, dan lain sebagainya. Microsoft Disk Operating System (MS-DOS) memberi nama command.com atau Command Prompt. Sedangkan pada Windows Vista, Microsoft menamakannya PowerShell. Pengguna Linux mengenal CLI pada Linux sebagai terminal, sedangkan pada Apple namanya adalah commandshell.
Graphical User Interface(GUI)
GUI adalah tipe antarmuka yang digunakan oleh pengguna untuk berinteraksi dengan sistem operasi melalui gambar-gambar grafik, ikon, menu, dan menggunakan perangkat penunjuk ( pointing device) seperti mouse atau track ball. Elemen-elemen utama dari GUI bisa diringkas dalam konsep WIMP ( window, icon, menu, pointing device).

Gambar 6.1. Contoh GUI
Pengguna komputer yang awam seringkali menilai sebuah sistem operasi dari GUI-nya. Sebuah sistem operasi dianggap bagus jika tampilan luarnya (GUI-nya) bagus. Padahal, seperti telah dijelaskan sebelumnya, komponen sistem operasi tidak hanya GUI, sehingga penilaian terhadap sebuah sistem operasi tidak bisa hanya dari satu komponen saja. Karena GUI adalah kesan pertama pengguna dengan sistem operasi itu, setiap pengembang sistem operasi berlomba-lomba mengembangkan GUI-nya dengan keunggulannya masing-masing.
Sejarah mencatat bahwa Xerox PARC (Palo Alto Research Center) yang pertama kali meriset tentang GUI. Pada tahun 1984, Apple merilis Macintosh yang menggunakan GUI hasil riset Xerox PARC. Beberapa tahun kemudian, Microsoft merilis sistem operasi Windows-nya yang juga menggunakan GUI. Apple mengklaim bahwa Microsoft mencuri ide dari Apple.
Seperti halnya CLI, tiap-tiap sistem operasi juga memiliki nama tersendiri untuk komponen GUI-nya. Pada Apple Mac OS X, GUI-nya disebutAqua. Microsoft memberi nama GUI Windows XP sebagai Lunar dan GUI Windows Vista sebagai Aero. Pada Linux, ada dua pengembang utama desktop environment pada Linux, yang masing-masing menghasilkan produk KDE (K Desktop Environment) dan GNOME. KDE digunakan pada beberapa distro seperti SuSE dan Mandrake, sedangkan GNOME dipakai pada beberapa distro seperti Fedora Core dan Ubuntu.
System Calls
Komputer digunakan untuk melakukan suatu proses yang dikehendaki user. Oleh karena itu harus ada suatu bentuk komunikasi antara user dan hardware. Komunikasi itu terjadi dalam bentuk system calls. SO melalui shell-nya akan menangkap perintah dari user yang kemudian akan dikomunikasikan melalui system calls. Disinilah peran SO sebagai jembatan komunikasi antara user dan hardware itu terjadi. System calls itu sendiri umumnya ditulis dalam bahasa C dan C++.
Mengenai shell, shell itu sendiri secara umum adalah layer yang berfungsi sebagai interface antara user dan inti dalam sistem operasi (kernel). Melalui shell, user dapat memberi perintah-perintah yang akan dikirim ke sistem operasi, sehingga shell ini merupakan layer yang menerima interaksi dari user secara langsung. Shell dalam SO secara umum dibagi menjadi 2, Command Line(CLI) dan Graphical(GUI). Jadi dengan kata lain, system calls berperan sebagai interface dalam layanan-layanan yang disediakan oleh sistem operasi.
Untuk lebih jelasnya lihat gambar berikut. Contoh di atas adalah sytem calls di dalam program yang membaca data dari satu file lalu meng- copy-nya ke file lain.

Gambar 6.2. Contoh System Call

API (Application Program Interface)
Dalam contoh program sederhana di atas, dibutuhkan setidaknya ribuan system calls per detik. Oleh karena itu Kebanyakan programmer membuat aplikasi dengan menggunakan Application Programming Interface(API). Dalam API itu terdapat fungsi-fungsi/perintah-perintah untuk menggantikan bahasa yang digunakan dalam system calls dengan bahasa yang lebih terstruktur dan mudah dimengerti oleh programmer. Fungsi yang dibuat dengan menggunakan API tersebut kemudian akan memanggil system calls sesuai dengan sistem operasinya. Tidak tertutup kemungkinan nama dari system calls sama dengan nama di API.
Keuntungan memprogram dengan menggunakan API adalah:
Portabilitas. Programmer yang menggunakan API dapat menjalankan programnya dalam sistem operasi mana saja asalkan sudah ter- install API tersebut. Sedangkan system call berbeda antar sistem operasi, dengan catatan dalam implementasinya mungkin saja berbeda.
Lebih Mudah Dimengerti. API menggunakan bahasa yang lebih terstruktur dan mudah dimengerti daripada bahasa system call. Hal ini sangat penting dalam hal editing dan pengembangan.
System call interface ini berfungsi sebagai penghubung antara API dan system call yang dimengerti oleh sistem operasi. System call interface ini akan menerjemahkan perintah dalam API dan kemudian akan memanggil system calls yang diperlukan.
Untuk membuka suatu file tersebut user menggunakan program yang telah dibuat dengan menggunakan bantuan API, maka perintah dari user tersebut diterjemahkan dulu oleh program menjadi perintah open(). Perintah open() ini merupakan perintah dari API dan bukan perintah yang langsung dimengerti oleh kernel sistem operasi. Oleh karena itu, agar keinginan user dapat dimengerti oleh sistem operasi, maka perintah open() tadi diterjemahkan ke dalam bentuk system call oleh system call interface. Implementasi perintah open() tadi bisa bermacam-macam tergantung dari sistem operasi yang kita gunakan.

Windows Aplication Programing Interface
Windows ApI adalah sekumpulan antar muka pemrograman aplikasi yang dibuat oleh Microsoft dalam hal inti sistem operasi Microsoft Windows. Akses terhadap elemen sistem operasi yang lebih rendah, seperti halnya yang dibutuhkan oleh devise driver. Tidak disediakan oleh windows API. Tapi disediakan oleh Windows Driver Foundation atau Native API dalam versi-versi baru Windows baru, Microsoft sering merilis Software Development Kit (SDK), yang terdiri dari dokumentasi dan alat bantu untuk membangun aplikasi-aplikasi windows dengan teknologi terbaru Mocrosoft Windows.

Versi-versi Windows API
1. Win16 API
Windoows 16 API atau winb16 API merupakan API yang digunakan pertama kali pada versi Windows 16-bit. Pada awalnya win16 API disebut dengan windows API, tapi kemudian diubah menjadi win16 dalam usaha Microsoft untuk membedakannya dengan versi windows API yang lebih baru yang berjalan pada windows 32-bit dan win32 API. Meskipun memiliki eksistensi EXE sebenarnya win16 bukan bekas yang dapat dieksekusi melainkan adalah DLL (Dynamic Linking Library)
2. Win32 API
Merupakan antarmuka pemrograman terdapat di dalam sistem operasi windows 32-bit modern, yang antara lain memiliki kernel32.dll, user32.dll dan gdi32.dll.
Windows API-32bit
Windows API (Application Programming Interface) merupakan sekumpulan fungsi-fungsi eksternal yang terdapat dalam file-file perpustakaan Windows (disebut library Windows) atau file library lainnya yang dapat digunakan oleh program. Fungsi ini dapat menangani semua yang berhubungan dengan Windows, seperti pengaksesan disk, interface printer, grafik Windows, kotak dialog (buka file, simpan file, memilih font, memilih warna, dan lain-lain), Windows shell, setting sistem operasi , penanganan file, mengakses sistem registry, memainkan musik, dan sebagainya.
Fungsi menyediakan banyak fitur-fitur standar untuk semua program yang berbasis Windows. Semua fungsi Windows API hampir terdapat dalam direktori sistem milik Windows
(biasanya terdapat dalam direktori C:\Windows\System32 (untuk OS Windows XP), C:\WindowsNT\ System32 (untuk OS Windows NT/2000), dan paling banyak berekstensi DLL yang digunakan oleh sistem operasi Windows. Selain fungsi ini juga memastikan secara konsisten penggunaan semua sumber yang terdapat dalam Windows. File-file itulah yang disebut dengan Windows API. Karena fungsi Windows API merupakan fungsi eksternal, maka untuk menggunakan fungsi tersebut terlebih dahulu dideklarasikan dengan perintah Declare di dalam kode program (pembahasan printah Declare akan dijelaskan nanti dibagian “Mendeklarasikan Fungsi Windows API”). Setelah pendeklarasian fungsi selesai dilakukan, selanjutnya untuk menggunakan fungsi tersebut layaknya Visual Basic di dalam program.

3. Win32sAPI
Merupakan sebuah ekstensi untuk keluargha windows 3.1x yang mengimplementasi kan sekumpulan kecil dari win32 API untuk sistem-sistem tersebut, yang merupakan sistem operasi 16-bit. Huruf “s” merupakan singkatan dari subset.
4. Win32 for 64-bit Windows
Merupakan sebuah versi windows API yang ditargetkan untuk digunakan oleh windows versi64-bit yaitu XP, Profesional dan Server 2003


Berdasarkan Uraian diatas maka dengan adanya WIN API akan memudahkan kita dalam :
1. Membuat user interface baru
2. Membuat jembatan antar aplikasi (misalnya dari MS office ke VB, Delphi atau program lain)
3. Memudahkan kita dalam membuat beberapa tampilan aplikasi kita window seolah seperti bekerja secara bersamaan. Misalnya dari Program Words ke musik, games atau ke film ataupun ke program aplikasi lainya.

Sumber : 1. WINS Api Tutorial
2. Junaidi. Rekayasa Multi Dekstop Windows. IlmuKomputer.com
3. Hermanto Sudarmawan, 2007. Seminar Nasional Teknologi. Yogyakarta

Tidak ada komentar:

Posting Komentar