Selasa, 23 Oktober 2012

Pada postingan kali ini saya akan menjelaskan mengenai Shell, System Call, Command Interpreter, dan API (Aplication Programing Interface) mulai dari fungsi, struktur, dan posisi dalam operating sistem. Baiklah, berikut ini penjelasannya, cekidot ^_^

1. Shell
Shell dalam komputer adalah salah satu jenis bawaan program sistem operasi (seringnya merupakan program yang terpisah dari inti sistem operasi) yang menyediakan/menjembatani langsung antara pengguna (user) dan sistem operasi. Contoh dari shell adalah COMMAND.COM dalam MS-DOS, Macintosh Finder (Macintosh), Windows Explorer, Command Prompt/cmd.exe, Power Shell dalam Microsoft Windows, Bourne Shell, C Shell, Korn Shell, dan masih banyak lainnya khususnya dalam keluarga sistem operasi UNIX. Beberapa Shell juga dapat digunakan untuk melakukan manajemen berkas. Proses awal dari Shell: User-->Shell-->Sistem Operasi (Kernel)--> Output yang dihasilkan dari Kernel.

2. System Call
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 call. SO melalui shell-nya akan menangkap perintah dari user yang kemudian akan dikomunikasikan melalui system call. Disinilah peran SO sebagai jembatan komunikasi antara user dan hardware terjadi. System call 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, Comand Line dan Graphical(GUI). Jadi dengan kata lain, system call berperan sebagai interface dalam layanan-layanan yang disediakan oleh sistem operasi. Untuk lebih jelasnya lihat gambar berikut. 
Contoh di atas adalah system call di dalam program yang membaca data dari satu filr lalu meng-copy-nya ke file lain.

3. Command Interpreter
Command Interpreter, bertugas untuk membaca input berupa perintah dan menyediakan beberapa fungsi standar dan fungsi dasar yang dapat dipanggil oleh aplikasi/program maupub piranti lunak lain. Contoh dari Shell adalah : Command Prompt pada Windows XP (DOS pada Windows 98), XTerm dan Konsole di Mesin Linux (Unix).
4. API (Aplication Programing Interface)
Kebanyakan programmer membuat aplikasi dengan menggunakan Aplication Programing 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 call sesuai dengan sistem operasinya. Tidak tertutup kemungkinan nama dari system call 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- instal 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 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 call 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.

0 komentar:

Posting Komentar