Selasa, 18 Oktober 2011

Shell, System Call, Command Interpreter dan Application Programming Interface



1.    SHELL
Shell merupakan program user atau lingkungan yg disediakan untuk interasksi user. Shell merupakan penerjemah bahasa perintah yg menerima input standar (keyboard) dari suatu file. Shell menggunakan kernel untuk menjalankan program, membuat file dan sebagainya. Oleh karena itu shell bukan bagian dari kernel.
Shell Script memiliki kemampuan untuk mengambil input dari user, file dan menampilkan hasilnya pada layar.
a.      Berguna untuk membuat perintah sendiri.
b.      Untuk mengotomatisasi beberapa tugas sehari-hari.
c.       Menghemat banyak waktu.

2.    SYSTEM CALL
System call menyediakan interface antara program (program pengguna yang berjalan) dan bagian OS. System call menjadi jembatan antara proses dan sistem operasi. System call ditulis dalam bahasa assembly atau bahasa tingkat tinggi yang dapat mengendalikan mesin (C). Contoh: UNIX menyediakan system call: read, write => operasi I/O untuk berkas.
Sering pengguna program harus memberikan data (parameter) ke OS yang akan dipanggil. Contoh pada UNIX: read(buffer, max_size, file_id);
Beberapa cara memberikan parameter dari program ke sistem operasi:
  • Melalui registers (sumber daya di CPU).
  • Menyimpan parameter pada data struktur (table) di memori, dan alamat table tsb ditunjuk oleh pointer yang disimpan di register
3.    Command Interpreter System
Merupakan sistem operasi yg menunggu intruksi dari pengguna (command driven). Program yg membaca intruksi dan mengartikan control statement umumnya disebut control-card interpreter, command-line interpreter dan UNIX Shell. Command System Interpreter sangat bervariasi dari satu sistem operasi ke sistem operasi yg lain dan disesuaikan dengan tujuan dan teknolgi I/O devices yg ada. Contohnya seperti Windows, Pen-Bassed (touch), CLI dan lain lain.



4.    API (Application Program Interface)
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 seorang programmer. Fungsi yang dibuat dengan menggunakan API tersebut kemudian akan memanggil system calls sesuai dengan sistem operasinya.
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.




1 komentar: