Definisi Shell
Shell merupakan
program user atau lingkungan yang disediakan untuk interaksi user.
Shell merupakan penerjemah bahasa perintah yang menerima input standar
(keyboard) atau dari suatu file. Shell bukanlah bagian dari kernel,
tetapi ia menggunakan kernel untuk menjalankan program, membuat file,
dan sebagainya.
Shell script memiliki kemampuan untuk mengambil input dari user, file dan menampilkan hasilnya pada layar.
a. Berguna untuk membuat perintah anda sendiri.
b. Menghemat banyak waktu.
c. Untuk mengotomatisasi beberapa tugas sehari-hari.
d. Administrasi sistem juga dapat diotomatisasi.
antara program yang sedang berjalan dengan sistem opeasi yaitu :
• Melewatkan parameter melalui register.
• Menyimpan parameter pada tabel yang disimpan di memori dan alamat tabel
tersebut dilewatkan sebagai parameter di register seperti Gambar-1.
• Push (menyimpan) parameter ke stack oleh program dan pop (mengambil) isi
stack yang dilakukan oleh system operasi.
Command-Interpreter System
Sistem
Operasi menunggu instruksi dari pengguna (command driven). Program yang
membaca instruksi dan mengartikan control statements umumnya disebut:
control-card interpreter, command-line interpreter, dan UNIX shell.
Command-Interpreter System sangat bervariasi dari satu sistem operasi ke
sistem operasi yang lain dan disesuaikan dengan tujuan dan teknologi
I/O devices yang ada. Contohnya: CLI, Windows, Pen-based (touch), dan
lain-lain.
Command Interpreter
pada perancangan dan struktur system operasi berfungsi untuk
menterjemahkan instruksi dan perintah yang diberikan oleh pengguna agar
sesuai dengan lapisan dibawahnya yang nantinya dapat menggerakkan
perangkat keras.
Sistem Command Intepreter
Beberapa perintah yang dimasukkan ke sistem operasi menggunakan
pernyataan kontrol yang digunakan untuk
• Manajemen dan pembuatan proses
• Penangananan I/O
• Manajemen penyimpan sekunder
• Manajemen memori utama
• Akses sistem file
• Proteksi
• Jaringan
Program yang membaca dan menterjemakan pernyataan kontrol disebut
dengan command-line intepreter atau shell pada UNIX. Fungsinya adalah untuk
mengambil dan mengeksekusi pernyataan perintah berikutnya.
SYSTEM CALL
Ada lima jenis system calls utama, yaitu:
a. Process control merupakan system calls yang mengendalikan proses-proses yang berjalan.
b. File manipulation adalah kumpulan system calls yang bertugas untuk melakukan manipulasi file seperti pembacaan, penulisan, penghapusan dan pengubahan.
c. Device manipulation adalah system calls yang mengatur penggunaan peralatan-peralatan yang terhubung pada mesin tersebut.
d. Information maintenance. System calls yang menghubungkan user dengan sistem operasi dalam hal berbagi informasi.
e. Communications. Ada dua model komunikasi yaitu pertukaran informasi dilakukan melalui fasilitas komunikasi antar proses yang disediakan oleh sistem operasi (Message-Passing) dan pertukaran dengan menggunakan memori (shared-memory)
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.
System Calls menyediakan interface
pelayanan-pelayanan yang disediakan oleh sistem operasi, umumnya sebagai
rutin-rutin yang ditulis dengan bahasa C atau C++, atau beberapa tugas
yang mengakses hardware secara langsung menggunakan bahasa rakitan.
Biasanya programmer lebih memilih Application Programming Interface
(API) dibandingkan dengan low level programming.Ada lima jenis system calls utama, yaitu:
a. Process control merupakan system calls yang mengendalikan proses-proses yang berjalan.
b. File manipulation adalah kumpulan system calls yang bertugas untuk melakukan manipulasi file seperti pembacaan, penulisan, penghapusan dan pengubahan.
c. Device manipulation adalah system calls yang mengatur penggunaan peralatan-peralatan yang terhubung pada mesin tersebut.
d. Information maintenance. System calls yang menghubungkan user dengan sistem operasi dalam hal berbagi informasi.
e. Communications. Ada dua model komunikasi yaitu pertukaran informasi dilakukan melalui fasilitas komunikasi antar proses yang disediakan oleh sistem operasi (Message-Passing) dan pertukaran dengan menggunakan memori (shared-memory)
API (Apication Programing Interface)
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.
Cara Memakai API
* Dilakukan dengan mengimpor package/kelas import java.util.Stack;
* Ada beberapa kelas bernama sama dipackage yang berbeda, yaitu :
* Ada beberapa kelas bernama sama dipackage yang berbeda, yaitu :
– import salah satu dan gunakan nama lengkap untuk yang lain, atau
– gunakan nama lengkap semua kelas
Ada tiga jenis Bahasa Pemrograman Java Application Programming Interface (API):
*
inti resmi Java API, yang terdapat dalam JDK atau JRE, dari salah satu
edisi dari Java Platform. Tiga edisi dari Java Platform adalah Java ME
(Micro edition), Java SE (Standard edition), dan Java EE (Enterprise
edition).
* Resmi opsional API yang dapat didownload secara terpisah. Spesifikasi API ini didefinisikan sesuai dengan Spesifikasi Jawa Request (JSR), dan kadang-kadang beberapa API ini kemudian dimasukkan dalam API inti dari platform (contoh yang paling terkenal dari jenis ini adalah swing).
* API tidak resmi, yang dikembangkan oleh pihak ketiga, tetapi tidak berkaitan dengan JSRs apapun.
* Resmi opsional API yang dapat didownload secara terpisah. Spesifikasi API ini didefinisikan sesuai dengan Spesifikasi Jawa Request (JSR), dan kadang-kadang beberapa API ini kemudian dimasukkan dalam API inti dari platform (contoh yang paling terkenal dari jenis ini adalah swing).
* API tidak resmi, yang dikembangkan oleh pihak ketiga, tetapi tidak berkaitan dengan JSRs apapun.
Secara
umum arsitektur Symbian OS sendiri dapat gambarkan menjadi empat
lapisan berdasarkan penggunaan API yang tersedia, yaitu :
Lapisan pendukung aplikasi (Application Utility Layer)
Lapisan
ini terdiri dari berbagai pendukung yang berorientasi pada aplikasi.
Hal ini memungkinkan aplikasi lain (diluar sistem operasi) untuk
berintegrasi dengan aplikasi dasar yang tersedia pada sistem operasi. Bentuk layanan lain termasuk proses pertukaran data dan manajemen data.
Lapisan layanan dan framework antarmuka grafis (GUI Framework)
Lapisan ini merupakan framework API yang tersedia untuk memberi dukungan terhadap penanganan input user secara grafis maupun suara yang dapat digunakan oleh aplikasi lain.
Lapisan komunikasi
Lapisan ini berfungsi sebagai sistem operasi yang fokus diimplementasi pada peralatan komunikasi mobile,
Symbian OS memiliki kumpulan API yang fokus pada lapisan komunikasi.
Bagian teratas pada lapisan ini terdapat dukungan pencarian dan
pengiriman pesan teks. Berikutnya adalah antarmuka yang memberi dukungan
komunikasi seperti Bluetooth dan infrared (IrDA) serta USB. Yang terakhir pada lapisan ini adalah protokol komunikasi berupa TCP/IP, HTTP, WAP dan layanan telepon.
Lapisan sistem API dasar
Lapisan ini merupakan kumpulan API yang mendukung pengasksesan data memori, tanggal dan waktu, serta sistem dasar lainnya
Klasifikasi Sistem Operasi
Klasifikasi
ini berdasar fungsionalitas dan hak akses dari API tertentu. Tujuan
dari pendefinisian sistem ini selain untuk membedakan API mana saja yang
bisa diakses oleh aplikasi yang dibuat oleh pihak pengembang aplikasi,
juga tetap memelihara integrasi dari layanan yang disediakan bagi pihak
pengembang aplikasi
dengan API yang umum digunakan. Hal ini juga dilakukan untuk
memaksimumkan interoperabilitas antara berbagai produk yang menggunakan
Symbian OS.
Terdapat empat kategori dalam klasifikasi API yang tersedia, yaitu
(API) Symbian Umum
Komponen
ini merupakan komponen (API) inti dari Symbian OS. Setiap pengembang
aplikasi dapat berasumsi bahwa komponen ini terdapat pada setiap versi
Symbian OS sehingga dapat digunakan pada setiap perangkat telepon
bergerak yang menggunakan Symbian OS sebagai sistem operasinya. Dengan
kata lain setiap kode
program yang hanya menggunakan API pada kategori ini dapat dikompail
dan dijalankan tanpa kesalahan pada setiap telepon yang menggunakan
Symbian OS. Dengan adanya lisensi kerjasama, pengembang aplikasi dapat
menambahkan dengan syarat tidak mengganti ataupun mengubah fungsi API
standar yang dikategorikan pada bagian ini.
(API) Symbian Umum Tergantikan
Komponen yang memerlukan kostumisasi dari komponen Symbian Umum yang diperlukan untuk bekerja dengan ROM
dari sistem dimana ia diinstal. Komponen ini merupakan komponen yang
bekerja pada low-level dari hardware tertentu. Untuk mendapatkan
komponen ini pihak pengembang aplikasi memerlukan lisensi dengan pihak
Symbian karena versi komponen ini disediakan oleh pihak Symbian. Namun
pada dasarnya komponen ini merupakan komponen standar (umum) yang tersedia pada semua versi Symbian OS.
(API) Symbian Opsional
Komponen-komponen
ini sifatnya opsional (tidak selalu ada) pada semua versi Symbian OS.
Namun jika tersedia, maka pengembang aplikasi mendapat jaminan bahwa
aplikasinya dapat menggunakan API pada kategori ini pada versi Symbian
OS yang sama.
(API) Symbian Opsional Tergantikan
Bentuk
kategori ini mirip dengan kategori Symbian Opsional adalah kumpulan API
yang tidak terikat dengan API umum yang ada pada versi Symbian OS dan
dapat ditambahkan oleh pihak pengembang dengan suatu lisensi dari pihak
Symbian.
Tidak ada komentar:
Posting Komentar