Jumat, 21 Desember 2012

SHELL JILID 3

Nama : Bobby Setiawan
NIM : 2011-81-071
Seksi : 03

Tugas Sistem Operasi "Shell Jilid III"

1. Program untuk menampilkan menu : 


























script sudah di kirim lewat email dengan format .sh

2. Penjelasan dari fungsi menu tersebut :

1). pwd : untuk menampilkan direktori yang ada saat ini.
2). ls : menampilkan seluruh isi folder/file yang ada pada direktori yang di tuju.
3). logname : menampilkan nama logname dari sistem operasi tersebut.
4). buat direktori so : membuat direktori yang bernama so dengan fungsi mkdir (make direktory).
5). buat file nama anda : membuat file bobby dengan fungsi cat (dengan format yang diinginkan adalah txt).
6). perlihatkan file : melihat isi file yang ada dengan fungsi cat dengan penulisan cat > namafile.txt.
7). Ps Aux : berfungsi untuk melihat kegiatan user atau root.
8). Grep : berfungsi untuk mencari suatu tulisan atau karakter di dalam suatu file.
9). Touch : berfungsi sebagai edit file dengan memasukan file yang lain ke dalam file tujuan yang ingin di edit.
10). Tr : berfungsi untuk mengubah huruf kecil menjadi kapital atau sebaliknya.

Screen Shot Program :

* Isi file shell3.sh



































* Eksekusi Program dan Running Program







 

Jumat, 07 Desember 2012

Tugas Shell Programing

NAMA   : BOBBY SETIAWAN
NIM       : 2011 81 071

SEKSI    : 03
TUGAS SISTEM OPERASI (PEMOGRAMAN SHELL)


1. Pemrograman Shell adalah program yang menjembatani user dengan sistem operasi dalam hal ini Kernel (inti dari sistem operasi), umumnya shell menyediakan prompt sebagai user interface, tempat dimana user dapat mengetikkan perintah-perintah yang diinginkan baik berupa perintah internal shell (internal command), ataupun perintah eksekusi file program (eksternal command), selain itu memungkinkan user menyusun sekumpulan perintah pada sebuah atau beberapa file untuk dieksekusi sebagai program. Jadi intinya, Shell ini digunakan sebagai jembatan antara user dengan Kernel untuk mendapatkan hasil atau output yang anda inginkan.

2. Dasar Dasar dari Pemograman Shell :

- cd, pwd, times, alias, umask, exit, logout, fg, bg, ls, mkdir, rmdir, mv, cp, rm, clear, ...

- utilitas seperti cat, cut, paste, chmod, lpr,...

- redirection (cara mengirim output ke file atau menerima input dari file), menggunakan operator redirect >, >>, <, <<, contohnya:
  ls > data
    Hasil ls dikirim ke file data, jika file belum ada akan dibuat tetapi jika sudah ada isinya akan ditimpa.
  ls >> data
    Hampir sama, bedanya jika file sudah ada maka isinya akan ditambah di akhir file.
  cat < data
    File data dijadikan input oleh perintah cat
- pipa (output suatu perintah menjadi input perintah lain), operatornya : | , contoh:
  ls -l | sort -s
    Ouput perintah ls -l (long) menjadi input perintah sort -s (urutkan secara descending)
  ls -l | sort -s | more
  cat <data | sort > databaru


- Wildcard dengan karakter *, ?, [ ], contohnya:
  ls i*
    Tampilkan semua file yang dimulai dengan i
  ls i?i
    Tampilkan file yang dimulai dengan i, kemudian sembarang karakter tunggal, dan diakhiri dengan i
  ls [ab]*
    Tampilkan file yang dimulai dengan salah satu karakter a atau b.

3. Secara sederhana variabel adalah pengenal (identifier) berupa satuan dasar penyimpanan yang isi atau nilainya sewaktu-waktu dapat berubah baik oleh eksekusi program (runtime program) ataupun proses lain yang dilakukan sistem operasi. dalam dokumentasi ini saya membagi variabel menjadi 3 kategori:
  1. Environment Variable
  2. Positional
    Parameter
  3. User Defined Variable

1. Environment Variable

Dapat disebut sebagai variabel lingkungan yang digunakan khusus oleh shell atau system linux kita untuk proses kerja system seperti variabel PS1, PS2, HOME, PATH, USER, SHELL,dsb...jika digunakan akan berdampak pada system.
2. Positional Parameter
Dapat disebut sebagai parameter posisi yaitu variabel yang digunakan shell untuk menampung argumen yang diberikan terhadap shell baik berupa argumen waktu sebuah file dijalankan atau argumen yang dikirim ke subrutin.
Contoh : 




Hasilnya : 




Ada 3 argumen yang disertakan pada scriptargumen1yaitubash, shell, linux. Masing masing argumen akan disimpan pada variabel 1,2,3sesuai posisinya. variabel spesial lain yang dapat digunakan diperlihatkan pada script berikut :









Hasilnya : 







3. User Defined Variable

User Defined Variable adalah variabel yang didefinisikan sendiri oleh pembuat script sesuai dengan kebutuhannya. 

Contoh : 












Hasilnya :







4. Manajemen Input dan Output pada Shell

- Output dengan Echo

Kalimat yang mengikuti echo akan ditampilkan di layar, kemudian kursor pindah baris berikutnya tanda (opsi) –n antara echo dengan kalimat digunakan agar kursor tidak pindah ke baris berikutnya. 

Contoh :


- Output dengan Printf



- Output dengan Konstanta ANSI

    1. Pengaturan Warna
    2. Pengaturan posisi kursor

5. Struktur Kontrol pada Shell  

   1. Struktur Kontrol if-else (if then .... else ...)
   2. Struktur Kontrol if-else bertingkat (if then .... else if then .... fi ...)
   3. Struktur Kontrol if-else bertingkat - penyederhanaan (if then ... elif then ... fi ...)
   4. Struktur Kontrol Case (Case in isi 1 perintah 1 ... perintah 2 ... perintah 3)
   5. Struktur Kontrol For (For variabel do perintah1 done)
   6. Struktur Kontrol While (While kondisi do perintah 1 done)
   7. Struktur Kontrol Until (Until kondisi do perintah 1 done)

6. Array Pada Shell

Contoh Array pada shell dengan bahasa c++



7. Function pada Shell

Contoh fungsi pada shell

#!/bin/bash
function jual {
if [ -z $1 ] && [ -z $2 ]; then
echo “Tanah Tidak Terjual”
else
echo “Penjualan Tanah”
let panjang=$1
let lebar=$2
let luas=$panjang*$lebar
let “jual=($panjang*$lebar*500000)”
echo “Dengan Luas $luas m2 Telah Terjual dengan harga $jual”
fi
return 1
return 2
}
function beli {
if [ -z $1 ] && [ -z $2 ]; then
echo “Tanah Tidak Dibeli”
else
echo “Pembelian Tanah”
let panjang=$1
let lebar=$2
let luas=$panjang*$lebar
let “beli=($panjang*$lebar*750000)”
echo “dengan Luas $luas m2 Telah Dibeli dengan harga $beli”
fi
return 1
return 2
}
function sewa {
if [ -z $1 ] && [ -z $2 ]; then
echo “Tanah Tidak Tersewa”
else
echo “Penyewaan Tanah”
let panjang=$1
let lebar=$2
let luas=$panjang*$lebar
let “sewa=($panjang*$lebar*200000)”
echo “dengan Luas $luas m2 Telah Disewa dengan harga $sewa”
fi
return 1
return 2
}
rumah() {
if [ $p -eq 1 ]; then
echo “Masukan ukuran Tanah: ”
echo -n “Panjang= ”
read p
echo -n “Lebar= ”
read l
jual $p $l;
elif [ $p -eq 2 ]; then
echo “Masukan ukuran Tanah: ”
echo -n “Panjang= ”
read p
echo -n “Lebar= ”
read l
beli $p $l;
elif [ $p -eq 3 ]; then
echo “Masukan ukuran Tanah: ”
echo -n “Panjang= ”
read p
echo -n “Lebar= ”
read l
sewa $p $l;
fi
}
clear
echo “JBS Makelar Tanah ”
echo “Jual Tanah = 500000/m2″
echo “Beli Tanah = 750000/m2″
echo “Sewa Tanah = 200000/m2/tahun”
echo
echo “1. Jual Tanah Anda”
echo “2. Beli Tanah Baru”
echo “3. Sewa Tanah”
echo -n “Masukkan pilihan Anda: ”
read p
echo
echo
rumah


Jumat, 16 November 2012

CHORD LAGU DEWA 19 - HADAPI DENGAN SENYUMAN

Hmmm .. Saya bingung mau posting apa ....
Ya sudah kali ini saya akan posting tentang chord gitar sebuah lagu dari Dewa 19 - Hadapi dengan senyuman. Lagu ini bisa buat latihan buat yang baru belajar gitar .

Dewa 19 - Hadapi Dengan Senyuman 


(*) 

G               Em 
Hadapi dengan senyuman 
             Am 
Semua yang terjadi 
          D 
Biar terjadi... 
  Bm           Em 
Hadapi dengan tenang jiwa 
   Am             D 
Semua...kan baik-baik saja 

(**) 

G              Em 
Bila ketetapan Tuhan 
         Am 
Sudah ditetapkan 
           D 
Tetaplah sudah... 
    Bm            Em 
Tak ada yang bisa merubah 
      Am        D 
Dan takkan bisa berubah 

Reff :

C             Am 
Relakanlah saja ini 
      Bm             D 
Bahwa semua yang terbaik 
   C              Am 
Terbaik untuk kita semua 
     Bm             D 
Menyerahlah untuk menang 


Kembali ke (*), (**), Reff (2x)

Thank You ...

Kamis, 15 November 2012

Cara Mengubah Background Blog

Saya akan posting cara mengubah background pada blog . Caranya seperti ini :

1. Login ke Blogger
2. Pilih Template lalu pilih Edit HTML dan Lanjutkan.
3. Lalu isi script ini :

body {
background: url(http://andiadp.files.wordpress.com/2012/04/manchesterunited_logo_6.jpg) no-repeat center center fixed #000;
        -webkit-background-size: cover;
        -moz-background-size: cover;
        -o-background-size: cover;
        background-size: cover;
background-attachment:fixed;
}

Sekian tips dari saya . Thank You ..

Cara Mengganti Cursor Pada Blog

Saya akan share tentang bagaimana cara mengganti cursor pada blog anda ...
caranya seperti ini :

1. Login di Blogger
2. Pilih Template lalu pilih HTML/Java Script
3. Pilih cursor yang anda inginkan . pilih di http://downloads.totallyfreecursors.com
4. Jika sudah memilih cursor yang anda inginkan, lihat screenshoot di bawah ini :


5. Pilih yang bawah lalu di copy ke kolom HTML/Java Script yang tadi di buka.

Selesai. Cursor anda sudah diganti . Thank You.

Kamis, 08 November 2012

SO_03_TUGAS6_BOBBY SETIAWAN_2011-81-071

TUGAS 6 Sistem Operasi

RINGKASAN DARI TUGAS 2, 3 DAN 4

TUGAS 2

Perintah Deskripsi Format
id menampilkan uid, gid, groups, 1(bin), 2(daemon), 3(sys),
4(adm), 6 (disk), 10 (whell)
$ id
date menampilkan tanggal. bulan, tahun dan jam sekarang $ date
cal menampilkan kalender bulan sekarang $ cal
hostname menampilkan "localhost.localdomain" $ hostname
uname menampilkan "linux" $ uname
w 14:47:12 up 6 min, 1 user , load average : 0.00,
0.03, 0.01
dan menampilkan user, tty, from, login@,
idle, jcpu, pcpu, what 
$ w
who menampilkan "root tty1 nov 8 14:46" $ who
whoami root $ whoami
chfn menampilkan informasi finger for student $ chfn
finger menampilkan "login, name, tty, idle,
login time, office, office phone"
$ finger
man ls menampilkan suatu informasi $ man ls
man man menampilkan suatu informasi $ man man
man -k file menampilkan suatu informasi $ man -k file
man 5 passwd  menampilkan suatu informasi $ man 5 passwd
clear menghapus layar $ clear
apropos date menampilkan suatu informasi $ apropos date
apropos mail menampilkan suatu informasi $ apropos mail
apropos telnet menampilkan suatu informasi $ apropos telnet
whatis date menampilkan jam sekarang $ whatis date
ls menampilkan isi direktori $ ls
ls -l menampilkan semua file lengkap $ ls -l
ls -a menampilkan semua file yang tersembunyi ls -a
ls -f menampilkan semua file tanpa proses sorting ls -f
ls /usr menampilkan isi suatu direktori $ ls /usr
ls / menampilkan isi direktori root $ ls /
ls -F /etc menampilkan semua direktori $ ls -F /etc
ls -l /etc menampilkan isi direktori secara lengkap $ ls -l /etc
ls -R /usr menampilkan semua file dan isi direktori $ ls -R/usr
file melihat tipe file $ file
file * melihat tipe file $ file *
file /bin/ls melihat tipe file $ file /bin/ls
cp /etc/group f1
ls -l
cp -i f1 f2
cp -i f1 f2
mengkopi file f1 ke f2
$ cp /etc/group f1
$ ls -l
$ cp -i f1 f2
$ cp -i f1 f2
mkdir backup membuat direktori yang bernam "backup" $ mkdir backup
cp f1 f3 mengkopi file f1 ke f3  $ cp f1 f3
cp f1 f2 f3 backup mengkopi file ke backup $ cp f1 f2 f3 backup
ls backup melihat isi file backup $ ls backup
cd backup masuk ke direktori backup $ cd backup
ls melihat isi file yang ada didalam direktori
saat ini
$ ls
cat f1 melihat isi file $ cat f1
more f1 melihat isi file $ more f1
pg f1 melihat isi file $ pg f1
mv f1 prog.txt mengubah nama file f1 menjadi prog.txt $ mv f1 prog.txt
mkdir mydir
mv f1 f2 f3 mdir
memindahkan file f1, f2, f3 ke direktori lain
$ mkdir mydir
$ mv f1 f2 f3 mdir
rm f1 menghapus file f1 $ rm f1
cp mydir/ f1 f1 menghapus file $ cp mydir/ f1 f1
cp mydir/ f2 f2 menghapus file $ cp mydir/ f2 f2
rm -i f2 menghapus file secara regular dari file f2 $ rm -i f2
grep root/ etc passwd
grep ":0:"/ etc passwd
grep student/ etc passwd
mencari kata dalam file
$ grep root/ etc passwd
$ grep ":0:"/ etc passwd
$ grep student/ etc passwd

TUGAS 3

SOAL :

1. Perintah apa saja yang digunakan untuk membuat suatu file ?
2. Apa yang dimaksud dengan direktori? bagaimana cara keluar masuk direktori?

JAWAB :

1. Perintah yang digunakan untuk membuat file :

a. touch nmfile
b. cat > nmfile
    cat>> nmfile
c. echo > nmfile
    echo>> nmfile

2. Direktori adalah file yang berisi daftar nama dan bilangan inode dari masing masing file .

cara masuk ke direktori :
cd [nama file yang dituju]
contoh : cd file1 --> perintah ini untuk masuk ke direktori file1.
cd .. --> perintah ini digunakan untuk pergi ke direktori awal (root).

TUGAS 4

A. Membuat Suatu Percobaan di Linux.

Percobaan 1 : Direktory

-     Melihat direktory HOME 






















 -     Melihat direktori aktual dan parent direktori.


 -          Membuat satu direktori, lebih dari satu direktori atau sub direktori.

    -     Menghapus satu atau lebih direktori hanya dapat dilakukan pada direktori kosong dan hanya dapat dihapus oleh pemiliknya kecuali jika diberi ijin aksesnya.



      Jika terdapat pesan error karena direktori yang ingin dihapus berisi file / tidak kosong atau tidak diberikan ijin akses.
      

      Pada perintah “ls –l b” terdapat pesan error karena sebelumnya direktori b sudah dihapus pada      perintah sebelumnya.
      
      -          Navigasi direktori dengan instruksi cd untuk pindah dari satu direktori ke direktori lainnya.
   

        
      Pada perintah “cd /<d/c” , terdapat pesan error karena direktori c terdapat di direktori sebelumnya, bukan di direktori home.

Percobaan 2 : Manipulasi file 
        
       -     Perintah cp untuk mengkopi file atau seluruh direktori.
        

            -            Perintah mv untuk memindah file. 
            
         
            -       Perintah rm untuk menghapus file.          

        
-             Percobaan 3 : Symbolic link.

-            -           Membuat shortcut (file link).


     Percobaan 4 : Melihat isi file.

          
           Percobaan 5 : Mencari File

         -     Perintah find


            


   
        -     Perintah which ls

     
         -     Perintah locate

          
          Percobaan 6 : Mencari text pada file.


         
     B). pada percobaan 1 point 3 buatlah pohon dari struktur file dan direktori
      
      -    Perintah  $ mkdir A B C A/D A/E B/F A/D/A digunakan untuk membuat direktori A ,B, C didalam direktori A ada direktori D dan E, di direktori D ada direktori A, didalam direktori B ada direktori F. 

      Struktur file direktorinya : 


      C.)  Penyebab dari pesan error sudah dijelaskan dibagian a.
   

Rabu, 31 Oktober 2012

Tugas SO Praktikum 5 - Proses dan Manajemen Proses

NAMA : BOBBY SETIAWAN
NIM     : 2011-81-071
TUGAS SISTEM OPERASI PRAKTIKUM 5

1. Apa yang dimaksud dengan proses ?

Proses adalah program yang dieksekusi . Proses juga serangkaian langkah sistematis, atau tahapan yang jelas dan dapat ditempuh berulangkali, untuk mencapai hasil yang diinginkan. Jika ditempuh, setiap tahapan itu secara konsisten mengarah pada hasil yang diinginkan.

2. Apa yang dimaksud dengan perintah untuk menampilkan status proses : ps, pstree?

Perintah ps dapat digunakan untuk menunjukkan semua proses yan sedang berlangsung pada mesin (bukan hanya proses shell pada saat ini).

Perintah pstree sama halnya dengan perintah ps.Pstree juga mempunyai fungsi yang sama untuk melihat status proses yang berjalan pada sistem. Tetapi informasinya di perlihat dengan bentuk tree (pohon).

3. Sebutkan opsi yang dapat diberikan pada perintah ps !

a. $ ps -u
Untuk melihat faktor/elemen lainnya, gunakan option –u (user). %CPU adalah presentasi CPU time yang digunakan oleh proses tersebut, %MEM adalah presentasi system memori yang digunakan proses, SIZE adalah jumlah memori yang digunakan, RSS (Real System Storage) adalah jumlah memori yang digunakan, START adalah kapan proses tersebut diaktifkan.

b. $ ps –u
Mencari proses yang spesifik pemakai. Proses diatas hanya terbatas pada proses milik pemakai, dimana pemakai teresbut melakukan login.

c. $ ps –a
$ ps –au
Mencari proses lainnya gunakan opsi a (all) dan au (all user).

d. $ ps –eH
Opsi e memilih semua proses dan opsi H menghasilkan tampilan proses secara hierarki. Proses child muncul dibawah prosesparent. Proses child ditandai dengan awalan beberapa spasi.

e. $ ps –e fTampilan serupa dengan langkah 2. Opsi –f akan menampilkan status proses dengan karakter grafis (\ dan _).

f. $ pstree+
Akan ditampilkan semua proses pada sistem dalam bentuk hirarki parent/child. Proses parent di sebelah kiri proses child. Sebagai contoh proses init sebagai parent (ancestor) dari semua proses pada sistem. Beberapa child dari init mempunyai child. Proses login mempunyai proses bash sebagai child. Proses bash mempunyai proses child startx. Proses startx mempunyai child xinit dan seterusnya.

g. $ pstree | grep mingetty
Akan menampilkan semua proses mingetty yang berjalan pada system yang berupa console virtual. Selain menampikan semua proses, proses dikelompokkan dalam satu baris dengan suatu angka sebagai jumlah proses yang berjalan.

h. $ pstree –p
Untuk melihat semua PID untuk proses gunakan opsi –p.

i. $ pstree –h
Untuk menampilk an proses dan ancestor yang tercetak tebal gunakan opsi –h.

j. $ ps –e | more
Opsi -e menampilkan semua proses dalam bentuk 4 kolom : PID, TTY, TIME dan CMD.

k. $ ps ax | more
Opsi a akan menampilkan semua proses yang dihasilkan terminal (TTY). Opsi x menampilkan semua proses yang tidak dihasilkan terminal. Secara logika opsi ini sama dengan opsi –e . Terdapa 5 kolom : PID, TTY, STAT, TIME dan COMMAND.

l. $ ps ef | more
Opsi –e f akan menampilkan semua proses dalam format daftar penuh.

m. $ ps –eo pid,cmd | moreOpsi –eo akan menampilkan semua proses dalam format sesuai definisi user yaitu terdiri dari kolom PID dan CMD.

n. $ ps –eo pid,ppid,%mem,cmd | more
Akan menampilkan kolom PID, PPID dan %MEM. PPID adalah proses ID dari proses parent. %MEM menampilkan persentasi memory system yang digunakan proses. Jika proses hanya menggunakan sedikit memory system akan dita mpilkan 0.

4. Apa yang dimaksud dengan sinyal ? Apa perintah untuk mengirim sinyal ?

a. Mengirim sinyal adalah satu alat komunikasi antar proses, yaitu memberitahukan proses yang sedang berjalan bahwa ada sesuatu yang harus dikendalikan. Berdasarkan sinyal yang dikirim ini maka proses dapat bereaksi dan administrator/programmer dapat menentukan reaksi tersebut.

b. kill [-nomor sinyal] PID

5. Apa yang dimaksud dengan proses foreground dan background pada job control?

a. Job pada foreground adalah roses yang diciptakan oleh pemakai langsung pada terminal (interaktif, dialog). Pada foreground hanya diperuntukkan untuk satu job pada satu waktu. Job pada foreground akan mengontrol shell menerima input dari keyboard dan mengirim output ke layar.

b. Job pada background tidak menerima input dari terminal, biasanya berjalan tanpa memerlukan interaksi.

6. Apa yang dimaksud dengan perintah – perintah penjadwalan prioritas ?
top, nice, renice.

a. Top = memberikan informasi (sering di refresh) tentang yang paling CPU-intensif proses yang sedang berjalan.

Deskripsi bidang suatu

- PID – ID Proses Tugas uni proses Id, yang secara periodik membungkus, meskipun tidak pernah restart nol.
- PPID – PID induk proses
Proses Id dari orang tua tugas itu.
- UID – Buku ID

b. Nice = bagus menjalankan perintah dengan prioritas di modifikasi
Perintah bagus digunakan untuk menjalankan perintah yang diberikan dengan penjadwalan yang prioritas sisesuaikan. Prioritas berkisar pergi dari – 20(prioritas tertinggi) sampai 19(prioritas terendah).

Contoh :
$ Bagus – mencetak nilai prioritas saat ini.
$ ls bagus – Kenaikan nilai prioritas dari perintah ls dengan 10(default value)dan jalankan.
$ bagus –n 5 ls kenaikan nilai prioritas dari perintah ls dengan 5 dan jalankan.
# bagus –n -2 ls pengurangan nilai prioritas akan mengurangi tingkat prioritas dari perintah ls dengan -2 dan menjalankan.

c. Renice = untuk mengubah prioritas penjadwalan dari satu atau lebih menjalankan proses, prioritas berkisar pergi dari -20( prioritas tertinggi) sampai 19(prioritas terendah).

Contoh:
$ renice 1 123 – kenaikan nilai prioritas proses, yang proses ID adalah 123.

# renice 1 123 – pengurangan nilai prioritas proses, yang proses ID adalah 123. (Root hanya dapat pengurangan)

$renice 1-p 123-p 200 – sama seperti diatas. Disini tidak ada proses. Proses adalah 2.
$ renice 1-u sbharathi – kenaikan nilai prioritas dari semua proses, yang miliki oleh pengguna(sbharathi).
$ renice 1-g cadangan – kenaikan nilai prioritas daris semua proses, yang dimiliki oleh kelompok(cadangan).