KULIAH


PENGGUNAAN DISPLAY (LCD) DALAM KEGIATAN BELAJAR MENGAJAR MAHASISWA


Penggunaan LCD belakangan ini marak sekali di kampus-kampus seluruh indonesia, bahkan mungkin semua kampus di kota-kota besar sudah menggunakan alat bantu penampil dari monitor komputer ini. Perubahan ini tentunya melunturkan nilai-nilai tradisional yaitu kegiatan mencatat bagi mahasiswa di kampus tersebut.


TEKNOLOGI DARI LCD
LCD ini digunakan untuk menampilkan suatu gambar atau tulisan dari komputer ke layar yang memungkinkan gambar atau tulisan itu dapat dilihat oleh orang dengan ukuran yang besar. di kampus-kampus besar LCD ini banyak digunakan untuk proses pembelajaran karena sangat efektif, diantaranya:

Dosen tidak perlu mencatat kembali di papan tulis karena mahasiswa sudah dapat melihat di layar,
Dosen bisa menggunakan waktu dengan sangat efektif,
Penggunaan kapur atau spidol yang dapat diminimalisir,
dan masik banyak keuntungan yang didapat dari penggunaan LCD ini.

NILAI ETIKA TRADISIONAL YANG HILANG DARI PENGGUNAAN LCD

Disamping manfaat yang banyak diberkan dari penggunaan LCD ini, terdapat juga nilai-nilai yang menghilangkan etika tradisional.
diantaranya adalah:
  • Mahasiswa menjadi malas untuk mencatat materi yang disampaikan oleh dosen, kecuali bagi mahasiswa yang memang rajin.
  • Mahasiswa kebanyakan hanya copy dan paste dari materi yang disampaikan oleh dosen, sehingga dari itu membuat mahasiswa malas untuk belajar,
  • dan masih ada nilai-nilai yang hilang dari penggunaan LCD ini.

Dari tulisan diatas, dapat kami simpulkan bahwa semua teknologi yang berkembang pesat itu pasti mempunyai kelebihan dan kekurangan. Dan penggunaan LCD memang mempermudah manusia dalam menjalankan aktivitasnya dan dapat menghemat pengeluaran , tetapi lebih baik lagi jika kebijakan ini disertai dengan kebijakan dari kampus sendiri dalam memotivasi mahasiswanya untuk belajar, karena kemudahan teknologi juga dapat melalaikan manusia untuk menjadi manusia yang lebih pandai.

MATERI PRESENTASI "CYBERCRIME"

Assalamu'alaikum Wr. Wb.
Terimakasih telah berkunjung ke Blog saya....
Disini saya akan sedikit mengulas tentang materi presentasi mata kuliah Etika Profesi yaitu tentang Kejahatan Dunia Maya atau lebih populer disebut dengan CYBERCRIME. Sebagai contoh kasus adalah Facebook-nya pak walikota yogyakarta (Herry Zudianto) yang dibajak oleh seseorang yang tidak bertanggung jawab. Untuk lebih lengkap kasusnya dapat di lihat di blog temen saya dihttp://masjek.com/2011/01/07/facebook-pak-walikota-di-bajak/ Untuk materi slide dapat di download disini http://masjek.com/2011/06/07/tugas-presentasi-etika-profesi-cybercrime/.
mungkin itu dulu yang dapat saya sampaikan, terimakasih telah berkunjung ke blog saya.
Wassalamu'alaikum Wr. Wb.



KONGKURENSI

Kongkurensi adalah suatu keadaan dimana beberapa proses berada pada saat yang sama (proses-proses yang kongkuren). Proses-proses yang mengalami kongkuren dapat berdiri sendiri (independen) atau dapat saling berinteraksi, sehingga membutuhkan sinkronisasi atau koordinasi proses yang baik. Proses-proses yang kongkuren yang berinteraksi mempunyai masalah antara lain:

1.      MUTUAL EXCLUSION
Adalah jaminan bahwa hanya ada satu proses yang mengakses sumber daya pada suatu interval tertentu. Sumber daya tersebut tidak dapat dipakai bersama pada saat bersama, seperti printer. Sumber daya seperti ini disebut sumber daya kritis. Bagian program yang menggunakan sumber daya kritis disebut memasuki critical region/section. Hanya satu program pada 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.
Metode-metode penjaminan mutual exclusion:
a.      Metode naif
Ketika proses akan masuk critical section, proses lebih dulu memeriksa variabelblock.
b.      Metode semaphore
Prinsip metode ini adalah apabila ada 2 proses atau lebih dapat bekerja sama dengan menggunakan penanda sederhana. Proses dipaksa berhenti sampai proses memperoleh penanda tertentu. Variabel untuk memperoleh penanda ini disebut semaphore.
Sistem operasi hanya menyediakan layanan (berupa system call) untuk mencegah proses masuk critical section yang sedang dimasuki proses lain. Pemrogram harus menspesifikasikan bagian-bagian critical region sehingga sistem operasi akan menjaganya dengan suatu mekanisme untuk mencegah proses lain masuk critical region yang sedang dipakai proses lain. inilah yang dimaksud dengan mutual exclusion[1].
Kriteria dalam penyelesaian mutual exclusion antara lain:
a.      Mutual Exclusion harus dijamin, yaitu hanya satu proses yang dijinkan masuk kedalam critical sesion pada suatu waktu.
b.      Proses yang berada di noncritical sesion dilarang, dilarang memblocked proses-proses lain yang ingin masuk critical sesion.
c.       Harus dijamin proses yang ingin masuk critical sesion tidak menunggu selama waktu tidak terhingga.
d.      Ketika tidak ada proses pada critical section, maka proses yang ingin masuk critical section harus diijinkan masuk tanpa waktu tertunda.
Mutual Exclusion sering terjadi pada peralatan pencetakan (printer). Daemon printer adalah proses yang melakukan penjadwalan dan pengendalian pencetakan berkas-berkas di printer. Ruang disk ini disebut direktori spooler. Direktori spooler membagi disk menjadi sejumlah slot. Slot-slot diisi berkas yang akan dicetak. Terdapat variabel in yang menunjuk slot bebas pada ruang disk yang akan dipakai untuk menyimpan berkas yang ingin dijadwalkan untuk dicetak. Bagian program yang sedang mengakses memory atau sumber daya yang dipakai bersama disebut critical section. Jika proses pada critical section memblokir proses-proses lain dalam antrian, maka akan terjadi startvation dan deadlock. Kesuksesan proses-proses konkurensi memerlukan pendefinisian critical section dan memaksakan mutual exclusion di antara proses-proses konkuren yang sedang berjalan. Pemaksaan mutual exclusion merupakan landasan pemrosesan konkuren. Fasilitas atau kemampuan menyediakan dukungan mutual exclusion harus memenuhi kriteria sbb:
Mutual exclusion harus dijamin, bahwa tidak ada proses lain, kecuali dirinya sendiri. Di sini terjadi proses tunggal.
Proses yang berada di noncritical section, dilarang mem-blocked proses-proses lain yang ingin masuk critical section. Hal ini bisa terjadi startvation.
Harus dijamin bahwa proses yang ingin masuk critical section tidak menunggu selama waktu yang tak terhingga. Ini bisa mengakibatkan masalah deadlock dan antrian proses bertambah panjang.
Ketika tidak ada proses pada critical section, maka proses yang ingin masuk critical section harus ijinkan masuk tanpa waktu tunda.
 Tidak ada asumsi mengenai kecepatan relatif proses atau jumlah yang ada.
Proses hanya tinggal pada critical section selama satu waktu yang berhingga[2].
2.      STARVATION
Starvation adalah keadaan dimana pemberian akses bergantian terus-menerus, dan ada  suatu proses yang tidak mendapatkan gilirannya. Proses yang kekurangan resource (karena terjadi deadlock) tidak akan pernah mendapat resource yang dibutuhkan sehingga mengalami starvation (kelaparan). Namun, starvation juga bisa terjadi tanpa deadlock. Hal ini ketika terdapat kesalahan dalam sistem sehingga terjadi ketimpangan dalam pembagian resouce. Satu proses selalu mendapat resource, sedangkan proses yang lain tidak pernah mendapatkannya.
Untuk ilustrasi starvation dapat diperhatikan kasus berikut ini:
Terdapat tiga proses, yaitu P1, P2 dan P3. P1, P2 dan P3 memerlukan pengaksesan sumber daya R secara periodik, Skenario berikut terjadi :
P1 sedang diberi sumber daya R sedangkan P2 dan P3 diblocked menunggu sumber daya R.
Ketika P1 keluar dari critical section, maka P2 dan P3 diijinkan mengakses R.
Asumsi P3 diberi hak akses, kemudian setelah selesai, hak akses kembali diberikan ke P1 yang saat itu 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. Dalam kondisi ini memang tidak terjadi deadlock, hanya saja P2 mengalami starvation (tidak ada kesempatan untuk dilayani).

3.      SINKRONISASI
Sinkronisasi adalah proses pengaturan jalannya beberapa proses pada saat yang bersamaan. tujuan utama sinkronisasi adalah menghindari terjadinya inkonsitensi data karena pengaksesan oleh beberapa proses yang berbeda (mutual exclusion) serta untuk mengatur urutan jalannya proses-proses  sehingga dapat berjalan dengan lancar dan terhindar dari deadlock dan starvation. Sinkronisasi umumnya dilakukan dengan bantuan perangkat sinkronisasi. Penyelesaian terhadap masalah ini sangat penting karena perkembangan teknologi sistem komputer menuju ke sistem  multiprocessing, terdistribusi dan paralel yang mengharuskan adanya proses-proses kongkuren.

4.      DEADLOCK
Deadlock merupakan kondisi terparah karena banyak proses dapat terlibat dan semuanya tidak dapat mengakhiri prosesnya secara benar. Ilustasi deadlock, misalnya :
Terdapat dua proses, yaitu P1 dan P2 dan dua sumber daya kritis, yaitu R1 dan R2.
Proses P1 dan P2 harus mengakses kedua sumber daya tersebut, dengan kondisi ini terjadi : R1 diberikan ke P1, sedangkan R2 diberikan ke P2.
Karena untuk melanjutkan eksekusi memerlukan kedua sumber daya sekaligus maka kedua proses akan saling menunggu sumber daya lain selamanya. Tak ada proses yang dapat melepaskan sumber daya yang telah dipegangnya karena menunggu sumber daya lain yang tak pernah diperolehnya. Kedua proses dalam kondisideadlock, yang tidak dapat membuat kemajuan apapun dan deadlock merupakan kondisi terparah karena dapat melibatkan banyak proses dan semuanya tidak dapat mengakhiri prosesnya secara benar
1.                  Mutual Exclusion 
Kondisi yang pertama adalah mutual exclusion yaitu proses memiliki hak milik pribadi terhadap sumber daya yang sedang digunakannya. Jadi, hanya ada satu proses yang menggunakan suatu sumber daya. Proses lain yang juga ingin menggunakannya harus menunggu hingga sumber daya tersebut dilepaskan oleh proses yang telah selesai menggunakannya. Suatu proses hanya dapat menggunakan secara langsung sumber daya yang tersedia secara bebas.
2.                  Hold and Wait  
Kondisi yang kedua adalah hold and wait yaitu beberapa proses saling menunggu sambil menahan sumber daya yang dimilikinya. Suatu proses yang memiliki minimal satu buah sumber daya melakukan request lagi terhadap sumber daya. Akan tetapi, sumber daya yang dimintanya sedang dimiliki oleh proses yang lain. Pada saat yang sama, kemungkinan adanya proses lain yang juga mengalami hal serupa dengan proses pertama cukup besar terjadi. Akibatnya, proses-proses tersebut hanya bisa saling menunggu sampai sumber daya yang dimintanya dilepaskan. Sambil menunggu, sumber daya yang telah dimilikinya pun tidak akan dilepas. Semua proses itu pada akhirnya saling menunggu dan menahan sumber daya miliknya.
3.                  No Preemption
Kondisi yang selanjutnya adalah no preemption yaitu sebuah sumber daya hanya dapat dilepaskan oleh proses yang memilikinya secara sukarela setelah ia selesai menggunakannya. Proses yang menginginkan sumber daya tersebut harus menunggu sampai sumber daya tersedia, tanpa bisa merebutnya dari proses yang memilikinya.
4.                  Circular Wait 
Kondisi yang terakhir adalah circular wait yaitu kondisi membentuk siklus yang berisi proses-proses yang saling membutuhkan. Proses pertama membutuhkan sumber daya yang dimiliki proses kedua, proses kedua membutuhkan sumber daya milik proses ketiga, dan seterusnya sampai proses ke n-1 yang membutuhkan sumber daya milik proses ke n. Terakhir, proses ke n membutuhkan sumber daya milik proses yang pertama. Yang terjadi adalah proses-proses tersebut akan selamanya menunggu.
Penanganan Deadlock
1.                  Pengabaian
Maksud dari pengabaian di sini adalah sistem mengabaikan terjadinyadeadlock dan pura-pura tidak tahu kalau deadlock terjadi. Dalam penanganan dengan cara ini dikenal istilah ostrich algorithm. Pelaksanaan algoritma ini adalah sistem tidak mendeteksi adanya deadlock dan secara otomatis mematikan proses atau program yang mengalami deadlock. Kebanyakan sistem operasi yang ada mengadaptasi cara ini untuk menangani keadaan deadlock. Cara penanganan dengan mengabaikan deadlockbanyak dipilih karena kasus deadlock tersebut jarang terjadi dan relatif rumit dan kompleks untuk diselesaikan. Sehingga biasanya hanya diabaikan oleh sistem untuk kemudian diselesaikan masalahnya oleh user dengan cara melakukan terminasi denganCtrl+Alt+Del atau melakukan restart terhadap komputer.
2.                  Pencegahan 
Penanganan ini dengan cara mencegah terjadinya salah satu karakteristik deadlock. Penanganan ini dilaksanakan pada saat deadlock belum terjadi pada sistem. Intinya memastikan agar sistem tidak akan pernah berada pada kondisideadlock. Akan dibahas secara lebih mendalam pada bagian selanjutnya.
3.                  Penghindaran 
Menghindari keadaan deadlock. Bagian yang perlu diperhatikan oleh pembaca adalah bahwa antara pencegahan dan penghindaran adalah dua hal yang berbeda. Pencegahan lebih kepada mencegah salah satu dari empat karakteristikdeadlock terjadi, sehingga deadlock pun tidak terjadi. Sedangkan penghindaran adalah memprediksi apakah tindakan yang diambil sistem, dalam kaitannya dengan permintaan proses akan sumber daya, dapat mengakibatkan terjadi deadlock. Akan dibahas secara lebih mendalam pada bagian selanjutnya.
4.                  Pendeteksian dan Pemulihan 
Pada sistem yang sedang berada pada kondisideadlock, tindakan yang harus diambil adalah tindakan yang bersifat represif. Tindakan tersebut adalah dengan mendeteksi adanya deadlock, kemudian memulihkan kembali sistem. Proses pendeteksian akan menghasilkan informasi apakah sistem sedangdeadlock atau tidak serta proses mana yang mengalami deadlock. Akan dibahas secara lebih mendalam pada bagian selanjutnya.
Pencegahan
1.                  Mutual Exclusion 
Kondisi mutual exclusion pada sumber daya adalah sesuatu yang wajar terjadi, yaitu pada sumber daya yang tidak dapat dibagi (non-sharable). Sedangkan pada sumber daya yang bisa dibagi tidak ada istilah mutual exclusive. Jadi, pencegahan kondisi yang pertama ini sulit karena memang sifat dasar dari sumber daya yang tidak dapat dibagi.
2.                  Hold and Wait 
Untuk kondisi yang kedua, sistem perlu memastikan bahwa setiap kali proses meminta sumber daya, ia tidak sedang memiliki sumber daya lain. Atau bisa dengan proses meminta dan mendapatkan sumber daya yang dimilikinya sebelum melakukan eksekusi, sehingga tidak perlu menunggu.
3.                  No Preemption  
Pencegahan kondisi ini dengan cara membolehkan terjadinyapreemption. Maksudnya bila ada proses yang sedang memiliki sumber daya dan ingin mendapatkan sumber daya tambahan, namun tidak bisa langsung dialokasikan, maka akan preempted. Sumber daya yang dimiliki proses tadi akan diberikan pada proses lain yang membutuhkan dan sedang menunggu. Proses akan mengulang kembali eksekusinya setelah mendapatkan semua sumber daya yang dibutuhkannya, termasuk sumber daya yang dimintanya terakhir.
4.                  Circular Wait 
Kondisi ini dapat dicegah dengan jalan menentukan total kebutuhan terhadap semua tipe sumber daya yang ada. Selain itu, digunakan pula mekanisme enumerasi terhadap tipe-tipe sumber daya yang ada. Setiap proses yang akan meminta sumber daya harus meminta sumber daya dengan urutan yang menaik. Misalkan sumber daya printer memiliki nomor 1 sedangkan CD-ROM memiliki nomor 3. Proses boleh melakukan permintaan terhadap printer dan kemudian CD-ROM, namun tidak boleh sebaliknya.
Penghindaran
Langkah lain untuk menghindari adalah dengan cara tiap proses memberitahu jumlah kebutuhan maksimum untuk setiap tipe sumber daya yang ada. Selanjutnya terdapatdeadlock-avoidance algorithm yang secara rutin memeriksa state dari sistem untuk memastikan tidak adanya kondisi circular wait serta sistem berada pada kondisi safe state.Safe state adalah suatu kondisi dimana semua proses mendapatkan sumber daya yang dimintanya dengan sumber daya yang tersedia. Apabila tidak bisa langsung, ia harus menunggu selama waktu tertentu, kemudian mendapatkan sumber daya yang diinginkan, melakukan eksekusi, dan terakhir melepas kembali sumber daya tersebut. Terdapat dua jenis algoritma penghindaran yaitu resource-allocation graph untuk single instances resources sertabanker's algorithm untuk multiple instances resources.
Dalam banker's algorithm, terdapat beberapa struktur data yang digunakan, yaitu:
·                      Available . Jumlah sumber daya yang tersedia.
·                      Max . Jumlah sumber daya maksimum yang diminta oleh tiap proses.
·                      Allocation . Jumlah sumber daya yang sedang dimiliki oleh tiap proses.
·                      Need . Sisa sumber daya yang masih dibutuhkan oleh proses, didapat dari max-allocation.
Kemudian terdapat safety algorithm untuk menentukan apakah sistem berada pada safe stateatau tidak.
Pendeteksian
Mekanisme pendeteksian adalah dengan menggunakan detection algorithm yang akan memberitahu sistem mengenai proses mana saja yang terkena deadlock. Setelah diketahui proses mana saja yang terlibat dalam deadlock, selanjutnya adalah dengan menjalankan mekanisme pemulihan sistem yang akan dibahas pada bagian selanjutnya. Berikut ini adalah algoritma pendeteksian deadlock.
Pemulihan
Cara-cara yang ditempuh untuk memulihkan sistem dari deadlock adalah sebagai berikut:
Terminasi proses. 
Pemulihan sistem dapat dilakukan dengan cara melalukan terminasi terhadap semua proses yang terlibat dalam deadlock. Dapat pula dilakukan terminasi terhadap proses yang terlibat dalam deadlock secara satu per satu sampai 'lingkaran setan' atau circular wait hilang. Seperti diketahui bahwa circular wait adalah salah satu karakteristik terjadinya deadlock dan merupakan kesatuan dengan tiga karakteristik yang lain. Untuk itu, dengan menghilangkan kondisi circular wait dapat memulihkan sistem dari deadlock.Dalam melakukan terminasi terhadap proses yang deadlock, terdapat beberapa faktor yang menentukan proses mana yang akan diterminasi. Faktor pertama adalah prioritas dari proses-proses yang terlibat deadlock. Faktor kedua adalah berapa lama waktu yang dibutuhkan untuk eksekusi dan waktu proses menunggu sumber daya. Faktor ketiga adalah berapa banyak sumber daya yang telah dihabiskan dan yang masih dibutuhkan. Terakhir, faktor utilitas dari proses pun menjadi pertimbangan sistem untuk melakukan terminasi pada suatu proses.
Rollback and Restart 
Dalam memulihkan keadaan sistem yang deadlock, dapat dilakukan dengan cara sistem melakukan preempt terhadap sebuah proses dan kembali ke state yang aman. Pada keadaan safe state tersebut, proses masih berjalan dengan normal, sehingga sistem dapat memulai proses dari posisi aman tersebut. Untuk menentukan pada saat apa proses akan rollback, tentunya ada faktor yang menentukan. Diusahakan untuk meminimalisasi kerugian yang timbul akibat memilih suatu proses menjadi korban. Harus pula dihindari keadaan dimana proses yang sama selalu menjadi korban, sehingga proses tersebut tidak akan pernah sukses menjalankan eksekusi.[3]