DEADLOCK

1. Pendahuluan

Proses terlibat di dalam deadlock jika proses menunggu suatu kejadian tertentu yang tidak akan pernah terjadi.

Syarat-syarat perlu terjadinya deadlock :
Coffiman, et al. [Cof-71] menyatakan empat syarat terjadinya deadlock, yaitu :
a. Mutual exclusion.
Sumber daya saat itu diberikan pada tepat satu proses.
b. Kondisi genggam dan tunggu.
Proses-proses yang sedang menggenggam sumber daya, menunggu sumber daya-sumber daya baru.
c. Kondisi non-preemption.
Sumber daya–sumber daya yang sebelumnya diberikan tidak dapat diambil paksa dari proses yang sedang menggenggamnya. Sumber daya-sumber daya harus secara eksplisit dilepaskan dari proses yang menggenggamnya.
d. Kondisi menunnggu secara sirkuler.
Harus terdapat rantai sirkuler dari dua proses atau lebih, masing-masing menunggu sumber daya yang digenggam oleh anggota berikutnya pada rantai itu.


2. Metode Mengatasi Deadlock

a. Metode pencegahan terjadinya deadlock.
b. Metode penghindaran terjadinya deadlock.
c. Metode deteksi dan pemulihan dari deadlock.

Strategi Burung Unta. Strategi ini mengasumsikan kejadian dadlock jarang terjadi dibandingkan kejadian computer mengalami crash. Mengapa bersusah payah mengatasi deadlock ? Toh, sistem lebih sering rusak karena crash. Disebut strategi burung unta karena solusi ini sebenarnya tidak mempedulikan adanya masalah. Strategi ini berarti sama sekali tidak berusaha untuk mengatasi deadlock atau sama sekali tidak ada metode yang diterapkan untuk mengatasi deadlock.


3. Metode Pencegahan deadlock

Havender [HAV-68] mengemukakan bahwa jika sembarang syarat dari keempat syarat terjadinya deadlock tidak terpenuhi maka tidak akan terjadi deadlock. Havender menyarankan strategi-strategi berikut untuk meniadakan syarat-syarat tersebut, yaitu :
a. Tiap proses harus meminta semua sumber daya yang diperlukan sekaligus dan tidak berlanjut sampai semuanya diberikan.
b. Jika proses telah sedang memegang sumber daya tertentu, untuk permintaan berikutnya proses harus melepas dulu sumber daya yang dipegangnya. Jika diperlukan, proses meminta kembali sekaligus dengan sumber daya yang baru.
c. Memberi pengurutan linear terhhadap tipe-tipe sumber daya pada semua proses, yaitu jika proses telah dialokasikan suatu tipe sumber daya, proses hanya boleh berikutnya meminta sumber daya-sumber daya tipe pada urutan yang berikutnya.

3.1 Mutual Exclusion

Deadlock disebabkan adanya pengaksesan ekslusif terhadap sumber daya. Jika tidak ada sumber daya ekslusif untuk suatu proses tunggal maka tidak akan pernah terjadi deadlock. Cara yang dapat ditempuh adalah dengan melakukan spooling perangkat-perangkat yang harus didedikasikan ke suatu proses. Pengaksesan sumber daya seolah-olah tidak ekslusif walau sebenarnya tetap ekslusif, hanya dengan spooling berarti permintaan-permintaan itu diantrikan di hardisk. Job-job di antrian spooler akan dilayani satu per satu.
Masalah :
a. Tidak setiap sumber daya ekslusif dapat di-spooling, misalnya tabel proses.
b. Kompetisi terhadap ruang hardisk untuk spooling dapat menuntun ke deadlock.
c. Mutual exclusion benar-benar tidak dapat dihindari, hanya mampu diperkecil granularitas/lama waktu berlangsungnya

3.2 Meniadakan Syarat Genggam dan Tunggu

a. Mengalokasikan semua sumber daya atau tidak sama sekali.
Proses hanya dilayani permintaannya bila semua sumber daya yang diperlukan tersedia. Jika tidak tersedia sedikitnya satu sumber daya, maka proses harus menunggu sampai semua sumber daya yang diperlukan tersedia untuk dialokasikan padanya.
Masalah : Sukar mengetahui lebih dulu semua sumber daya yang diperlukan suatu proses karena di awal tidak diketahui berapa sumber daya yang diperlukan dan cara ini dapat mengakibatkan penggunaan sumber daya yang tidak efisien.
b. Hold and release
Genggam dan lepaskan, yaitu setiap kali terjadi permintaan suatu sumber daya maka proses harus melepas sumber daya lain yang telah digunakan. Pada satu saat, hanya satu sumber daya yang dialokasikan untuk proses.
Masalah : Teknik ini tidak memungkinkan sebab terdapat proses yang mensyaratkan harus memegang beberapa sumber daya sekaligus untuk melanjutkan eksekusinya.

3.3 Meniadakan Non-Preemption

Peniadaan non-preemption mencegah proses-proses lain harus menunggu. Seluruh proses menjadi preemption agar tidak ada kejadian tunggu-menunggu.
Masalah : Tidak mungkin meniadakan non-preemption.

3.4 Meniadakan Menunggu Sirkular

a. Proses hanya dibolehkan menggenggam satu sumber daya pada satu saat. Jika perlu sumber daya kedua, proses harus melepas sumber daya yang pertama (hold and release).
Masalah : Teknik ini tidak dimungkinkan karena terdapat proses yang mengharuskan memegang lebih dari satu sumber daya pada saat yang sama untuk menyelesaikan prosesnya
b. Penomoran global semua sumber daya. Proses dapat meminta dijalankan kapanpun menginginkan tapi permintaan harus dibuat terurut secara numeric. Cara ini tidak akan menimbulkan siklus.
Masalah : Tidak ada cara pengurutan nomor sumber daya yang memuaskan semua pihak.


4. Metode Menghindari Terjadinya deadlock

Gagasan dasar penghindaran deadlock adalah hanya memberi akses ke permintaan sumber daya yang tidak mungkin menimbulkan deadlock. Strategi ini biasanya diimplementasikan dengan pengalokasi sumber daya memeriksa dampak-dampak pemberian akses ke suatu permintaan.
• Jika pemberian akses sumber daya tidak mungkin menuju deadlock, sumber daya diberikan permintaan
• Jika tidak aman (memungkinkan terjadinya deadlock), proses yang meminta di-suspend sampai suatu waktu permintaannya aman diberikan. Kondisi ini biasanya terjadi setelah satu sumber daya atau lebih yang semula dipegang oleh proses-proses aktif lain dilepaskan.

Agar dapat mengevaluasi safe-nya state, penghindaran deadlock mengharuskan semua proses menyatakan jumlah kebutuhan sumber daya maksimum sebelum eksekusi. Jika kebutuhannya melebihi kapasitas total sistem maka proses tidak dapat dieksekusi. Jika kebutuhan sumber daya yang diperlukan sudah tersedia semua, maka sistem akan memeriksa apakah pemberian sumber daya akan menuntun ke deadlock  (memeriksa apakah proses-proses yang telah aktif dapat secara selamat selesai). Jika dapat berakhir secara selamat, maka sumber daya dialokasikan ke proses yang meminta.

State selamat (safe state)
State dinyatakan sebagai state selamat (safe state) jika tidak deadlock dan terdapat cara untuk memenuhi semua permintaan yang ditunda tanpa menghasilkan deadlock dengan menjalankan proses-proses secara hati-hati mengikuti suatu urutan tertentu.

State tak selamat (unsafe state)
State dinyatakan sebagai state tak selamat jika tidak terdapat cara untuk memenuhi semua permintaan yang saat ini ditunda dengan menjalankan proses-proses dengan suatu urutan.


5. Metode Deteksi dan Pemulihan dari Deadlock

• Deteksi deadlock adalah teknik untuk menentukan apakah deadlock terjadi serta mengidentifikasi proses-proses dan sumber daya-sumber daya yang terlibat deadlock. Umumnya algoritma-algoritma deteksi yang digunakan adalah menentukan keberadaan menunggu sirkular (circular wait). Penggunaan algoritma deteksi deadlock melibatkan overhead pada saat berjalan karena secara periodik dijalankan untuk mendeteksi circular wait. Sembarang algoritma pendeteksian siklus pada graph berarah dapat digunakan.
• Begitu sistem terdapat deadlock dpat dipulihkan dengan menghilangkan satu syarat perlu atau lebih. Biasanya beberapa proses akan kehilanggan sebagian atau semua kerja yang telah dilakukan. Hal ini merupakan ongkos yang harus dibayar disbanding terjadinya deadlock yang berarti proses tidak menghasilkan apa pun.

Pemulihan dari deadlock dirumitkan oleh faktor-faktor berikut :
a. Belum tentu dapat menentukan adanya deadlock dengan cepat
b. Kebanyakan sistem mempunyai fasilitas buruk untuk men-suspend proses, menghilangkan proses dari sistem untuk di-resume di lain waktu.
c. Jika kemampuan men-suspend dan me-resume ini tersedia dan efektif, maka akan melibatkan sejumlah overhead. Itu berarti memerlukan kemampuan operator yang tinggi. Operator semacam ini tidak selalu tersedia.
d. Pemulihan memerlukan sejumlah kerja yang berarti.

Teknik pemulihan yang biasa digunakan adalah menghilangkan (dengan suspend atau kill) proses-proses dari sistem dan pengklaiman kembali (reclaim) sumber daya-sumber daya yang dipegang proses-roses itu. Proses yang dihilangkan biasanya akan cacat, tapi proses-proses lain dapat menyelesaikan prosesnya.

Pendekatan berikut dapat dilakukan untuk pemulihan deadlock :
a. Abaikan (singkirkan) semua proses yang terlibat deadlock. Teknik ini merupakan cara termudah dan solusi yang paling sering dipilih.
b. Back-up semua proses yang terlibat deadlock ke suatu checkpoint yang didefinisikan sebelumnya dan jalankan kembali semua proses itu. Resikonya, deadlock semula dapat terjadi lagi, tetapi karena ketidaktentuan pemrosesan konkuren, biasanya menjamin tidak akan terjadi deadlock serupa.
c. Seacara berurutan abaikan (singkirkan) proses-proses sampai deadlock tidak ada lagi.
d. Secara berurutan preempt sumber daya-sumber daya sampai tidak ada lagi deadlock.



6. Strategi Penanggulangan Deadlock Terpadu

Masing-masing teknik mempunyai keunggulan dan kelemahan, maka daripada berusaha merancang fasilitas sistem operasi dengan satu strategi penanggulangan deadlock maka lebih efisien menggunakan strategi-strategi berbeda untuk situasi-situasi berbeda. Silberschatz [SIL-94] menyarankan satu pendekatan terpadu, yaitu :
a. Kelompokan sumber daya-sumber daya menjadi sejumlah kelas sumber daya
b. Gunakan strategi pengurutan linear seperti yang didefinisikan pada pencegahan menunggu sirkular. Strategi ini digunakan untuk mencegah deadlock di antara kelas-kelas sumber daya berbeda.
c. Dalam satu kelas sumber daya, gunakan algoritma yang paling cocok untuk kelas-kelas sumber daya itu.

KONGKURENSI

1. Pendahuluan

Proses-proses diebut kongkuren jika proses-proses (lebih dari satu proses) berada pada saat yang sama. Konkurensi menjadi sangat penting karena saat ini hamper seluruh sistem adalah multiprogramming yang mengharuskan adanya proses-proses kongkuren. Pada proses-proses kongkurensi yang saling berinteraksi akan mempunyai masalah dasar yang harus diselesaikan, yaitu :
a. Mutual Exclusion
b. Deadlock
c. Starvision
d. Sikronisasi


2. Prinsip-prinsip Konkurensi

Konkurensi meliputi hal-hal berikut :
a. Alokasi layanan pemroses untuk proses-proses
b. Pemakaian bersama dan persaingan untuk mendapatkan sumber daya
c. Komunikasi antar proses
d. Sinkronisasi aktivitas banyak proses

Konkurensi dapat terjadi pada empat konteks berikut :
a. Untuk banyak aplikasi
Sistem multiprogramming memungkinkan banyak aplikasi/proses sekaligus dijalankan di satu pemroses. Proses-proses dapat berasal dari aplikasi-aplikasi yang berbeda.
b. Untuk strukturisasi dari aplikasi
Suatu aplikasi dapat secara efektif diimplementasikan sebagai sekumpulan proses. Dengan sekumpulan proses maka masing-masing proses menyediakan satu layanan spesifik tertentu.
c. Untuk strukturisasi dari satu proses
Saat ini untuk peningkatan kinerja maka satu proses dapat memiliki banyak thread yang independen. Thread-thread tersebut harus dapat bekerjasama untuk mencapai tujuan proses.
d. Untuk strukturisasi sistem operasi
Keunggulan strukturisasi dapat juga diterapkan ke pemograman sistem. Beberapa sistem operaso actual yang dipasarkan dan yang sedang dalam riset telah diimplementasikan sebagai sekumpulan proses.



3. Kesulitan-kesulitan yang Ditimbulkan Kongkurensi

Masalah yang dihadapi proses-proses konkuren pada multiprogramming dan multiprocessing serupa, yaitu kecepatan eksekusi proses-proses di sistem tidak dapat diprediksi. Beberapa kesulitan dapat muncul diantaranya :
a. Pemakaian bersama sumber daya global
Jika kedua proses menggunakan variable global yang sama serta keduanya membaca dan menulis variable itu maka urutan terjadinya pembacaan dan penulisan terhadap variable bersama menjadi kritis.
b. Pengelolaan alokasi sumber daya agar optimal
Jika proses A meminta suatu sumber daya, lalu diberikan. Kemudian ternyata proses A tersebut ditunda (suspend) sebelum ia menggunakannya. Dan jika sistem operasi mempunyai kebijaksanaan mengunci sumber daya (sehingga tidak membolehkan pemakaian oleh proses lainnya) dan mencegah proses-proses lain menggunakan sumber daya tersebut maka tindakan ini jelas hanya menghasilkan inefisiensi sistem computer.
c. Pencarian kesalahan pemrograman
Pencarian kesalahan pada pemograman kongkuren lebih sulit dibandinng pencarian kesalahan pada program-program sekuen.

Proses-proses konkuren mengharuskan sistem operasi menangani hal berikut :
a. Mengetahui proses-proses aktif
b. Alokasi dan dealokasi sumber daya untuk tiap proses aktif
c. Proteksi data dan sumber daya fisik proses
d. Hasil-hasil proses harus independen.


4. Mutual Exclusion

Di sistem computer, terdapat sumber daya yang tidak dapat dipakai bersama pada saat bersamaan seperti rinter. Sumber daya hanya dapat digunakan satu proses pada satu saat. Sumber daya semacam ini disebut sumber daya kritis. Bagian program yang menggunakan sumber daya kritis disebut sedang memasuki critical region/section. Dengan demikia, hanya satu program pada satu saat yang diijinkan masuk critical region. Pemrogram tidak dapat bergantung pada sistem operasi untuk memahami dan memaksakan batasan ini karena maksud program tidak dapat diketahui oleh sistem operasi. Sistem operasi memberikan fasilitas untuk pemrogram dapat memberikan indikasi keberadaan crical region. Sistem operasi menyediakan layanan untuk mencegah proses masuk critical region yang sedang dimasuki proses lain.


5. Deadlock
Misalnya terdapat dua proses, P1 dan P2. Dua sumber daya kritis, R1 dan R2. Proses P1 dan P2 harus mengakses kedua sumber daya. Jika R1 diberikan ke P1, sedang R2 diberikan ke P2. Karena untuk melanjutkan eksekusi memerlukan kedua sumber daya sekaligus maka kedua proses akan saling menunggu sumber daya yang lainnya, selamanya. Tidak ada proses yang dapat melepaskan sumber daya yang telah dipegangnya karena menunggu sumber daya lain yang tidak pernah diperolehnya. Keduanya tidak membuat kemajuan apapun. Kedua proses ini dalam keadaan deadlock. Kondisi deadlock merupakan kondisi terparah karena banyak proses dapat terlibat dan semua yang terlibat tidak dapat mengakhiri prosesnya secara benar.


6. Starvation
Misalnya terdapat tiga proses, P1, P2, dan P3. Ketiganya memerlukan sumber daya R secara periodik. P1 sedang diberi sumber daya R, P2 dan P3 blocked menunggu sumber daya R. Ketika P1 keluar dari critical section, P2 dan P3 diijinkan mengakses R. Asumsi P3 diberi akses. Kemudian setelah selesai, hak akses kembali diberikan ke P1 yang saat itu telah kembali membutuhkan sumber daya R. Jika pemberian hak akses bergantian terus-menerus Antara P1 dan P3. Maka P2 tidak pernah memperoleh pengaksesan sumber daya R, meskipun tidak ada deadlock. Pada situasi ini, P2 mengalami starvation.


7. Interaksi Antar Proses
a. Proses-proses saling tidak peduli. Pada multiprogramming dengan proses-proses independen, dapat berupa batch atau sesi interaktif atau campuran keduanya.
b. Proses-proses saling mempedulikan secara tidak langsung. Proses-proses tidak perlu saling mempedulikan identitas proses lain tapi sama-sama mengakses objek tertentu. Proses-proses itu saling bekerjasama (cooperation) dalam memakai objek tertentu.
c. Proses-proses saling mempedulikan secara langsung. Proses-proses dapat saling berkomunikasi dan dirancang bekerjasama untuk suatu aktivitas.
Derajat Kepedulian Hubungan Akibat Satu Proses terhadap Proses Lain Masalah Pengendalian yang Perlu Dilakukan


Desain Cover DVD

Setahun lalu aku menjadi Asisten Laboratorium Komputer di Jurusan Pendidikan Matematika UPI, tempatku menuntut ilmu sekarang. Aku berkesempatan duduk di divisi Dokumentasi dan Multimedia. Secara garis besar, divisi ini mempunyai tugas utama untuk meliput setiap kegiatan Jurusan Pendidikan Matematika. Cukup banyak kegiatan yang harus aku liput saat itu, cukup menyenangkan karena pada dasarnya aku senang merekam atau membidik sesuatu dengan kameraku. Salah satu kegiatan yang kuliput adalah Cerdas Cermat Matematika (CCM), yaitu perlombaan matematika tingkat SMA yang mengisi serangkaian acara Gema Mahasiswa Matematika (GMM) UPI. Liputan tersebut harus aku edit agar lebih nyaman untuk ditonton, lalu hasilnya dikemas menjadi bentuk di DVD. Lagi-lagi aku menggunakan salah satu aplikasi yang kusuka, CorelDraw, untuk mendesain cover tersebut. Ini desain cover yang telah kubuat, beserta desain stiker keping DVD nya. Semoga bisa menginspirasi :)


stiker keping DVD
cover depan
cover belakang


Jaringan Peer To Peer

Jaringan peer to peer adalah sebuah pengaturan jaringan komputer yang memungkinkan kita bertindak sebagai client dan server. Client artinya komputer kita dapat menerima data dari komputer lain dalam jaringan, sedangkan server artinya komputer kita dapat menyebarkan data ke komputer lainnya dalam jaringan.

Jaringan Peer To Peer adalah jaringan yang sederhana dan konfigurasinya cukup mudah. Bagaimana caranya ? Ini dia tutorial yang aku buat. Sebetulnya video ini kubuat demi keperluan tugas mata kuliah. Hehe :p



KKN Ceria

Beberapa bulan yang lalu aku melakukan Kuliah Kerja Nyata (KKN). Sangat antusias sekali untuk mengikuti mata kuliah yang satu ini karena aku berharap bisa belajar sesuatu yang baru dari sana. Ya, KKN mengharuskanku selama 40 hari berada di sebuah desa untuk turut membantu mengembangkan desa tersebut dalam berbagai aspek. Aku memilih KKN yang bertema POSDAYA yaitu pusat pemberdayaan keluarga. Jadi di sana ada tuntutan untuk bagaimana caranya agar bisa mengembangkan potensi setiap individu dalam keluarga, ayah, ibu, dan anak agar mampu memajukan kehidupannya menjadi lebih baik dalam segala aspek. Banyak sekali yang kami buat saat itu. Susah dan senang kami lalui bersama.

Ah ya, aku mendapat lokasi KKN yang sangat menyenangkan. Di sebuah desa yang belum pernah aku kunjungi, bahkan aku ketahui sebelumnya. Letaknya ada di pegunungan, salah satu sudut Kabupaten Garut yang asri. Udaranya bersih dan pemandangannya sungguh indah.  Sangat berbeda dengan apa yang biasanya aku temui di Bandung. Dan yang paling memberi warna adalah kesepuluh teman baru yang menemani hari-hariku selama di sana. Mereka memiliki karakter masing-masing yang berbeda satu sama lain. Sempat butuh enyesuaian panjang untuk bisa mengerti satu sama lain, tapi kami senantiasa bersatu dan menjaga kehangatan pertemanan ini demi memajukan proker yang kami buat untuk kemajuan desa. Semoga saja apa yang kami lakukan bisa bermanfaat bagi masyarakat di sana. Aamiinn ...

40 hari, banyak sekali yang terjadi. Aku tidak dapat menceritakannya satu per satu. Mungkin penggalan video ini bisa menyampaikan semuanya. Senang sekali bisa mengenal Geng Renceum yang luar biasa ini :D hehe

Hak Akses Linux

HAK AKSES ITU APA ?
Hak akses adalah sebuah hak yang diberikan pada seluruh user untuk melakukan suatu akses. Hak akses ini dapat diatur sedemikian rupa supaya file atau direktori itu bisa dibaca, ditulis, atau dieksekusi. Tujuannya adalah untuk proteksi file itu sendiri. Selain mengatur hak akses akun sendiri, kita juga bisa mengatur hak akses setiap user pada suatu file atau direktori.

Untuk melihat hak akses pada linux, gunakan command di bawah ini :
$ ls -l
sehingga akan muncul output seperti berikut
sumber : modul sistem operasi ILKOM UPI, Bandung
Hak akses ditunjukan oleh kolom pertama, dengan tiap karakternya memiliki arti tersendiri, yang sudah dijelaskan di artikel manajemen file dan direktori.

Terdapat tiga macam hak akses dari sebuah file, yaitu :
READ : Mengizinkan user lain untuk membaca isi dari file tersebut tapi user lain tidak dapat melakukan perubahan isi file.
WRITE : Mengizinkan user lain untuk dapat membaca dan melakukan perubahan terhadap isi file, termasuk menghapusnya.
EXECUTE : Mengizinkan user lain dapat mengeksekusi/menjalankan file (biasanya berupa script atau program).

KEPEMILIKAN FILE
Setiap file di sistem Linux Anda, termasuk direktori, dimiliki oleh pengguna tertentu dan grup. Oleh karena itu, hak akses file didefinisikan secara terpisah untuk user, grup, dan lain-lain.

USER : Username dari orang yang memiliki file tersebut. Secara default, pengguna yang
menciptakan file tersebut akan menjadi pemiliknya.
GRUP: Hak akses grup tempat user tersebut berada.
Semua pengguna yang termasuk ke dalam kelompok yang memiliki file tersebut akan memiliki hak akses yang sama ke file. Hal ini berguna jika, misalnya, Anda memiliki proyek yang membutuhkan banyak pengguna yang berbeda untuk dapat mengakses file tertentu, sementara yang lain tidak bisa. Dalam hal ini, Anda akan menambahkan semua pengguna ke dalam kelompok yang sama, pastikan file yang dibutuhkan dimiliki oleh kelompok itu, dan mengatur hak akses sesuai grup file tersebut.
Other: Seorang pengguna yang bukan pemilik file tersebut dan tidak termasuk dalam
kelompok yang sama.
Dengan kata lain, jika Anda menetapkan izin untuk kategori "other", itu akan mempengaruhi orang lain secara default.

Berikut rincian penjelasan kepemilikan file terhadap sebuah file atau direktori.
sumber : http://basircomputer.blogspot.com

Hak akses juga dikonversi ke dalam bentuk biner dan desimal seperti pada gambar berikut :
sumber : http://basircomputer.blogspot.com

MENGATUR HAK AKSES


Anda dapat mengatur hak akses file dengan perintah chmod. Kedua user, root dan pemilik file dapat mengatur hak akses file. chmod memiliki dua mode, simbolik dan numerik.

Mode Simbolik
Mode simbolik cukup mudah diingat.
Pertama, Anda memutuskan apakah Anda mengatur hak akses bagi pengguna (u), kelompok (g), lainnya (o), atau ketiganya (a).
Kemudian, Anda menambahkan izin (+), hapus (-), atau menghapus izin sebelumnya dan menambahkan yang baru (=).
Selanjutnya, Anda memutuskan apakah Anda mengatur izin read (r), write (w), atau execute (x). Terakhir, Anda akan memberitahu chmod, hak akses file mana yang ingin Anda ubah.

chmod = change mode, adalah command  pada Linux yang berfungsi untuk mengurangi atau memberikan izin (akses) pada suatu file atau direktori dan user serta grup.

Contoh penggunaan :

Menghapus semua hak akses tetapi menambahkan izin write untuk semua orang :
$ chmod a=r contohfile
Setelah perintah, izin file itu akan menjadi -r--r--r--
$ chmod g+x contohfile
Setelah perintah, izin file itu akan menjadi -r--r-xr--
$ chmod u+wx contohfile
Setelah perintah, izin file itu akan menjadi -rwxr-xr--
$ chmod ug-x contohfile
Setelah perintah, izin file itu akan menjadi -rw-r—r--


Mode Numerik(desimal)
Mode lain dimana chmod dapat digunakan adalah mode numerik. Dalam mode numerik, hak akses file tidak diwakili oleh karakter. Sebaliknya, mereka diwakili oleh tiga digit nomor oktal.
4 = read (r)
2 = write (w)
1 = execute (x)
0 = tidak ada izin (-)
Untuk mendapatkan bit permission yang Anda inginkan, Anda menjumlahkan angka yang sesuai dengan hak aksesnya. Misalnya, izin rwx adalah 4 +2 +1 = 7, rx adalah 4+1 = 5, dan rw adalah 4 +2 = 6. Karena Anda mengatur hak akses terpisah untuk pemilik, grup, dan lain-lain, Anda akan memerlukan nomor tiga digit yang mewakili hak akses dari semua kelompok-kelompok ini.

Kita lihat contoh di bawah ini :
$ chmod 755 contohfile
Perintah diatas akan mengubah hak akses contohfile menjadi -rwxr-xr-x. Pemilik akan memiliki hak akses penuh, read, write, dan execute (7 = 4 +2 +1), grup dan yang lain akan memiliki hak akses read dan execute (5 = 4 +1).

Contoh lain :
$ chmod 640 contohfile
Dalam hal ini, izin contohfile akan menjadi-rw-r-----. Pemilik akan memiliki izin read dan write (6 = 4 +2), kelompok memiliki izin read (4), dan yang lain tidak memiliki izin akses (0).
Mode numerik mungkin tidak sesederhana mode simbolik, tetapi dengan mode numerik, Anda dapat lebih cepat dan efisien mengatur hak akses file.


MENGUBAH KEPEMILIKAN FILE ATAU DIREKTORI
Pemilik sebuah file atau direktori dapat diganti menjadi milik user yang lain. Untuk mengganti digunakan perintah chown. Berikut adalah cara penulisannya :
$ chown flag [pemilik baru] [nama file atau direktori]
Untuk melihat kepemilikan suatu file dan group, gunakan perintah ls dengan option -l.
Contoh output dari perintah tersebut
-rw-rw-rw- 1 azizah azizah 0 Jan 23 05:32 contohfile
Terlihat nama azizah yang pertama adalah pemilik file dan nama azizah yang kedua adalah nama groupnya. Secara default nama group sama seperti nama pemilik file.
Untuk mengubah kepemilikan file contohfile dengan user lain, kita bisa mengetikkan:
$ chown aku contohfile
Perintah tersebut mengubah kepemilikan contohfile menjadi milik user aku bukan lagi user azizah. Untuk melihat perubahannya lihat kembali detailnya dengan menggunakan perintah.
$ ls –l contohfile
Salah satu flag yang ada di chown adalah –R. Option –R ini mengubah permission semua file yang ada dalam subdirektori dalam direktori yang sedang aktif. Option –R bekerja secara rekursif,option tersebut mengubah kepemilikan semua objek yang ada dalam direktori bukan hanya kepemilikan direktorinya saja.
Contoh penggunaannya:
$ chown -R aku work
Perintah ini memberikan chown permission bagi user aku terhadap semua file yang ada di direktori work.

catatan : perintah chown harus dilakukan melalui root. User pengganti sudah harus ada dalam sistem.


Manajemen File dan Direktori

Dalam Linux, kita banyak menggunakan akses file dan direktori. Untuk memudahkan interaksi kita dengan file dan direktori tersebut, maka kita bisa melakukan manajemen file, yaitu metode dan struktur data yang digunakan sistem operasi untuk mengatur dan mengorganisir file pada disk atau partisi.
Beberapa manfaat yang bisa kita dapat dari adanya manajemen file, yaitu :
  1. Dapat mengetahui daftar konten direktori
  2. Dapat menyalin, memindahkan, ataupun menghapus berkas maupun direktori
  3. Dapat melakukan manipulasi banyak file dan direktori secara rekursif
  4. Dapat melakukan pencarian
  5. Dapat melakukan kompresi file ataupun direktori
Perintah-perintah untuk mengakses direktori :
  • mkdir untuk membuat suatu direktori, tidak mengubah posisi direktori kerja
  • pwd untuk mengetahui direktori kerja (current directory)
  • cd untuk mengubah posisi direktori kerja
  • rmdir untuk menghapus suatu direktori, ada prekondisi yaitu direktori yang akan dihapus harus kosong.
  • ls untuk melihat daftar direktori. 
Terkadang, kita perlu mengetahui informasi yang lebih mendetail dari suatu file atau direktori.
Maka dari perintah-perintah yang ada, dapat ditambah dengan perintah lainnya, contohnya :

Tampil
Menampilkan daftar direktori dengan format yang panjang (memuat informasi mendetail)
dengan menambahkan flag -l (long) dan -a (all) :
$ ls -al
Outputnya :

sumber : http://www.cyberciti.biz

Output dari ls –al merupakan sekelompok informasi seperti di atas,  terdapat 8 kolom informasi. Kolom pertama, menunjukkan jenis file dan perizinan. Kolom kedua menunjukkan link (entri direktori yang menuju ke file). Kolom ketiga menunjukkan pemilik file. Kolom keempat menunjukkan kelompok pemilik file. Dan kolom lainnya menunjukan ukuran file dalam byte, tanggal dan waktu modifikasi terahir, serta nama file.
Pada kolom pertama, terdapat 10 karakter.
Karakter pertamamenunjukkan :
d = directory-  = regular filel  = symbolic links  = Unix domain socketp = named pipec = character device fileb = block device file

Sembilan karakter lain di bagi tiga set, masing-masing tiga karakter.Set pertama (karakter kedua sampai keempat) menunjukkan permission dari user. Set kedua (karakter kelima sampai ketujuh) menunjukkan permission dari group (pengguna lain dalam kelompok). Set terakhir (karakter kedelapan sampai kesepuluh) menunjukkan permission dari other (orang lain dengan akses ke file). Tiga karakter dalam setiap set izin membaca, menulis,dan mengeksekusi file.
r  = read permissionw = write  permissionx = execute permission- = no permission
Sortir
Untuk menampilkan daftar file yang diurutkan secara alfabet, Linux menggunakan command ls.
Kita  bisa menambahkan flag tertentu untuk menyortir file sesuai yang kita inginkan.
$ ls -lt
Perintah digunakan untuk mengurutkan file berdasarkan waktu modifikasi terakhir (terbaru hingga terlama), bukan dengan nama.
$ ls -lS
Perintah di atas digunakan untuk mengurutkan berdasarkan ukuran file (terbesar hingga terkecil)
Sedangkan untuk membalik urutannya, tambahkan flag -r. Misal :
$ ls -lrS
berarti mengurutkan file dari urutan terkecil hingga terbesar.


Salin, Pindah, dan Hapus File

  • cp digunakan untuk menyalin satu atau banyak file atau direktori.
  • mw digunakan untuk memindahkan atau memberi nama baru pada satu atau banyak file atau direktori.
  • rm digunakan untuk menghapus satu atau banyak file atau direktori.
Ada beberapa flag yang bisa ditambahkan untuk command cp dan mw, diantaranya sebagai berikut :
-f atau --force
memungkinkan cp untuk menghapus file yang sudah ada walaupun file tidak dapat ditulis.
-i atau --interactive
akan meminta konfirmasi sebelum mencoba untuk mengganti file yang ada.
-b atau --backup
akan membuat cadangan dari file yang akan diganti


Command untuk membuat banyak direktori 
$ mkdir [direktori ke-1] [direktori ke-2] ... [direktori ke-n]

Command untuk membuat child direktori
$ mkdir -p d1/d2/d3
-p = parent
Jika -p tidak ditambahkan maka akan terjadi error karena sistem operasi akan membacanya sebagai perintah untuk membuat direktori dengan nama "d1/d2/d3", hal tersebut juga tidak dapat dilakukan karena sistem operasi akan membaca "/" sebagai karakter khusus.


Command untuk menghapus child direktori beserta parent-nya.
$ rmdir -p d1/d2/d3


Command untuk menghapus banyak direktori.
$ rmdir [direktori ke-1] [direktori ke-2] ... [direktori ke-n]
catatan : direktori harus kosong.


Command untuk menghapus file atau direktori secara rekursif. Ini digunakan jika terdapat banyak file atau direktori yang ingin kita hapus. Menghapus direktori beserta isinya.
$ rm -r [nama file atau direktori]

Command untuk membuat file kosong.
$ touch [nama file]
atau
$ touch [nama file ke-1] [nama file ke-2] ... [nama file ke-n]

Command untuk mencari file atau direktori, bisa dicari berdasarkan nama, tipe, atau waktu
$ find [direktori tempat anda akan mencari] -name [nama file atau direktori]
untuk mencari berdasarkan nama file atau direktori


Kompresi File
Ketika ingin membuat cadangan, arsip, atau mengirimkan file yang banyak, biasanya file-file tersebut dikompresi terlebih dahulu agar ukurannya menjadi lebih kecil. Dalam lingkungan linux, ada dua program yang populer untuk kompresi yaitu gzip dan bzip2. Perintah gzip menggunakan algoritma Lempel-Ziv, sementara bzip2 menggunakan algoritma Burrows-Wheeler.

Command untuk kompresi dengan gzip 
$gzip [nama direktori]
catatan : kumpulkan terlebih dahulu file yang akan dikompresi ke dalam satu direktori.


Command untuk dekompresi gzip
$ gzip -d [nama gzip]

Command untuk kompresi dengan bzip2 
$ bzip2 [nama direktori]
catatan : kumpulkan terlebih dahulu file yang akan dikompresi ke dalam satu direktori.


Command untuk dekompresi bzip2
$ bunzip2 [nama bzip2]



Peranan Guru dan Integrasi Teknologi dalam Mengajar

Hari kamis, 7 November 2013 lalu, Fakultas Pendidikan Matematika dan Ilmu Pengetahuan Alam (FPMIPA) Universitas Pendidikan Indonesia mengadakan kuliah umum yang diperuntukan bagi seluruh mahasiswa dan civitas akademik Prodi Pendidikan Ilmu Komputer (Ilkom) yang diisi oleh seorang Guru Besar Ilmu Pendidikan Sains dari Monash University, Australia, Bruce Waldrip. Saya berkesempatan menghadiri seminar beliau yang dilaksanakan tepatnya di Gedung Auditorium JICA lantai 2. Acara tersebut dimulai pukul 08.00 WIB.

Dalam seminarnya yang bertema "Applying Research to Our Teaching of ICT", Bruce Waldrip menekankan tentang  bagaimana sebenarnya peran teknologi dalam pendidikan. Ia juga menjelaskan sejauh mana guru memanfaatkan teknologi untuk membantu proses belajar siswa. "Dulu di sekolah seorang guru mengajarkan muridnya dengan menuliskan materi bahan ajar di papan tulis, tapi saat ini dengan bantuan teknologi, seorang guru dapat menggunakan proyektor untuk menampilkan bahan ajarnya. Hal ini dapat membuat penyampaian materi menjadi lebih cepat", ucap Bruce Waldrip. Namun, Seorang guru tidak bisa serta-merta menggunakan teknologi yang ada. Ia harus mempertimbangkan terlebih dahulu teknologi seperti apa yang dapat ia gunakan di kelas, kapan saat yang tepat untuk menggunakannya, dan alasan mengapa teknologi tersebut dipilihnya. Hal ini bertujuan agar kemudahan penggunaan teknologi yang diharapkan untuk membantu proses pembelajaran dapat tercapai. Dengan harapan pemahaman siswa menjadi lebih dalam dan meningkatkan proses berpikir siswa, bukan justru malah membingungkan siswa. Oleh karena itu seorang guru memerlukan keahlian mengintegrasikan diri dengan teknologi secara baik.

Selain mengubah cara mengajar, Bruce Waldrip juga menjelaskan bahwa peran teknologi telah mengubah cara interaksi guru dengan muridnya. Karena dengan bantuan teknologi guru cukup menampilkan materi saja, sudah pasti interaksi antara guru dengan siswa akan menurun. Ini harus diwaspadai, guru selain harus bisa memberikan pilihan yang lebih baik untuk menyajikan bahan ajar, ia juga harus memberi kebebasan bagi siswanya untuk bereksplorasi dan masih harus tetap dalam bimbingannya. Dalam artian, guru membimbing siswa agar dapat menyelesaikan suatu permasalahan dengan bantuan teknologi. Di sini guru harus benar-benar melakukan yang terbaik dalam mengajar.

Berintegrasi dengan teknologi, pasti tak luput dari peranan internet. Sekarang ini sudah banyak yang beranggapan bahwa internet dapat menyelesaikan segalanya. Internet memang memuat berjuta informasi yang sangat penting untuk pendidikan. Informasi iu ada yang baik, benar, salah, dan buruk. Jadi, apakah internet dapat menyelesaikan semua permasalahan dengan baik ? Itu bergantungan bagaimana kita menggunakannya. Inilah peranan guru agar mampu mengarahkan siswa untuk berintegrasi dengan teknologi secara baik. Adanya seorang guru adalah tidak sekedar untuk mengajar, tapi juga mendidik. Ia dapat mendidik siswa untuk menjadi pribadi yang baik. Masalah sikap adalah hal yang tak dapat diajarkan melalui teori. Namun harus diberi pengarahan secara mendalam. Hal tersebut tak dapat dilakukan oleh internet.

Dalam akhir seminarnya, Bruce Waldrip menegaskan bahwa dengan perkembangan teknologi yang sangat pesat sekarang ini, peranan seorang guru tidak akan pernah bisa digantikan oleh kecanggihan teknologi. "Karena teknologi memiliki kemampuan terbatas. Ia hanya berupa pemecahan masalah yang rasional. Ketika ada hal-hal yang irasional, manusia masih lebih unggul dalam menyelesaikannya", jelas Bruce Waldrip menutup seminarnya.

mencoba mengabadikan momen dari tempat saya duduk :p

bidikan terbaik yang bisa dijangkau kamera saya. zooming max, kurang cyber shoot. hha



Konfigurasi Access Point Linksys

Hal-hal yang perlu dipersiapkan untuk melakukan konfigurasi Access Point Linksys adalah access point itu sendiri, sebuah PC atau laptop, dan kabel UTP straight.
Langkah-langkah melakukan konfigurasi :
  1. Reset terlebih dahulu access point tersebut dengan menekan tombol reset di bagian belakang access point selama 10 detik. Hal tersebut dilakukan agar settingan access point kembali default.
  2. Setting IP pada PC atau laptop agar berada dalam satu jaringan dengan IP access point. Default access point yang kami gunakan adalah 192.162.1.245, sehingga kita bisa setting IP laptop, misal 192.168.1.253
  3. Sambungkan kabel UTP dari Acccess Point ke laptop  
  4. Buka web browser lalu ping ke alamat IP Access Point defaultnya (192.168.1.245)
  5. Selanjutnya akan muncul kotak dialog untuk login. Isikan username : (dikosongkan) dan password : admin. Klik OK dan anda akan menemukan halaman setting berbasis web dari access point sub menu Linksys.
  6. Akan muncul tampilan untuk konfigurasi Access Point. Pada menu Setup terdapat dua sub menu, yaitu Network Setup dan AP Mode. Pada submenu Network Setup kita dapat mengedit nama Access Point-nya dan tipe konfigurasinya, yaitu Dynamic IP dan Static IP. Dynamic IP berarti IP host akan diberikan oleh access point secara otomatis, sedangkan static IP, kita harus mensetting sendiri IP host agar dapat memakai fasilitas yang diberikan Access Point. Pada praktikum kali ini menggunakan Static IP.
  7. Pada sub menu AP mode terdapat 4 pilihan mode Access Poiny, yaitu Access Point (Default), IP Client (Access Point berfungsi sebagai client dari access point yang lain), Wireless Repeater (Access Point berfungsi sebagai penguat sinyal/repeater), dan Wireless Bridge (Access point berfungsi untuk menghubungkan dua buah jaringan yang berbeda/bridge). Kali ini kita pilih mode Access Point (Default)
  8. Pada menu Wireless. Di submenu Basic Wireless Setting, pilih mode mixed (kita dapat menerima semua jaringan wireless standar), edit Network Name (SSID) dengan nama access point yang kita inginkan saat dilihat publik. Misal : Kelompok2. Pilih Enable pada SSID broadcast untuk menampilkan access point agar terlihat oleh setiap host, atau disable agar tampilan access point disembunyikan.
  9. Pada submenu Wireless security, terdapat berbagai mode keamanan, diantaranya, WPA, WPA2, WEP, RADIUS, atau DISABLE. Pilih salah satu, tapi sampai saat ini yang terbaik adalah WPA atau WPA2 dengan algoritma AES. Tips : untuk shared key, pilih sandi yang sulit untuk dibaca dengan melibatkan karater unik agar keamanan lebih terjamin.
  10. Untuk keamanan juga sebaiknya kita mengganti IP Access Point dan passwordnya, ini ada di menu Administration.
  11. Di menu wireless juga terdapat submenu Wireless MAC Filter untuk mengatur MAC address mana yang perlu di block atau diizinkan mngakses Access Point.
nb : jangan lupa meng-klik Save settings pada setiap sub menu yang dirubah untuk menyimpan perubahan yang telah dilakukan.


referensi :

Lawan Malas

Begini,  hari ini sebenarnya ga ada kuliah, cuma ada jadwal ngajar privat adenya Rafni, Nanun.
Jadi, seperti rencana yang memang selalu hanya sebuah rencana yang gak jelas realisasinya, aku akan selesaikan editing video - PR aslab mulmed yang sampe sekarang belum selesai.
Ga tau kenapa, rasanya males banget untuk edit semua video-video itu, padahal kalau pas masih menjabat nyicil nyelesein editingnya pasti deh sekarang ga berasa lagi di hantui sama si Ulead (program editing video).
Begitu bangun tidur, kuawali hariku dengan pe-re-ga-ngan o-tot. Ya ! efek salah bantal, badan rasanya remuk semua. Jadilah pagi ini aku sedikit melakukan senam enerjik - plintir kepala, plintir tangan, plintir kaki, push up, sit up. Feeling fresh now. I'm ready :D

Setelah beberapa saat disibukkan dengan pekerjaan ibu rumah tangga  - maklumlah saya anak gadis yang mencoba menyenangkan hati ibunda tercintanya dengan tiap pagi udah siap nge-DJ dan sapu sini sapu sana, walaupun kerjanya lambaaaaannn banget, sambil nonton gosip lah, sambil nonton running man lah, atau sambil update socmed - , barulah rencana itu harus benar-benar direalisasikan. Jangan ditunda-tnda lagi.

" Kalau bisa sekarang ngapain di nanti-nanti ", itu kata-kata Midong beberapa hari lalu yang terasa ngebentur kepalaku.
" Kalau bisa nanti kenapa harus sekarang ", kalo yang ini kata-kata Ivan yang mencoba untuk ga mainstream.
And we will see which word that i following then ...

Copyright © 2013 Free your mind ! and Blogger Templates - Anime OST.