Senin, 08 April 2013

Tentang Saya

Untitled Document

Imam Arif Amali sebuah nama sederhana yang diberikan oleh kedua orang tua saya. Nama ini mungkin cocok bagi saya karena kedua orang tua saya pernah bercerita pada saat bayi saya sering sakit dan nama saya juga sering diganti, dengan nama Imam Arif Amali barulah saya tidak lagi sakit.
Saya lahir di Pontianak hampir 21 tahun silam ketika tulisan ini dibuat, pada 27 Juli 1992 lebih tepatnya. Dilahirkan sebagai anak kedua dari tiga bersaudara menurut saya sesuatu yang lebih istimewa dari kedua saudara saya yang lain karna dengan begitu saya mempunyai kakak dan adik.
Selama hampir 21 tahun ini, saya telah mengeyam pendidikan mulai dari TK Islamiyah, MIN Teladan, MTsN 2 Pontianak, SMAN 7 Pontianak, dan saat ini sedang melanjutkan study di Universitas Gunadarma di jurusan Sistem Informasi.
Menurut saya sendiri saya orangnya sedikit pemalu, susah untuk berbicara di depan umum, merasa tidak nyaman ketika menjadi pusat perhatian, terkadang egois, tidak sombong, ramah, jujur, sensitif, dan suka menghargai orang lain karena sebelum kita menghargai diri kita sendiri maka terlebih dahulu hargailah orang lain jika kita menghargai orang lain maka orang lain pun akan menghargai kita setidaknya itu lah yang ada di pikiran saya. Saya orangnya humoris dan suka bercanda ketika bersama orang-orang yang sudah dikenal, membuat orang tertawa merupakan suatu kebahagiaan yang saya rasakan adalah ketika kita dikelilingi oleh orang-orang yang bahagia, terkadang saya terlihat serius dan cuek pada saat bertemu dengan orang yang baru dikenal.
Mengenai hobi saya lebih suka mendengarkan musik, menonton film, bermain game, membaca. Hampir setiap genre musik saya suka, tetapi yang paling saya sukai adalah lagu-lagu dari band Dream Theater. Mengenai film mungkin rata-rata pria suka menonton film-film bergenre Action, tetapi tidak dengan saya bukan berarti disini saya bukan seorang pria atau tidak pernah menonton film Action. Menurut saya kebanyakan film-film Action tertalu mudah ditebak, dimana orang baik pasti selalu mendapatkan sesuatu yang bagus di akhir cerita. Dan game yang paling sering saya mainkan adalah Defense of the Ancients (DotA), game yang mempunyai komunitas yang cukup tinggi di dunia. Ketika seseorang mengatakan hobi mereka membaca yang terlintas dipikiran orang lain bawah orang tersebut pintar ataupun kutu buku tetapi berbeda dengan saya, disini saya hanya senang membaca bacaaan yang ringan seperti komik dan sesuatu yang berkaitan dengan mistis.
Visi adalah tujuan hidup apa yang hendak kita capai, suatu hal kecil yang sangat penting yang harus dimiliki oleh setiap orang dalam menjalani hidup ini. Saya sendiri mempunyai visi hidup yang bisa dibilang terlalu biasa yaitu saya ingin menjadi kaya Jika menjadi kaya saya dapat berguna dan membawa pengaruh positif bagi banyak orang sekaligus, beramal baik yang selanjutnya dapat menjadi bekal saya pribadi untuk kehidupan akhirat kelak. Hal tersebut akan susah untuk saya lakukan jika saya sendiri tidak mempunyai cukup uang atau harta. Saya mempunyai satu visi lagi yaitu membuat kedua orang tua bangga, yah hampir setiap anak ingin membuat kedua orang tua mereka bangga tidak terkecuali saya, dapat menceritakan apa yang telah saya perbuat kepada teman, kerabat maupun saudara  dengan dengan rasa bangga dan penuh percaya diri merupakan sesuatu kebahagian yang luar biasa bagi saya.

Senin, 03 Desember 2012

Peranan & Fungsi Bahasa Indonesia

Manusia tidak dapat lepas dari bahasa. Terbukti dari penggunaannya untuk percakapan sehari-hari, tentu ada peran bahasa yang membuat satu sama lain dapat berkomunikasi, saling menyampaikan maksud. Tak hanya dalam bentuk lisan, tentu saja bahasa juga digunakan dalam bentuk tulisan.

Pemikiran seseorang tentunya akan lebih mendapat pengakuan ketika sudah “dituliskan” sehingga orang lain yang membaca akan mengetahui apa yang ingin disampaikan seorang penulis. Pada dasarnya seluruh kegiatan manusia akan sangat berkaitan erat dengan bahasa. Entah sekedar bercakap-cakap dengan teman, atau dalam kegiatan formal seperti sekolah, kuliah bahkan dalam pekerjaan. Filsafat juga tidak dapat lepas dari bahasa. Banyak filsuf yang justru mengawali pemikirannya dari problem bahasa. Tentunya bahasa disini bukan berarti sekedar mempelajari tata gramatikal bahasa ataupun bahasa asing, melainkan bagaimana pengertian seseorang dapat terpengaruh ‘hanya’ dari penggunaan kata-kata atau pemikiran. Sangat penting untuk dapat tetap berpikir kritis dalam mengerti ucapan seseorang maupun teks.

Teori-teori yang berkembang dalam filsafat bahasa inilah yang kemudian menjadi alat bagi setiap orang untuk dapat lebih mengeksploitasi sebuah pemikiran, baik yang terucapkan maupun dalam bentuk teks.Mungkin akan terkesan “ah, bahasa kan sama saja dengan perbincangan sehari-hari, apa susahnya sih? Toh, ucapan-ucapan itu bisa saja mudah dimengerti.” Memang kesannya bahasa tidak ada kaitannya dengan filsafat. Tapi Bahasa ternyata tidak hanya mencakup bagaimana seseorang berkomunikasi dengan orang lain, tetapi juga dapat menjadi hal yang kompleks. Sebuah perjanjian antar negara juga menggunakan bahasa yang disepakati pihak-pihak yang terkait agar tercapai kesepakatan. Tanda-tanda yang hadir dalam kehidupan kita sehari-hari juga bagian dari bahasa. Contoh, rambu-rambu lalu lintas tentu akan sangat tidak efisien jika dituliskan dalam bentuk huruf.

Para pengguna jalan tentu tidak akan sempat membaca tulisan-tulisan itu. Karena itu untuk mempermudah, dibuat simbol-simbol yang dikonvensikan dan dimengerti masyarakat. Lalu bagaimana dengan bahasa isyarat?

Ada orang-orang yang tentu tidak dapat menggunakan bahasa verbal, karen itu dibuatlah kode-kode khusus agar komunikasi tetap dapat berjalan dengan baik. Dan banyak kode-kode khusus lain yang dibuat untuk mempermudah menyampaikan sebuah pesan. Bahasa verbal pun ternyata tidak dapat diartikan secara harafiah begitu saja.

Ada kalanya sebuah teks atau percakapan akan menggunakan ‘kode-kode’ penyampaian. Misalkan dalam bahasa puisi. Ataupun politikus-politikus yang menggunakan kiasan-kiasan ketika berpidato atau sekedar menjawab pertanyaan-pertanyaan. Dari banyaknya peran bahasa ini, kita dapat melihat bahwa mengerti bahasa bukan hal yang mudah. Harus ada kekritisan dalam menerjemahkan sebuah pesan. Inilah pentingnya peran interpretasi. Tanpa interpretasi, tentunya semua akan mengalir dengan datar. Nampak membosankan bukan jika puisi ditulisakan sama dengan percakapan sehari-hari. Justru simbol-simbol yang ada semakin memperindah penggunaan bahasa.

Kudera dalam bukunya The Art of Novel mengatakan bahwa manusia akhir-akhir ini memiliki kecenderungan ‘malas’ menginterpretasi segala sesuatu. Semakin maju perkembangan zaman, manusia justru semakin terlihat pasrah menerima begitu saja segala sesuatu yang hadir. Tak ada keinginan untuk mengartikan tanda-tanda disekitarnya. Akibatnya, keberagaman hidup semakin berkuran. Ada kesan ingin menyeragamkan segalanya. Menyedihkan sekali jika suatu saat semua orang menjadi ‘robot’ yang tidak memiliki keunikan masing-masing. Hal ini terjadi akibat hilangnya sense seseorang untuk berani memaknai teks.

Ada tiga tipe orang-orang yang dianggap sebagai iblis pematian makna. Tipe pertama adalah orang-orang yang selalu menertawakan ide-ide baru. Tipe-tipe oang semacam ini yang seringkali menjatuhkan mental seseoarang yang ingin menyampaikan ide baru, dan tentu saja seperti oang-orang konservatif, mereka tidak menginginkan perubahan. Tipe yang kedua adalah orang-orang yang tidak mau mengartikan bahasa dan tanda yang ada, ibarat umat yang ‘dibodohi’ oleh nabinya, mereka menurut begitu saja pada dogma yang disampaikan oleh sang nabi. Hal ini sangat berbahaya terutama bagi kreatifitas. Tanpa imajinasi tentunya tidak akan ada keberagaman hidup. Dan tipe yang terakhir adalah tipe orang-orang yang hanya meniru yang sudah ada. Ketiga tipe inilah yang seharusnya dihindari oleh setiap orang agar perkembangan bahasa, tanda, dan pemaknaan menjadi lebih beragam.Filsafat mencoba membawa bahasa pada pembahasan yang lebih kritis.

Ada beberapa poin yang dapat dikaitkan dengan bahasa. Antara lain dengan

- akal, yang sangat erat dengan logika.

- Makna dan interpretasi, yang merupakan bagian yang sudah melekat dengan bahasa.

- Konvensi, karena tanpa konvensi bahasa tidak ada artinya karena tidak dimengerti oleh semua orang.

- Dimensi bahasa obyektif, dapat dimengerti oleh semua untuk mengatasi ruang dan bersifat universal dan ilmiah.

- Intertekstualitas, bagaimana teks-teks lain saling mempengaruhi pemahaman seseorang.

Dan dari sinilah kita kemudian dapat mencoba menganalisa sebuah teks atau tanda dengan aliran-aliran yang berkembang dari filsafat bahasa

Kedudukan dan Fungsi Bahasa Indonesia

Bahasa Indonesia memiliki dua kedudukan, yaitu (1) sebagai bahasa nasional dan (2) sebagai bahasa negara.
Sebagai bahasa nasional, bahasa Indonesia berfungsi

(1) sebagai lambang kebanggaan nasional

(2) sebagai lambang identitas nasional,

(3) sebagai alat pemersatu berbagai masyarakat yang berbeda latar belakang sosiala budaya dan bahasanya, dan

(4) sebagai alat perhubungan antarbudaya dan antardaerah.

Dalam kedudukannya sebagai bahasa negara, bahasa Indonesia berfungsi

(1) sebagai bahasa resmi negara

(2) sebagai pengantar resmi di lembaga-lembaga pendidikan

(3) sebagai bahasa resmi di dalam perhubungan tingkat nasional untuk kepentingan perencanaan dan pelaksanaan pembangunan dan pemerintahan, dan

(4) sebagai bahasa resmi di dalam pembangunan kebudayaan dan pemanfaatan ilmu pengetahuan serta teknologi modern.

Sifat Ragam bahasa Ilmu


Sesuai dengan fungsi di atas, tidak mengherankan bila bahasa Indonesia memiliki berbagai ragam bahasa. Berdasarkan tempat atau daerahnya, bahasa Indonesia terdiri dari berbagai dialek, antara lain dialek Jakarta, Jawa, Medan, dan lain-lainnya; berdasarkan penuturnya didapati ragam bahasa golongan cendekiawan dan ragam bahasa golongan bukan cendekiawan; berdasarkan sarananya didapati ragam bahasa lisan dan ragam bahasa tulis; berdasarkan bidang penggunaannya didapati ragam bahasa ilmu, ragam bahasa sastra, ragam surat kabar, ragam bahasa undang-undang, dan lain-lainnya dan berdasarkan suasana penggunaannya bahasa Indonesia dapat digolongkan menjadi dua ragam bahasa, yaitu ragam bahasa resmi dan ragam bahasa santai.
Dari uraian di atas jelaslah bahwa penyebutan bahasa Indonesia ragam ilmu itu berdasarkan bidang penggunaan bahasa. Jika dilihat dari segi penuturnya, ragam bahasa ilmu termasuk ragam bahasa golongan cendekiawan; jika dilihat dari sarananya, ragam bahasa ilmu termasuk ragam bahasa lisan dan termasuk ragam bahasa tulis; jika dilihat dari suasana penggunaanya, jelas bahwa ragam bahasa ilmu termasuk ragam bahasa resmi; dan yang terakhir, bila dilihat dari segi daerah atau tempat penggunaannya, jelas bahwa ragam bahasa ilmu tidak termasuk dalam suatu dialek karena ragam bahasa ini digunakan oleh cerdik pandai dari seluruh pelosok tanah air.
Dengan demikian, ragam bahasa ilmu dapat dijelaskan sebagai suatu ragam bahasa yang tidak termasuk suatu dialek, yang dalam suasana resmi, baik secara tertulis maupun lisan digunakan oleh para cendekiawan untuk mengkomunikasikan ilmu pengetahuannya.

Kamis, 04 Oktober 2012

Implementasi Grafik Komputer dan Pengolahan Citra

Dari judul diatas kita dapat mengetahui bahwa grafik komputer dan pengolahan citra yang memiliki keterkaitan yang kuat. Keduanya merupakan bagian dari ilmu komputer ataupun informatika sedangkan pengolahan citra sendiri adalah salah satu cabang dari ilmu informatika itu sendiri.

            Pada saat ini grafika komputer mulai dirasa sangat penting oleh masyarakat karena mencakup hampir semua bidang kehidupan seiring dengan semakin maju dan pentingnya sistem komputer dalam berbagai kegiatan.

            Sedangkan pengolahan citra pun tidak kalah pentingnya dengan grapik computer, biasanya masyarakat menggunakan pengolahan citrauntuk mendentifikasi suatu pewarnaan pada kemasan ataupun pada barang-barang lainnya.

            Grafika komputer sudah banyak digunakan sebagai materi pendukung dalam berbagai bidang termasuk dalam pembuatan game. Implementasi grafika komputer yang diaplikasikan pada program game dapat membantu untuk penggerak dan pembuatan gambar pada game agar terlihat lebih menarik. Sedangkan pengolahan citra pada game di butuhkan untuk memberi pewarnaan yang baik agar tidak merusak sensor mata pada manusia.

            Jadi dalam pembuatan game implementasi computer di gunakan untuk membuat gambar, penggerak dalam game dan pengolahan citra berfungsi untuk pemberian warna pada gambar-gambar tersebut, pemberian warna pun tidak bisa di lakukan dengan sembarangan karena kita harus membuat bagaimana agar sensor mata menangkap warna dengan baik pada game tersebut, apabila di lakukan dengan sembarangan dapat menyebabkan kerusakna pada sensor mata.

Berikut ini adalah tipe-tipe game yang beredar di pasaran :
- Rpg Maker (R.M)
R.M Adalah suatu program yang dikhususkan untuk membuat game bertipe rpg(role playing game) yang sangat mudah digunakan dikarenakan macam – macam toolsnya yang tidak rumit. Jadi untuk anda yang sangat mencintai
- AGS(Adventure Game Studio)
Program yang satu ini dikhususkan untuk membuat game yang bertipe ‘point and click’. Yaitu jenis game yang bertipe adventure ataupun puzzle. Tipe game seperti ini sangat akrab dengan game pc yang menerapkan ‘point and click’ yang menggunakan alat bantu mouse sebagai penentu arah suatu karakter.
- 3D Game Studio.
Program ini dapat dikatakan yang cukup sulit untuk digunakan karena tujuan pembuatannya adalah menghasilkan game yang bertipe 3d. Contoh game yang ada yaitu seperti prince of persia, medal of honor, onimusha, dsb. Namun untuk anda yang sudah terbiasa membuat game dan sudah mengetahui dasar – dasar dari program 3d game studio tersebut dapat memulai untuk membuat game yang sekelas ataupun lebih.

            Jadi jika dalam pembuatan game kita tidak menggunakan grafik dan juga pencitraan anda tidak mungkin dapat menarik para gamers untuk memainkannya. Dalam game yang baik visualisasi game amat sangat di butuhkan untuk merangsang para gamers untuk menjajal seberapa hebat kan game yang anda buat.kalau anda hanya mengandalkan story line yg bagus hanya akan ada segelintir gamers yang akan memainkannya.
Itulah mengapa dalam pembuatan suatu game keterikatan grafik komputer dan pengolahan data sangat amat penting.

Sumber : wikipedia.org dan putrikero.wordpress.com







Senin, 30 April 2012

Peristiwa Penting Microsoft


Baiklah kali ini saya akan sekedar berbagi tentang beberapa peristiwa - peristiwa penting Microsoft.
Berikut ini adalah sejumlah peristiwa penting dalam sejarah Microsoft :

4 April 1975, Bill Gates dan Paul Allen mendirikan “Micro-Soft” .
26 November 1976, Merek “Microsoft” didaftarkan.
11 Juni 1980, Steve Ballmer bergabung dengan Microsoft.
12 Agustus 1981, IBM memperkenalkan PC dengan sistem operasi Microsoft MS-DOS 1.0.
20 November 1985, Microsoft merilis Windows versi ritel pertama.
13 Maret 1986, Microsoft mendaftarkan diri ke bursa saham.
22 Mei 1990, Microsoft meluncurkan Windows 3.0.
1993, Windows menjadi sistem operasi terbesar di dunia.
24 Agustus 1995, Microsoft meluncurkan Windows 95.
25 Oktober 2001, Microsoft meluncurkan Windows XP.
15 November 2001, Microsoft terjun ke pasar game dengan meluncurkan Xbox * 22 November 2005, Microsoft meluncurkan Xbox 360.
15 Juni 2006, Bill Gates mengundurkan diri dari tugas harian di Microsoft * 30 November 2006, Microsoft meluncurkan Windows Vista.
22 Oktober 2009, Microsoft meluncurkan Windows 7.
12 April 2010, Microsoft meluncurkan smartphone KIN.

Sumber : http://kocosantoso.wordpress.com/2011/03/13/peristiwa-penting-microsoft/

Tips mencegah Virus menyerang / masuk Laptop Anda

Sebaik apapun antivirus yang kita gunakan + Update terbaru pun tidak menjamin komputer bebas dari virus, karena virus selalu berkembang dan update anti virus [sebagian besar] hanya mengikuti perkembangan virus itu sendiri ( jadi ketika virus sudah menyebar, kemungkinan anti virus bisa mendeteksi baru beberapa hari kemudian ). Tetapi Komputer tanpa anti virus jauh lebih rentan untuk terkena virus.
Bagi sebagian besar pengguna, mungkin artikel ini sudah biasa dan bukan barang yang baru lagi, tetapi bagi pengguna biasa / awam mungkin dapat bermanfaat untuk mencegah virus masuk / menular ke PC kita. Mengingat perkembangan virus dalam negeri yang begitu pesat. Hal ini mungkin karena banyaknya [adanya] source code yang menjelaskan cara pembuatan virus yang dipublikasikan secara umum, yang mungkin maksudnya sekedar tukar informasi saja, tetapi diluar itu kemungkinan banyak yang mengembangkan sendiri untuk membuat virus dan memancing programmer untuk mencoba-coba.
Beberapa hal yang perlu di persiapkan untuk mencegah virus masuk/menular ke komputer kita adalah:
· Gunakan antivirus yang senantiasa di update, paling tidak seminggu sekali, jika online maka aktifkan auto update pada antivirus
· Non aktifkan fasilitas autorun pada komputer kita, sehingga CD-ROM maupun flashdisk yang kita masukkan ke komputer tidak langsung menjalankan file yang ada di dalamnya. Bagi yang belum tahu, bisa dilihat caranya disini
· Tampilkan semua ekstensi file windows, termasuk file system windows. Caranya : Di windows explorer buka menu Tools > Folder Options… kemudian pilih tab view Kemudian pilih (aktifkan) opsi “show hidden files and folder”, hilangkan check pada pilihan“Hide extensions for known file types” juga hilangkan tanda check pada “Hide protected operating system files (Recommended)”.
· Periksa setiap flashdisk yang dimasukkan apakah ada file autorun.inf, jika ada coba dilihat isinya, jika mengacu ke sebuah file .exe, .dll atau .scr yang aneh / hidden, segera hapus file-nya atau scan dengan antivirus
· Ini yang mungkin sangat penting : Jika komputer digunakan oleh banyak orang, minta agar pengguna berhati-hati sebelum menjalankan sebuah file, jangan hanya melihat icon-nya, tapi melihat ekstensinya. Misalnya file itu dengan icon ms word, excel, gambar, mp3 dsb tetapi kok berekstensi .exe, .scr, .vbs, .bat atau tidak sesuai dengan iconnya, harap diwaspadai
· Gunakan tools / program seperti autoruns untuk melihat file/program apa saja yang berjalan ketika windows diaktifkan. Jika ada program yang aneh segera tanyakan kepada orang yang lebih tahu. Tentang autoruns bisa dilihat disini.
· Semoga artikel ini bermanfaat, jika ada tambahan/masukan tips silahkan, diharapkan akan menambah keamanan dalam menggunakan komputer.
Hepii Internet juga memberikan layanan apabila anda membutuhkan Jasa RECOCERY DATA.

Sabtu, 31 Maret 2012

Sejarah C++

Tahun 1978, Brian W. Kerninghan & Dennis M. Ritchie dari AT & T Laboratories mengembangkan bahasa B menjadi bahasa C. Bahasa B yang diciptakan oleh Ken Thompson sebenarnya merupakan pengembangan dari bahasa BCPL ( Basic Combined Programming Language ) yang diciptakan oleh Martin Richard.

Sejak tahun 1980, bahasa C banyak digunakan pemrogram di Eropa yang sebelumnya menggunakan bahasaB dan BCPL. Dalam perkembangannya, bahasa C menjadi bahasa paling populer diantara bahasa lainnya, seperti PASCAL, BASIC, FORTRAN.

Tahun 1989, dunia pemrograman C mengalami peristiwa penting dengan dikeluarkannya standar bahasa C oleh American National Standards Institute (ANSI). Bahasa C yang diciptakan Kerninghan & Ritchie kemudian dikenal dengan nama ANSI C.

Mulai awal tahun 1980, Bjarne Stroustrup dari AT & T Bell Laboratories mulai
mengembangkan bahasa C. Pada tahun 1985, lahirlah secara resmi bahasa baru hasil pengembangan C yang dikenal dengan nama C++. Sebenarnya bahasa C++ mengalami dua tahap evolusi. C++ yang pertama, dirilis oleh AT&T Laboratories, dinamakan cfront. C++ versi kunoini hanya berupa kompiler yang menterjemahkan C++ menjadi bahasa C.

Pada evolusi selanjutnya, Borland International Inc. mengembangkan kompiler C++ menjadi sebuah kompiler yang mampu mengubah C++ langsung menjadi bahasa mesin (assembly). Sejak evolusi ini, mulai tahun 1990C++ menjadi bahasa berorientasi obyek yang digunakan oleh sebagian besar pemrogram professional.

C bisa disebut bahasa pemrograman tingkat menengah (middle level programming language). Arti tingkat (level) disini adalah kemampuan mengakses fungsi-fungsi dan perintah-perintah dasar bahasa mesin/hardware (machine basic instruction set). Semakin tinggi tingkat bahasa pemrograman (misalnya:java), semakin mudahlah bahasa pemrograman dipahami manusia, namun membawa pengaruh semakin berkurang kemampuan untuk mengakses langsung instruksi dasar bahasa mesin. Demikian juga sebaliknya dengan bahasa pemrograman tingkat rendah (misalnya: assembler), yang semakin sulit dipahami manusia dan hanya berisi perintah untuk mengakses bahasa mesin. Dalam perspektif mudahnya dipahami manusia, C bisa digolongkan dalam bahasa tingkat tinggi, namun C juga menyediakan kemampuan yang ada pada bahasa tingkat rendah, misalnya operasi bit, operasi byte, pengaksesan memori, dsb.

Beberapa alasan mengapa memakai bahasa C:

* C adalah bahasa pemrograman yang paling populer saat ini, Dengan banyaknya programmer bahasa C, membawa pengaruh semakin mudahnya kita menemukan pemecahan masalah yang kita dapatkan ketika menulis program dalam bahasa C. Pengaruh positif lain adalah semakin banyaknya kompiler yang dikembangkan untuk berbagai platform (berpengaruh ke portabilitas).
* C adalah bahasa pemrograman yang memiliki portabilitas tinggi, Program C yang kita tulis untuk satu jenis platform, bisa kita kompile dan jalankan di platform lain dengan tanpa ataupun hanya sedikit perubahan. Ini bisa diwujudkan dengan adanya standarisasi ANSI untuk C.
* C adalah bahasa pemrograman yang fleksibel, Dengan menguasai bahasa C, kita bisa menulis dan mengembangkan berbagai jenis program mulai dari operating system, word processor, graphic processor, spreadsheets, ataupun kompiler untuk suatu bahasa pemrograman.
* C adalah bahasa pemrograman yang bersifat moduler, Program C ditulis dalam routine yang biasa dipanggil dengan fungsi. Fungsi-fungsi yang telah kita buat, bisa kita gunakan kembali (reuse) dalam program ataupun aplikasi lain.
Sumber : wikipedia.org

Deadlock

B. Deadlock

Deadlock yang mungkin dapat terjadi pada suatu proses disebabkan proses itu menunggu suatu kejadian tertentu yang tidak akan pernah terjadi. Dua atau lebih proses dikatakan berada dalam kondisi deadlock, bila setiap proses yang ada menunggu suatu kejadian yang hanya dapat dilakukan oleh proses lain dalam himpunan tersebut. Terdapat kaitan antara overhead dari mekanisme koreksi dan manfaat dari koreksi deadlock itu sendiri. Pada beberapa kasus, overhead atau ongkos yang harus dibayar untuk membuat sistem bebas deadlock menjadi hal yang terlalu mahal dibandingkan jika mengabaikannya. Sementara pada kasus lain, seperti pada real-time process control, mengizinkan deadlock akan membuat sistem menjadi kacau dan membuat sistem tersebut tidak berguna.

Contoh berikut ini terjadi pada sebuah persimpangan jalan. Beberapa hal yang dapat membuat deadlock pada suatu persimpangan, yaitu:

· Terdapat satu jalur pada jalan.

· Mobil digambarkan sebagai proses yang sedang menuju sumber daya.

· Untuk mengatasinya beberapa mobil harus preempt (mundur).

· Sangat memungkinkan untuk terjadinya starvation (kondisi proses tak akan mendapatkan sumber daya).

1. Peranan Deadlock

Menurut Coffman dalam bukunya "Operating System" menyebutkan empat syarat bagi terjadinya deadlock, yaitu:

a. Mutual Exclusion

b. Suatu kondisi dimana setiap sumber daya diberikan tepat pada satu proses pada suatu waktu.

c. Hold and Wait

d. Kondisi yang menyatakan proses-proses yang sedang memakai suatu sumber daya dapat meminta sumber daya yang lain.

e. Non-pre-emptive

f. Kondisi dimana suatu sumber daya yang sedang berada pada suatu proses tidak dapat diambil secara paksa dari proses tersebut,sampai proses itu melepaskannya.

g. Circular Wait

h. Kondisi yang menyatakan bahwa adanya rantai saling meminta sumber daya yang dimiliki oleh suatu proses oleh proses lainnya.

2. Resources-Allocation Graph

Sebuah cara visual (matematika) untuk menentukan apakah ada deadlock, atau kemungkinan terjadinya.

G = (V, E) Graf berisi node and edge. Node V terdiri dari proses-proses = {P1, P2, P3, ...} dan jenis resource. {R1, R2, ...} Edge E adalah (Pi, Rj) atau (Ri, Pj)

Sebuah panah dari process ke resource menandakan proses meminta resource. Sebuah panah dari resource ke process menunjukkan sebuah instance dari resource telah dtempatkan ke proses. Process adalah lingkaran, resource adalah kotak; titik-titik merepresentasikan jumlah instance dari resource Dalam tipe. Meminta poin-poin ke kotak, perintah datang dari titik.

Jika graf tidak berisi lingkaran, maka tidak ada proses yang deadlock. Jika membentuk lingkaran, maka:

a. jika tipe resource memiliki banyak instance, maka deadlock DAPAT ada.

b. jika setiap tipe resource mempunyai satu instance, maka deadlock telah terjadi.

3. Strategi menghadapi Deadlock

Strategi untuk menghadapi deadlock dapat dibagi menjadi tiga pendekatan, yaitu:

a. Mengabaikan adanya deadlock.

b. Memastikan bahwa deadlock tidak akan pernah ada, baik dengan metode Pencegahan, dengan mencegah empat kondisi deadlock agar tidak akan pernah terjadi. Metode Menghindari deadlock, yaitu mengizinkan empat kondisi deadlock, tetapi menghentikan setiap proses yang kemungkinan mencapai deadlock.

c. Membiarkan deadlock untuk terjadi, pendekatan ini membutuhkan dua metode yang saling mendukung, yaitu:

· Pendeteksian deadlock, untuk mengidentifikasi ketika deadlock terjadi.

· Pemulihan deadlock, mengembalikan kembali sumber daya yang dibutuhkan pada proses yang memintanya.