Senin, 17 Oktober 2011

Shell, System Calls, Command Interpreter, n API

Shell

Shell adalah penerjemah pada system UNIX / LINUX. Perangkat lunak
inilah yang menjadi jembatan antara pemakai dan system UNIX / LINUX.
Pemakai cukup memberikan perintah dan shell yang akan menanganinya.
Perintah sendiri dapat berupa :
• Perintah built-in
Perintah yang merupakan bagian internal dari shell
• Perintah eksternal
Perintah yang bukan bagian internal dari shell (dapat berupa
utilitas atau program aplikasi)

System Calls

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);
Tiga 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.
  • Push (store) melalui "stack" pada memori dan OS mengambilnya melalui pop pada stack tsb.  

    Command Interpreter

    Sistem operasi menunggu instruksi dari pengguna (command driven).
    Program yang membaca instruksi dan mengartikan control statements (keinginan pengguna) umumnya disebut:
    • control-card interpreter
    • command-line interpreter
    • UNIX shell.
    API
    API adalah suatu pengaturan kode (script) program yang berfungsi menyatukan software serta aplikasi lain dalam suatu sistem sehingga semua software dapat berjalan dan berkomunikasi antara satu dengan lainnya, prinsip kerja hampir sama dengan shell yang menghubungkan user dengan sistem komputer.
         API berfungsi pada aplikasi, library, sistem operasi dll. sebagai cara untuk mendefinisikan berbagai perangkat lunak tersebut. baik untuk konvensi  dan meminta resourcenya, hal ini termasuk spesifikasi untuk rutinitas, struktur data, kelas objek, serta protokol yang diimplementasikan untuk berkomunikasi.
    Konsep API :
    -umum: set lengkap API yang dibundel di perpustakaan sebuah bahasa pemrograman, misalnya Template Library Standar dalam C + + atau Java API.
    -spesifik: dimaksudkan untuk mengatasi masalah yang spesifik, misalnya Google Maps API atau Java API untuk XML Web Services.
    -tergantung pada bahasa: berarti hanya tersedia dengan menggunakan sintaks dan elemen dari suatu bahasa tertentu, yang membuat API lebih nyaman untuk digunakan.
    -bahasa-independen yang ditulis sehingga dapat dipanggil dari beberapa bahasa pemrograman: Ini merupakan fitur yang diinginkan untuk berorientasi dan tidak terikat dengan proses tertentu atau sistem dan dapat diberikan sebagai prosedur panggilan jarak jauh atau layanan web.


     

Tidak ada komentar:

Posting Komentar