Sabtu, 22 Juni 2013

TUGAS : TAMPILAN USER INTERFACE dari materi awal sampai akhir (29juni)

Membuat tampilan user interface dari awal penulisan hingga akhir

Tampilan halaman index 2013:

Tampilan halaman profile :


Tampilan halaman January 2013 (tugas website)



Tampilan halaman  Maret 2013 ;


Tampilan halaman April 2013 :


Tampilan halaman Juni 2013 :

Tampilan halaman arsip blog (alexadeliaa@yahoo.com)  dengan nama bloger zona :








4. Pengertian dan struktur storage multiprograming, multitasking, dan sistem uniprograming

4. Sistem Operasi sebagai Manager Sumber Daya :

Tipe Sistem Operasi
• Interaktif
• Batch
• Single program (Uni-programming)
• Multi-programming (Multi-tasking)


Sistem Batch Sederhana

1. Program monitor yang residen
2. User menngirim job ke operator
3. Operator mem-batch job
4. Monitor control mengendalikan urutan even untuk memproses secara batch
5. Ketika satu job sudah selesai, kendali kembali ke monitor yang akan membaca job berikutnya
6. Monitor menangani skeduling
Bahasa Kendali Job
• Instruksi ke monitor
• Biasanya diawali dengan $ atau beberapa karakter spesial lainnya
• Contoh :
– $JOB
– $FTN
– ... Beberapa instruksi Fortran
– $LOAD
– $RUN
– ... Beberapa data
– $END
• Bahasa awal (Predecessor) kemudian selanjutnya menjadi scripting languages (Burroughs WFL)

Fasilitas hardware Diinginkan
• Memori terproteksi :
Untuk melindungi Monitor
• Pengatur waktu (TIMER) :
Untuk mencegah suatu pekerjaan memonopoli sistem
• Instruksi yang diistimewakan :
o Yang hanya dieksekusi oleh Monitor
o Misalnya I/O
• Interupsi :
Memungkinkan mempertimbangkan untuk melepaskan (untuk sementara) suatu kendali dan mendapatkannya kembali

Multi-programmed Batch Systems
• Device I/O sangat lambat
• Ketika suatu program menunggu I/O selesai bekerja, yang lainnya seharusnya dapat menggunakan CPU.




ILUSTRASI
Program Tunggal :


Multi-Programming dengan Dua Program :





Multi-Programming dengan Tiga Program :




Sistem Time Sharing


Mengijinkan para pemakai untuk saling berhubungan secara langsung dengan komputer, yaitu Interaktifitas.
Multi-Programming mengijinkan sejumlah para pemakai untuk saling berhubungan dengan komputer


Penjadwalan (Scheduling)

Merupakan kunci multi-programming, terdiri dari :
• Long term
Ø Menentukan program yang mana yang disiapkan untuk memproses. Misalnya mengendalikan derajat tingkat dalam multi-programming
Ø Setelah di submit, suatu pekerjaan menjadi suatu proses yang dilaksanakan dalam penjadwalan jangka pendek. (atau menjadi suatu job yang diswap ke luar untuk penjadwalan jangka menengah)
• Medium term
Ø Bagian dari fungsi swap.
Ø pada umumnya didasarkan pada kebutuhan untuk mengatur multi-programming
Ø Jika tidak ada virtual memori, manajemen memori adalah sekedarnya saja.
• Short term
Sebagai DISPATCHER, yaitu pengambil keputusan langsung untuk menentukan pekerjaan mana yang akan dlaksanakan berikutnya. Misalnya : pekerjaan aktual
mana yang harus segera masuk ke prosesor pada waktu slot selanjutnya.
• I/O
Hubungan langsung permintaan layanan dari device I/O untuk mendapatkan perhatian Prosesor.





Blok Kendali Proses
§ Identifier
§ Informasi Status
§ Skala Prioritas
§ Program counter
§ Memory pointer
§ Context data
§ Status I/O
§ Accounting information

Elemen Kunci Sistem Operasi



Manajemen Memori

• Uni-Program
Memori di-split menjadi dua :
o Satu bagian untuk Sistem operasi (monitor)
o Satu bagian untuk eksekusi program
• Multi-Program
User adalah bagian dari sub-divided dan berbagi pakai antar proses aktif saja.

Swapping

Masalah: I/O sangat lambat dibandingkan dengan CPU, bahkan di sistem yang multi-programming, CPU seringkali idle.
Solusi :
• Meningkatkan memori utama :
o Mahal
o Memungkinkan pelaksanaan program besar.
• Swapping
§ Pada Long Term Queue (Antrian jangka panjang),proses disimpan pada disk.
§ Proses “di-swap” ketika ruangan sudah tersedia.
§ Jika proses sudah selesai, akan dipindahkan keluar dari memori utama.
§ Jika tidak satupun dari proses di dalam memori yang siap ( misalnya ketika semua I/O di blok) :
§ Terjadi penukaran (swap), proses yang diblok ke atau proses baru.

Partitioning


Defenisi :
Melakukan Split memori menjadi bagian-bagian untuk dialokasikan ke proses ( termasuk proses pada Sistem operasi)

Partisi Fixed-sized
§ Dapat saja tidak dalam ukuran yang sama.
§ Proses dimasukkan ke dalam lubang paling kecil yang paling tepat ukurannya dengan proses tersebut.
§ Dapat saja beberapa bagian memori jadi tersia-sia, sehingga membutuhkan partisi dengan ukuran variabel.


Ilustrasi Partisi Fixed-sized


Partisi Variable-sized

§ Mengalokasikan secara tepat memori yang diperlukan suatu proses.
§ Menyebabkan suatu hole kosong tidak terpakai pada bagian akhir memori, yang biasanya terlalu kecil untuk digunakan.
§ Dari keseluruhan memori yang tersedia, hanya ada satu hole kecil - sedikit yang tersia-siakan
§ Ketika semua proses diblok, akan terjadi penukaran (swap) proses keluar CPU, lalu CPU mengambil proses yang lain.
§ Proses baru mungkin saja lebih kecil dibanding proses yang ditukar keluar tadi, sehingga membuat hole baru.
§ Amat cepat terbentuk sekelompok hole (fragmentation)
§ Solusi:
o Koalisi - Menggabung dengan hole yang bersebelahan ke hole yang lebih besar.
o Pemampatan (Compaction) - Dari waktu ke waktu melakukan perpindahan semua hole ke dalam satu blok bebas ( seperti pada disk defragmentation)



Ilustrasi Partisi Variable-sized





Relokasi

§ Tidak ada jaminan suatu proses akan mengisi ke dalam tempat yang sama dengan proses yang lain di dalam memori.
§ Instruksi berisi alamat :
o Lokasi data
o Alamat instruksi (percabangan)
§ Alamat logis - relatif untuk awal suatu program.
§ Alamat fisik - Lokasi aktual (yang sesungguhnya) dalam memori pada saat ini.
§ Konversi otomatis berdasarkan alamat.

Paging

§ Memori di-split pada ukuran yang sama, chunks kecil - disebut frame Page.
§ Program yang dipisah ( proses) pada ukuran yang sama, small chunks – disebut page.
§ Mengalokasikan page frame yang diperlukan kepada suatu proses.
§ Sistem operasi memelihara daftar frame yang bebas.










Ilustrasi Paging



Bus adalah :
Jalur komunikasi yang dibagi pakai
Suatu set kabel tunggal yang digunakan untuk menghubungkan berbagai subsistem.

Merupakan tool yang fundamental dalam menyusun sistem yang besar dan kompleks secara sistematis.


KEUNTUNGAN MENGGUNAKAN BUS

Memiliki berbagai macam kegunaan (Versatilitas):
o Device baru dapat ditambahkan dengan mudah.
o Peripheral dapat dipindah-pindahkan antar sistem komputer yangh menggunakan standar bus yang sama.
Harga Rendah:
o Set kawat tunggal dipakai bersama dalam berbagai cara dan metode

KERUGIAN MENGGUNAKAN BUS

Menciptakan suatu komunikasi bottleneck
Bandwidth (Luas bidang) bus dapat membatasi maksimum I/OThroughput
Maksimum kecepatan bus biasanya dibatasi oleh:
o Panjang bus
o Banyaknya device yang terhubung pada bus
Kebutuhan dukungan tambahan untuk device-device yang :
o Secara luas memiliki berbagai jenis latency
o Secara luas memiliki berbagai jenis data transfer rate


ORGANISASI BUS



Jalur Kontrol
o Berisi Signal request dan sinyal acknowledgments
o Mengindikasikan tipe informasi pada jalur data.
Jalur Data membawa informasi antara sumber dan tujuan:
o Data dan alamat
o Perintah-perintah kompleks.


MASTER VS SLAVE




Suatu transaksi bus meliputi dua komponen:
o Mengeluarkan perintah (dan alamat) – request (permintaan)
o Memindahkan data - action (tindakan)
Master adalah bus yang memulai transaksi bus dengan cara :
o Mengeluarkan perintah (dan alamat)
Slave adalah bus yang bereaksi terhadap alamat dengan cara :
o Mengirimkan data kepada master jika master meminta data.
o Menerima data dari master jika master mengirimkan data

DIRECT MEMORY ACCESS (DMA)

§ Device I/O harus memindahkan sejumlah data yang besar dari memori ke prosesor :
o Disk harus memindahkan blok lengkap ( 4K? 16K ?)
o Paket besar dari jaringan

§ DMA memberi kemampuan pada device eksternal untuk dapat menulis ke memori secara langsung:
Overhead yang lebih kecil dibandingkan dengan jika prosesor me-request
1 word setiap waktu.
o Prosesor (atau sistem memori) bertindak seperti slave



Kasus : Cache coherence

Apa Akibatnya jika device I/O menulis data yang sedang berada dalam prosesor cache? Prosesor tidak dapat lihat data baru!

Solusi:
§ Membersihkan cache pada setiap Operasi I/O (mahal)
§ Memiliki perangkat keras yang membuat tidak berlakunya suatu jalur cache.


KONSEP PROGRAM

Program adalah :
• Kumpulan Langkah yang berurutan
• Untuk setiap langkah, akan menyelesaikan operasi aritmatik atau operasi logikal
• Untuk setiap operasi, membutuhkan suatu sinyal kontrol tertentu.
Fungsi Kontrol Unit :
• Untuk setiap operasi membutuhkan kode unik : ADD, MOVE
• Segmen hardware menerima kode tersebut dan memilihkan kontrol sinyal yang tepat.
• Kita memiliki Komputer!
Komponen :
• Control Unit dan unit Aritmatik &Logika terdapat pada Central Processing Unit
• Data dan instruksi perlu masuk ke dalam sistem tersebut dan hasilnya dikeluarkan dari sistem tersebut : Proses Input/output
• Penyimpanan sementara bagi kode dan hasil amat diperlukan,
contoh : Main memory

Komputer Komponen (Top Level View) :



Siklus Instruksi :









Contoh Eksekusi Program :



Contoh
Dua Langkah Siklus Instruksi :
1. Siklus Fetch
• Program Counter (PC) mengambil alamat instruksi selanjutnya pada fetch.
• Processor mengambil instruksi dari memori yang ditunjuk oleh PC
• Increment PC : mencari alamat lainnya
• Instruksi di-load ke Instruction Register (IR)
• Prosesor menginterpretasi instruksi dan menyiapkan aksi yang dibutuhkan
2. Siklus Eksekusi
• Processor-memory : transfer data antara CPU dan main memory
• Processor I/O : transfer data antara CPU dan modul I/O
• Data processing : Beberapa operasi aritmatik dan logika pada data
• Kendali.: alternatif aliran operasi, misalnya jump
• Kombinasi di atas.

State Diagram Siklus Intruksi :




Interupsi
• Mekanisme antara modul yang berlainan (misalnya I/O) dapat menginterupsi aliran proses yang normal.
• Berhubungan dengan program, misalnya : overflow, division by zero
• Berhubungan dengan Timer, misalnya : dibuat oleh timer pada prosesor internal, digunakan dalam multitasking
• Berhubungan dengan I/O : dari I/O controller
• Berhubungan dengan kesalahan Hardware, misalnya error pada parity memori.

Kendali Aliran Program :


Siklus Interupsi :
• Ditambahkan dalam siklus Instruksi
• Prosesor akan menmeriksa interupsi : diindikasikan dengan adanya sinyal interupsi.
• Jika tidak ada interupsi maka akan mem-fetch intruksi selanjutnya.
• Jika terdapat interupsi :
o Hentikan dulu eksekusi program yang sedang berjalan
o Isi program di simpan dulu
o Set PC untuk menunjuk ke alama awal rutin handler interupsi
o Memproses interupsi.
o Mengembalikan isi program dan melanjutkan program yang terinterupsi tadi.

State Diagram Siklus Interupsi :





Multiple Interupsi :
• Men-disable interupsi
• Prosesor akan mengabaikan interupsi yang lain kerika sedang memproses suatu interupsi
• Interupsi yang di-pending akan dijalankan setelah interupsi yang sebelumnya telah selesai diproses.
• Terdapat Interupsi yang menangani urutan.
• Mendefinisikan prioritas
• Interupsi prioritas rendah dapat diinterupsi oleh interupsi yang lebih tinggi prioritasnya.
• Ketika proses pada interupsi yang berprioritas tinggi selesai dilakukan, proses akan kembali ke interupsi sebelumnya.

sumber :
http://belajarlinux.html


Pengertian AKSES , INPUT dan OUTPUT pada LInux

3. Linux menganut filosofi bahwa setiap hal adalah file.

Sebuah keyboard, monitor, mouse, printer ... semua file di Linux. Linux mengidentifikasi setiap perangkat keras dengan deskriptor file yang unik yang terkait dengannya.

Sekarang nomenklatur ini punya keunggulan tersendiri. Yang utama adalah Anda dapat menggunakan alat baris perintah untuk mengirim, menerima atau memanipulasi data dengan perangkat tersebut.

Misalnya, mouse saya memiliki deskripsi file / dev / input / mice terkait dengan itu (Anda mungkin berbeda).

Jadi jika saya ingin melihat output dari mouse pada layar saya, saya hanya masukkan perintah:

$ Cat / dev / input / mice

... dan kemudian gerakkan mouse untuk mendapatkan karakter di terminal. Mencobanya sendiri.

Dalam beberapa kasus, menjalankan perintah di atas akan berebut layar terminal. Jika itu terjadi, Anda dapat kembali terminal anda dengan mengetikkan ulang

Semua program di Linux memiliki akses ke 3 file khusus. Mereka adalah -

Input standar - 0
Output standar - 1, dan
Kesalahan - 2

Dimana angka 0, 1, dan 2 menunjukkan file deskriptor.

Dalam contoh sebelumnya, kucing alat yang digunakan output standar yang secara default adalah layar atau konsol untuk menampilkan output.

Mengarahkan output ke file lain

Anda dapat dengan mudah mengarahkan input / output ke file apapun selain layar. Hal ini dicapai di Linux menggunakan input dan simbol redirection output.

Simbol-simbol ini adalah sebagai berikut:

> - Output redirection

<- Input redirection

Menggunakan kombinasi dari simbol-simbol ini dan deskriptor file standar Anda dapat mencapai tugas pengalihan kompleks cukup mudah.

Output Redirection

Misalkan, saya ingin mengarahkan output dari ls ke file teks daripada konsol. Saya bisa menggunakan simbol redirection output dan melakukannya seperti yang ditunjukkan di bawah ini.

$ Ls-l myfile.txt> test.txt

Perintah di atas akan mengarahkan output ke file - test.txt. Jika file 'test.txt' tidak ada, maka secara otomatis dibuat dan output dari perintah ls-l ditulis untuk itu.

Ini adalah asumsi bahwa ada file bernama myfile.txt yang ada dalam direktori saya saat ini.

Sekarang mari kita lihat apa yang terjadi ketika kita menjalankan perintah yang sama setelah menghapus myfile.txt berkas.

$ Rm myfile.txt
$ Ls-l myfile.txt> test.txt
ls: myfile.txt: Tidak ada berkas atau direktori - ERROR

Apa yang terjadi adalah bahwa ls tidak menemukan file bernama myfile.txt dan menampilkan kesalahan pada konsol atau terminal. Sekarang di sini adalah bagian yang menyenangkan.

Anda juga bisa mengalihkan kesalahan yang dihasilkan di atas ke file lain daripada menampilkan pada konsol dengan menggunakan kombinasi kesalahan berkas deskripsi dan file output simbol redirection sebagai berikut:


$ Ls-l myfile.txt 2> test.txt

Dengan mengetik 2>, Anda mengatakan program untuk mengarahkan kesalahan (2) ke test.txt berkas.


Dua terminal terbuka dapat digunakan untuk berlatih output redirection
Contoh Redirection

Saya bisa memberikan satu tujuan praktis untuk kesalahan ini pengalihan yang saya gunakan secara teratur. Ketika saya mencari file dalam hard disk seluruh sebagai user biasa, saya mendapatkan banyak kesalahan seperti:

menemukan: / file / path: Izin ditolak

Dalam situasi seperti itu saya menggunakan redirection kesalahan untuk menyingkirkan pesan-pesan kesalahan sebagai berikut:

# Find /-iname \ * 2> / dev / null

Sekarang semua pesan error yang diarahkan ke / dev / perangkat null. Jadi saya dapat mengurangi banyak kekacauan di terminal saya.

/ Dev / null adalah jenis khusus dari berkas dalam yang ukurannya adalah selalu nol. Apa pun yang Anda menulis ke file yang akan hilang.

Kebalikan dari file ini adalah / dev / zero yang bertindak sebagai sumber yang tak terbatas. Anda dapat menggunakan / dev / zero untuk membuat file dari berbagai ukuran - saat membuat file swap misalnya.

Jika Anda memiliki garis printer / dev/lp0 terhubung ke mesin Linux Anda, Anda dapat mengirim output apapun ke printer menggunakan output redirection. Misalnya, mencetak isi dari file teks (testfile.txt) sederhana.

$ Cat testfile.txt> / dev/lp0

Masukan Redirection

Anda menggunakan input redirection menggunakan kurang dari simbol (<) dan biasanya digunakan dengan program yang menerima input pengguna dari keyboard.

Sebuah penggunaan legendaris redirection masukan yang saya temui adalah mailing isi dari file teks ke pengguna lain.

$ Email ravi <mail_contents.txt

Sekarang dengan kemajuan dalam GUI, dan juga ketersediaan klien email yang baik, metode ini jarang digunakan.

Berikut ini adalah contoh lain dari input redirection ...

Misalkan Anda ingin mencari jumlah pasti baris, jumlah kata dan karakter masing-masing dalam sebuah file teks dan Anda ingin secara bersamaan menulis ke file lain.

Anda dapat melakukannya dengan menggunakan kombinasi input dan simbol redirection keluaran sebagai berikut:


$ Wc <my_text_file.txt> output_file.txt

Apa yang terjadi di atas adalah isi dari my_text_file.txt berkas dilewatkan ke wc perintah yang output pada gilirannya diarahkan ke output_file.txt berkas.

Menambahkan data ke file Anda juga dapat menggunakan >> simbol bukan output redirection untuk menambahkan data ke file. Sebagai contoh,

$ Cat - >> test.txt


... akan menambahkan apa yang pernah Anda menulis ke test.txt berkas.
• AKSES
Hak akses bisa dibilang sebuah hak yang diberikan pada seluruh User atau file untuk melakukan sesuatu akses. Jadi Hak akses ini dapat diatur sedemikian rupa supaya file atau direktori itu hanya bisa di read, atau write, dan execute. Selain itu kita juga bisa mengatur bagaimana hak akses dari setiap user pada suatu file, atau direktori.

Hal yang harus dikuasai dalam konfigurasi Hak Akses pada Linux :
1. Mengetahui Fungsi CHMOD
2. Mengetahui Fungsi setiap atribut tambahan dalam perintah CHMOD
3. Dapat mengatur hak akses bagi setiap user
4. Dapat mengatur hak akses bagi setiap group
5. Dapat merencanakan hak akses yang diaplikasikan di kehidupan sehari-hari atau Industri
Sesuai dengan semua yang harus kita kuasai kita harus memahami fungsi dari perintah "CHMOD" dan atribut tambahan pada perintah CHMOD tersebut, langsung aja kita Cekidot!!


CHMOD

Chmod merupakan salah satu perintah pada Linux yang berfungsi untuk mengurangi atau memberikan izin ( Hak Akses ) pada suatu file atau direktori dan User serta Group.

Dalam Linux ada 3 Hak Akses atau perizinan File dan Direktori, yaitu :
1. r untuk read
2. w untuk write
3. x untuk execute

|—|—|—| |rwx|rwx|rwx|

Pada dasarnya struktur dari chmod seperti diatas, kolom pertama untuk user kolom yang kedua untuk group kolom yang ketiga anynomos atau other.

A. Dengan menggunakan letter coding, Anda dapat merubah permission diatas untuk masing-masing u (user), g (group), o (other) dan a (all) dengan hanya memberi tanda plus (+) untuk menambah ijin dan tanda minus (-) untuk mencabut ijin.

Contoh :
Misalnya untuk memberikan izin baca dan eksekusi file coba1 kepada owner dan group, perintahnya adalah:

$ chmod ug+rx coba1


Untuk mencabut izin-izin tersebut:

$ chmod ug-rx coba1

B. Dengan menggunakan sitem numeric coding, permission untuk user, group dan other ditentukan dengan menggunakan kombinasi angka-angka, 4, 2 dan 1 dimana 4 (read), 2 (write) dan 1 (execute).

Contoh :

$ chmod 700 coba2

Contoh lain, untuk memberi ijin baca(4) dan tulis(2) file coba3 kepada user, baca(4) saja kepada group dan other, perintahnya adalah:

$ chmod 644 coba3

Pengertian dan contoh lengkapnya

2. A. BATCH
contoh sebuah Batch System adalah sebuah 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.
ada 2 cara dalam Batch System yaitu :


1. Resident Monitor

a. Operator bertugas mengatur urutan job

b. Job-job yg sama cukup dicetak sekali saja, cara inilah yg disebut “Batch system”

Teknik pengurutan job secara manual begini akan menyebabkan tingginya waktu

menganggur CPU. Muncul teknik pengurutan job otomatis yg mampu mentransfer secara otomatis dari suatu proses ke proses lainnya.Program kecil dan bersifat residen dimemori serta berisi urutan2 job yg akan berpindah secara otomatis, inilah “Resident Monitor”



2. Overlap Operasi antara I/O dg CPU

·           .  Off line Processing, data yg dibaca dari card reader disimpan dulu dalam tape driver sebelum dibawa ke CPU, demikian pula informasi yg mau dicetak, disimpan dulu di tape 
·           Spooling  adalah suatu program dapat dikerjakan walaupun I/O masih mengerjakan  proses lainnya dan disk secara bersamaan menggunakan data untuk banyak proses. Pengertian multi programming adalah kegiatan menjalankan beberapa program pada memori pada satu waktu.

B. Shell

Macam - macam shell?
Tidak seperti sistem operasi lain yang hanya menyediakan satu atau 2 shell, sistem operasi dari keluarga unix misalnya linux sampai saat ini dilengkapi oleh banyak shell dengan kumpulan perintah yang sangat banyak, sehingga memungkinkan pemakai memilih shell mana yang paling baik untuk membantu menyelesaikan pekerjaannya, atau dapat pula berpindah-pindah dari shell yang satu ke shell yang lain dengan mudah, beberapa shell yang ada di linux antara lain:
·         Bourne shell(sh),
·         C shell(csh),
·         Korn shell(ksh),
·         Bourne again shell(bash),
·         dsb.
Masing - masing shell mempunyai kelebihan dan kekurangan yang mungkin lebih didasarkan pada kebutuhan pemakai yang makin hari makin meningkat, untuk dokumentasi ini shell yang digunakan adalah bash shell dari GNU, yang merupakan pengembangan dari Bourne shell dan mengambil beberapa feature (keistimewaan) dari C shell serta Korn shell, Bash shell merupakan shell yang cukup banyak digunakan pemakai linux karena kemudahan serta banyaknya fasilitas perintah yang disediakan.versi bash shell yang saya gunakan adalah 2.04
[alexa@linux$]echo $BASH_VERSION
bash 2.04.12(1)-release
Mungkin saat anda membaca dokumentasi ini versi terbaru dari bash sudah dirilis dengan penambahan feature yang lain.
2. Pemrograman Shell ?
Yaitu menyusun atau mengelompokkan beberapa perintah shell (internal atupun eksternal command) menjadi kumpulan perintah yang melakukan tugas tertentu sesuai tujuan penyusunnya. Kelebihan shell di linux dibanding sistem operasi lain adalah bahwa shell di linux memungkinkan kita untuk menyusun serangkaian perintah seperti halnya bahasa pemrograman (interpreter language), melakukan proses I/O, menyeleksi kondisi, looping, membuat fungsi, dsb. adalah proses - proses yang umumnya dilakukan oleh suatu bahasa pemrograman, jadi dengan shell di linux kita dapat membuat program seperti halnya bahasa pemrograman, untuk pemrograman shell pemakai unix atau linux menyebutnya sebagai script shell.

C. Kernel
Modul kernel adalah sebuah file obyek yang berisi fungsi-fungsi yang dapat digunakan oleh kernel sistem operasi. Tujuan dibuat sebuah modul kernel adalah untuk menyediakan fungsi-fungsi yang tidak disediakan secaradefault oleh kernel. Modul ini biasanya digunakan sebagai device driver.
Contoh sebuah modul kernel sederhana
/* file contoh.c */
#include <linux/module.h>
static void __init hello_init(void)
{
               printk(KERN_INFO "Hello World!");
}
 
static void __exit hello_exit(void)
{
               printk(KERN_INFO "Hello World!");
}
 
module_init(hello_init);
module_exit(hello_exit);
Untuk menjalankan modul ini pertama-tama kode harus dikompilasi. Kompilasi dapat dilakukan dengan menggunakan Makefile seperti di bawah ini
obj-m += contoh.o
 
all:
               make -C /lib/modules/$(shell uname -r)/build M=$(PWD) modules
 
clean:
               make -C /lib/modules/$(shell uname -r)/build M=$(PWD) clean
 
 
Kompilasi dapat dilakukan dengan menggunakan perintah Make.
Selanjutnya akan terdapat beberapa file termasuk contoh.ko.
Untuk melakukan instalasi cukup jalankan perintah pada shell
#insmod contoh.ko
Untuk membuang modul dari kernel jalankan perintah
#rmmod
Keluaran dapat dilihat dengan menggunakan perintah
#dmesg
Bisa dilihat pada kode di atas, fungsi inisialisasi, yakni fungsi yang dijalankan pertama kali diset dengan menggunakan fungsi module_init, sedangkan fungsi yang dijalankan saat modul dibuang diset dengan menggunakan fungsi module_exit.
Pada dasarnya modul kernel berbeda dengan program biasa. Karena berjalan pada kernel space, modul hanya dapat menggunakan fungsi-fungsi yang disediakan oleh kernel. Modul kernel tidak dapat menggunakan fungsi-fungsi yang disediakan library. Oleh karena itu header file seperti stdio.h, stdlib.h, tidak dapat dipakai dalam modul. Dapat dilihat di atas, untuk melakukan pencetakan ke terminal tidak digunakan fungsi printf melainkan fungsi printk yang pada dasarnya memiliki fungsi dan fitur yang sama.
D. Konsol
Perintah Dasar Console Linux - Pada postingan kali ini BLOGNYA SI IMIN akan memberikan sebuah informasi bagi kalian yang baru mempelajari linux baik itu di sekolah ataupun di bangku kuliah. Perintah-perintah (command) dasar di Linux di jalankan di suatu terminal shell yang biasa disebut terminal atau console. Terminal atau console ini dikenal dengan istilah command line interface (CLI) yang bisa diaktifkan dengan cara klik menu Applications – Accessories – Terminal. Selain itu bisa juga dengan bekerja diconsole murni dengan menekan kombinasi tombol ctrl+alt+F1 dimana F1 bisa diganti sampai F6. Untuk kembali ke mode Grafical User Interface (GUI) tekan ctrl+alt+F7.

Berikut beberapa Perintah Dasar Console Linux:

login: Untuk masuk ke dalam Jaringan.
password : Untuk memasukkan kata sandi setelah login.
who : Untuk mengetahui daftar pemakai yang sedang aktif (login).
finger : Menyediakan informasi identitas user yang lebih lengkap dari ada who.
logout : Untuk keluar dari sistem atau mengakhiri satu sesi login
whoami :  Untuk mengetahui user siapa yang digunakan sedang login di suatu komputer/terminal.
date : menunjukan / mengatur tanggal.
ls :  Menampilkan daftar file dalam directori aktif. 

keterangan : Perintah ini akan menampilkan informasi mengenai directori dan file.Bentuk sederhana perintah ls akan menampilkan hanya nama file. Bentuk panjang ditandai dengan menggunakan option –l, yang akan menampilkan nama-nama file beserta informasi untuk setiap file yang ditampilkan. Beberapa option yang di sediakan antra lain sebagai berikut :
-a : Tampilkan semua file di directory termasuk isian.
-o :Tampilkan hanya nama directory
-g :Cetak ID kelompok hanya untuk bentuk panjang
-l :Tampilkan seluruh file secara lengkap
-r :Ubah urutan pengaturan nama file yang telah disusun
-t :Atur nama file berdasarkan waktu modifikasi terakhir, tidak berdasarkan nama
chmod : Mengubah permission suatu direktori/file.
contoh:  chmod 777 nama_file
clear :  berfungsi untuk membersihkan layar pada CLI
contoh : clear atau bisa juga menekan tombol ctrl + D
cmp : Membandingkan file1 dan file2 serta laporkan perbedaannya
contoh:  cmp file1 dan file2
cp : mengcopy file
contoh : # cp file1 /usr/lib
rm : menghapus file
contoh : rm namafileyangmaudihapus
mv :  memindahkan ato merename suatu file
contoh : # mv renamefile1 menjadifile2
cat : Menampilkan isi sebuah file (sama dengan perintah TYPE pada DOS). Cat berfungsi untuk mencetak ke layar monitor isi dari sebuah file text. Jika file dililihat menggunakan perintah ini bukan file text maka akan keluar karakterkarakter aneh pada  karakter-karakter aneh tersebut dapat digunakan perintah cat –v.layar.. Untuk menghindari tercetaknya

grep : mencari file di sembarang direktori
contoh : grep -n ‘namafile’ /direktori
mkdir :  membuat direktori
contoh : mkdir namadirektori
rmdir : menghapus direktori
contoh : rmdir namadirektori
cd : berpindah direktori
contoh : cd /pathdirektori

http://fandimin.blogspot.com/2012/09/perintah-dasar-console-linux.html