SHELL
Shell
adalah “command executive” artinya program yang menunggu instruksi user,
memeriksa sintaks dan menterjemahkan instruksi yang diberikan kemudian
mengeksekusinya. Pada umumnya shell ditandai dengan command prompt, di
Linux untuk user biasa biasanya ditandai dengan tanda $ dan untuk
superuser biasanya tanda #. shell ada bermacam- macam di kinux biasanya
digunakan bash.Di linux ada berbagai macam shell, berikut macam-macam
shell :
a. Bourne Shell (sh)
sh adalah
shell standar Unix yang dibuat tahun 1979 oleh Stephen Bourne dari
AT&T dengan memakai bahasa pemrograman Algol. sh terkenal karena
sederhana, compact, and cepat. Kelemahannya adalah kurang interkatif
seperti tidak ada history, aliasing, dan job control. Default prompt
shell sh adalah $ (dolar).
b. C shell (csh)
csh
memiliki feature yang lebih lengkap dibandingkan sh. Shel ini dibuat
tahun 1970an oleh Bill Joy dari University of California at Berkeley
dengan menggunakan bahasa C. Fitur yang terdapat dalam csh antara lain
command-line history, aliasing, built-in arithmetic, filename
completion, dan job control. Kelemahnnya adalah karena didesain untuk
mesin skala besar dan memiliki banyak fitur maka shel ini cenderung
lambat bila digunakan pada mesin kecil. Default prompt shell csh adalah %
(persen).
c. Korn Shell (ksh)
Korn
shell merupakan pengembangan dari bourne shell yang ditulis oleh David
Korn dari AT&T pada pertengahan 1980an. Feature Korn shell antara
lain editable history, aliases, functions, regular expression wildcards,
built-in arithmetic, job control, coprocessing, dan special debugging.
Default prompt shell ksh adalah $ (dolar).
d. Bourne Again Shell(bash)
Bash
merupakan default shell Linux yang merupakan pengembangan dari bourne
shell sehingga kompatibel juga di Unix. Shell ini dibuat pada tahun 1988
oleh Brian Fox dari FSF GNU. Fitur yang dimiliki bash antara lain
interaktif, dapat membuat shortcut, bisa berwarna, dll.Default Bash
prompt adalah $ (dolar).
BATCH
Batch
Processing adalah suatu model pengolahan data, dengan menghimpun data
terlebih dahulu, dan diatur pengelompokkan datanya dalam
kelompok-kelompok yang disebut batch. Tiap batch ditandai dengan
identitas tertentu, serta informasi mengenai data-data yang terdapat
dalam batch tersebut. Setelah data-data tersebut terkumpul dalam jumlah
tertentu, data-data tersebut akan langsung diproses.
Contoh
dari penggunaan batch processing adalah e-mail dan transaksi batch
processing. Dalam suatu sistem batch processing, transaksi secara
individual dientri melalui peralatan terminal, dilakukan validasi
tertentu, dan ditambahkan ke transaction file yang berisi transaksi
lain, dan kemudian dientri ke dalam sistem secara periodik. Di waktu
kemudian, selama siklus pengolahan berikutnya, transaction file dapat
divalidasi lebih lanjut dan kemudian digunakan untuk meng-up date master
file yang berkaitan.
KONSOL
Istilah
yang digunakan untuk sebuah mesin system yang dirancang khusus untuk
memainkan video game dengan disertai minimal dua stik game untuk
memainkanya dan beberpa alat pendukung lainnya. Contoh konsol game yang
populer saat ini adalah Sony Playstation, Nintendo Wii, Microsoft X-BOX,
dan Sega Dreamcast.
KERNEL
Kernel
adalah suatu perangkat lunak yang menjadi bagian utama dari sebuah
sistem operasi. Tugasnya melayani bermacam program aplikasi untuk
mengakses perangkat keras komputer secara aman.
Karena
akses terhadap perangkat keras terbatas, sedangkan ada lebih dari satu
program yang harus dilayani dalam waktu yang bersamaan, maka kernel juga
bertugas untuk mengatur kapan dan berapa lama suatu program dapat
menggunakan satu bagian perangkat keras tersebut. Hal tersebut dinamakan
sebagai multiplexing.
Akses
kepada perangkat keras secara langsung merupakan masalah yang kompleks,
oleh karena itu kernel biasanya mengimplementasikan sekumpulan abstraksi
hardware. Abstraksi-abstraksi tersebut merupakan sebuah cara untuk
menyembunyikan kompleksitas, dan memungkinkan akses kepada perangkat
keras menjadi mudah dan seragam. Sehingga abstraksi pada akhirnya
memudahkan pekerjaan programer.
Untuk
menjalankan sebuah komputer kita tidak harus menggunakan kernel sistem
operasi. Sebuah program dapat saja langsung di- load dan dijalankan
diatas mesin 'telanjang' komputer, yaitu bilamana pembuat program ingin
melakukan pekerjaannya tanpa bantuan abstraksi perangkat keras atau
bantuan sistem operasi. Teknik ini digunakan oleh komputer generasi
awal, sehingga bila kita ingin berpindah dari satu program ke program
lain, kita harus mereset dan meload kembali program-program tersebut.
Ada 4 kategori kernel :
1. Monolithic kernel. Kernel yang menyediakan abstraksi perangkat keras yang kaya dan tangguh.
2. Microkernel. Kernel yang menyediakan hanya sekumpulan kecil abstraksi
perangkat keras sederhana, dan menggunakan aplikasi-aplikasi yang
disebut sebagai server untuk menyediakan fungsi-fungsi lainnya.
3. Hybrid (modifikasi dari microkernel). Kernel yang mirip microkernel,
tetapi ia juga memasukkan beberapa kode tambahan di kernel agar ia
menjadi lebih cepat.
4. Exokernel. Kernel yang tidak menyediakan sama sekali abstraksi
hardware, tapi ia menyediakan sekumpulan pustaka yang menyediakan
fungsi-fungsi akses ke perangkat keras secara langsung atau
hampir-hampir langsung.
Dari
keempat kategori kernel yang disebutkan diatas, kernel Linux termasuk
kategori monolithic kernel. Kernel Linux berbeda dengan sistem Linux.
Kernel Linux merupakan sebuah perangkat lunak orisinil yang dibuat oleh
komunitas Linux, sedangkan sistem Linux, yang dikenal saat ini,
mengandung banyak komponen yang dibuat sendiri atau dipinjam dari proyek
pengembangan lain.
Kernel
Linux pertama yang dipublikasikan adalah versi 0.01, pada tanggal 14
Maret 1991. Sistem berkas yang didukung hanya sistem berkas Minix.
Kernel pertama dibuat berdasarkan kerangka Minix (sistem UNIX kecil yang
dikembangkan oleh Andy Tanenbaum). Tetapi, kernel tersebut sudah
mengimplementasi proses UNIX secara tepat.
Pada
tanggal 14 Maret 1994 dirilis versi 1.0, yang merupakan tonggak sejarah
Linux. Versi ini adalah kulminasi dari tiga tahun perkembangan yang
cepat dari kernel Linux. Fitur baru terbesar yang disediakan adalah
jaringan. Versi 1.0 mampu mendukung protokol standar jaringan TCP/IP.
Kernel 1.0 juga memiliki sistem berkas yang lebih baik tanpa
batasan-batasan sistem berkas Minix. Sejumlah dukungan perangkat keras
ekstra juga dimasukkan ke dalam rilis ini. Dukungan perangkat keras
telah berkembang termasuk diantaranya floppy-disk, CD-ROM, sound card,
berbagai mouse, dan keyboard internasional. Dukungan juga diberikan
terhadap modul kernel yang loadable dan unloadable secara dinamis.
Satu
tahun kemudian dirilis kernel versi 1.2. Kernel ini mendukung variasi
perangkat keras yang lebih luas. Pengembang telah memperbaharui
networking stack untuk menyediakan support bagi protokol IPX, dan
membuat implementasi IP lebih lengkap dengan memberikan fungsi
accounting dan firewalling. Kernel 1.2 ini merupakan kernel Linux
terakhir yang PC-only. Konsentrasi lebih diberikan pada dukungan
perangkat keras dan memperbanyak implementasi lengkap pada fungsi-fungsi
yang ada.
Pada
bulan Juni 1996, kernel Linux 2.0 dirilis. Versi ini memiliki dua
kemampuan baru yang penting, yaitu dukungan terhadap multiple
architecture dan multiprocessor architectures. Kode untuk manajemen
memori telah diperbaiki sehingga kinerja sistem berkas dan memori
virtual meningkat. Untuk pertama kalinya, file system caching
dikembangkan ke networked file systems, juga sudah didukung writable
memory mapped regions. Kernel 2.0 sudah memberikan kinerja TCP/IP yang
lebih baik, ditambah dengan sejumlah protokol jaringan baru. Kemampuan
untuk memakai remote netware dan SMB (Microsoft LanManager) network
volumes juga telah ditambahkan pada versi terbaru ini. Tambahan lain
adalah dukungan internal kernel threads, penanganan dependencies antara
modul-modul loadable, dan loading otomatis modul berdasarkan permintaan
(on demand). Konfigurasi dinamis dari kernel pada run time telah
diperbaiki melalui konfigurasi interface yang baru dan standar.
Semenjak
Desember 2003, telah diluncurkan Kernel versi 2.6, yang dewasa ini
(2008) telah mencapai patch versi 2.6.26.1 (
http://kambing.ui.edu/kernel-linux/v2.6/). Hal-hal yang berubah dari
versi 2.6 ini ialah:
* Subitem M/K yang dipercanggih.
* Kernel yang pre-emptif.
* Penjadwalan Proses yang dipercanggih.
* Threading yang dipercanggih.
* Implementasi ALSA (Advanced Linux Sound Architecture) dalam kernel.
* Dukungan sistem berkas seperti: ext2, ext3, reiserfs, adfs, amiga ffs,
apple macintosh hfs, cramfs, jfs, iso9660, minix, msdos, bfs, free
vxfs, os/2 hpfs, qnx4fs, romfs, sysvfs, udf, ufs, vfat, xfs, BeOS befs
(ro), ntfs (ro), efs (ro).