ShoutBox


ShoutMix chat widget

10.27.2008

Memanfaatkan HScrollBar dan VScrollBar Pada Visual Basic


Trik : Untuk membuat gambar yang dapat bergeser anda perlu menanamkan sebuah kontrol image, kontrol VscrollBar dan HScrollBar diatas sebuah kontrol Picture. Jadi dalam hal ini kontrol Picture bertindak sebagai kontainer.
Membuat Sub StatusBingkai yang berfungsi membuat ukuran Picturebox sama dengan ukuran Form sebelah dalam (ScaleWidth, ScaleHeight) dengan menggunakan Metoda Move. Dan membuat kontrol imgGambar rapat kiri atas terhadap kontainernya (0,0)


Selengkapnya File1 Download
Selengkapnya File2 Download
Selengkapnya File3 Download
Selengkapnya File4 Download

Memanfaatkan kontrol image di Visual Basic


Memanfaatkan kontrol image untuk menampilkan Foto perserta
Pada Latihan ini kita akan meningkatkan fasilitas project Modul 4 Latihan 1 sebelumnya dengan kemampuan menampilkan foto dan menyimpan foto perserta. Adapun foto dari masing-masing peserta akan disimpan pada file-file eksternal yang diberi nama Fotox.bmp, dimana x disesuaikan dengan nomor record data dalam random file. Misalnya pada record 1, maka nama file fotonya adalah Foto1.bmp, record 2 nama file fotonya adalah Foto2.bmp, dst.

Download File 1 Selengkapnya
Download File 2 Selengkapnya
Download File 3 Selengkapnya
Download File 4 Selengkapnya
Download File 5 Selengkapnya



10.26.2008

BAHASA PEMROGRAMAN BASIC dengan QBASIC

DASAR-DASAR QBASIC


Bahasa BASIC dibuat oleh John G.Kemmeny dan Thomas E.Kurtz lebih
dari 20 tahun yang lalu dan merupakan bahasa tingkat tinggi yang
relatif mudah dipelajari dan dimengerti.

Dalam perkembangannya , Bahasa BASIC dikembangkan dalam dua
jenis, yaitu interpreter dan compiler. Interpreter seperti GW-
BASIC pada sistem operasi MS-DOS, maupun BASICA pada sistem
operasi PC-DOS, sedangkan salah satu compilernya yang terkenal
adalah Quick BASIC yang dilengkapi dengan sistem pemrograman
yang terstruktur, Quick Library, on-line help yang terpadu,
editor yang efisien (bisa merapikan teks serta memberitahukan
kesalahan syntax penulisan suatu perintah)



MENGAKTIFKAN QUICK BASIC

Untuk mengaktifkan Quick BASIC diperlukan sistem Quick BASIC yang
minimal terdiri dari file QB.EXE/QBasic.EXE. Jika kita telah
memiliki file tersebut tinggal diberi perintah QB pada Dos
Prompt.

Contoh

A>QB

atau

A>QBasic

Setelah pemberian perintah tersebut, pemakai akan dihadapkan
kepada suatu editor sebagai tempat pengetikan program yang akan
dikembangkan. Dibagian atas editor terdapat perintah menu yang
dapat diaktifkan dengan Tombol Alt disertai huruf depan dari
masing-masing pilihan.

File
/------------------\
| New Program | memulai program baru
| Open Program... | memuat program dari diskette ke RAM
| Save | menyimpan program ke diskette (file *.BAS)
| Save As... | menyimpan program ke nama yang lain
|------------------|
| Print... | mencetak program ke printer
|------------------|
| Exit | keluar ke Dos permanen
\------------------/

Edit
/----------------------\
| Undo Alt+Backspace | membatalkan perubahan terakhir
| Cut Shift+Del | memotong tulisan Blok ke ClipBoard
| Copy Ctrl+Ins | menduplikasi tulisan Blok ke ClipBoard
| Paste Shift+Ins | menyisip ClipBoard ke posisi Kursor
| Clear Del | menghapus tulisan yang di Blok
|----------------------|
| New SUB... |
| New FUNCTION... |
\----------------------/

Options
/-----------------\
| Display... | mengatur tampilan layar
| Help Set Path | mengatur default Dos Path
| Syntax Checking | mengatur keaktifan pemeriksaan Syntax
\-----------------/

Run
/---------------------\
| Start Shift+F5 | menjalankan program yang aktif
| Restart | mereset memory program
| Continue F5 | melanjutkan program yang terhenti
\---------------------/

MEMBUAT PROGRAM PADA QUICK BASIC

Apa yang dimaksud dengan pemrogram komputer ?

Pemrograman komputer berarti anda memberitahukan kepada komputer
ada yang anda ingin dia lakukan. Untuk memberitahukan komputer
apa yang harus dia lakukan, anda membutuhkan kata-kata khusus
(special words). Kata-kata ini disebut sebagai kata-kata kunci
(key words). Ketika anda menempatkan kata-kata kunci ini dalam
program anda sehingga kelihatan seperti kode khusus (special
code) yang disebut sebagai CODE dan pekerjaan menulis program
disebut CODING.


KATA, DATA, PERINTAH, dan FUNGSI BANTU merupakan komponen utama
suatu program yang saling berinteraksi. Pembuatan program dalam
Quick BASIC tidak terlepas dari keempat komponen di atas dalam
baris-baris perintah yang berkapasitas maksimum 256 character
yang mencakup identitas baris, perintah, dan kata-kata(Remark).
Identitas baris bisa berupa nomor baris (0-65529) [menjaga
kompatibilitas dengan GWBASIC maupun BASICA], dan bisa berupa
label dengan ketentuan :

- Maksimum 40 character, dimulai dengan huruf A..Z, diakhiri
dengan tanda :
- huruf besar/kecil sama, tidak sama dengan reserved word, dan
tidak pakai spasi

Setiap proses yang berhubungan dengan pengolahan data biasanya
memerlukan tempat penampung sementara dalam memory yang disebut
variabel dan dalam pengolahannya diperlukan operator dan fungsi
bantu.

Jenis Type Variabel pada Quick Basic :
/--------------------------------------------------------------------------\
|Data Type |Suffix|Maximum |Minimum | Size|
|--------------------------------------------------------------------------|
| | | |
|Strings | $ | 32,767 chars. | 0 chars. | |
|Integers | % | 32,767 |-32,768 | 2 |
|Long Integers | & | 2,147,483,647 |-2,147,483,648 | 4 |
|Single (7-digit) precision | ! |+3.402823 E+38 |+1.401298 E-45 | 4 |
_ _
|Double (15-digit) precision| # |+1.7976931 D+308|+4.940656 D-324 | 8 |
_ _
|User-Defined Data Types |----------------------------------------------/
\---------------------------/

Nama variabel juga memiliki ketentuan antara lain :
- Maksimum 40 character, diawali dengan huruf A..Z, diakhiri
dengan $, %, &, !, # untuk menunjukan type
- Tidak boleh sama dengan reserved word, tidak boleh pakai spasi
dan spesial character.

Operator pada Quick BASIC dibagi atas 5 jenis, antara lain :

1. Arithmetic operators : melakukan tugas perhitungan
/--------------------\ /----------------------------\
|Operator|Kegunaan | |Operator|Kegunaan |
|--------------------| |----------------------------|
| |
| ^ | Pangkat | | \ | Pembagian integer |
| - | Negatif | | MOD | Sisa bagi |
| * | Perkalian | | + | Penjumlahan |
| / | Pembagian | | - | Pengurangan |
\--------------------/ \----------------------------/

2. Relational operators : membandingkan strings dan nilai numerik
/--------------------------------------\
|Operator|Kegunaan |
|--------------------------------------|
| = | Sama dengan |
| <> | Tidak sama dengan |
| < | Lebih kecil | | > | Lebih besar |
| <= | Lebih besar atau sama dengan| | >= | Lebih kecil atau sama dengan|
\--------------------------------------/

Relational operators akan menghasilkan dua kemungkinan nilai
yaitu -1 jika benar dan 0 jika salah.

3. Logical operators : test kondisi dan manipulasi bits
/-----------------------------------------------------\
|Expresi1|Expresi2| NOT | AND | OR | XOR | EQV | IMP |
|-----------------------------------------------------|
| | | | | | |
| T | T | F | T | T | F | T | T |
| T | F | F | F | T | T | F | F |
| F | T | T | F | T | T | F | T |
| F | F | T | F | F | F | T | T |
\-----------------------------------------------------/

Functional operators : operator pelengkap
String operators : mengabung (+), dan membandingkan String

PERINTAH DASAR INPUT OUTPUT

Komputer hanya melaksanakan apa yang diperintahkan pemrogram.
Jadi, dalam membuat program untuk menyelesaikan suatu masalah,
kita harus tahu cara penyelesaiannya. Untuk itu diperlukan tahap-
tahap dalam menyelesaikan masalah tersebut.

INPUT dan OUTPUT merupakan awal dan akhir pengolahan suatu
data. Tanpa proses INPUT, kita tidak dapat memperoleh data untuk
diolah dan data-data yang telah selesai diolah tidak akan berarti
tanpa proses OUTPUT.

Syntax :
INPUT [;]["Prompt"{,|;}], Var list
PRINT [expresion list {,|;}]

Contoh 1 :
REM Program mencari Isi Bujursangkar
INPUT "MASUKKAN SISI BUJURSANGKAR :",S
ISI = S * S
PRINT "ISI DARI BUJURSANGKAR ADALAH :",ISI
END


QBASIC MODUL 1 DOWNLOAD
QBASIC MODUL 2 DOWNLOAD
QBASIC MODUL 3 DOWNLOAD
QBASIC MODUL 4 DOWNLOAD
QBASIC MODUL 5 DOWNLOAD
QBASIC MODUL 6 DOWNLOAD
QBASIC MODUL 7 DOWNLOAD
QBASIC MODUL 8 DOWNLOAD
QBASIC MODUL 9DOWNLOAD
QBASIC MODUL 10 DOWNLOAD
QBASIC MODUL 11 DOWNLOAD
QBASIC MODUL 12 DOWNLOAD
QBASIC MODUL 13 DOWNLOAD

Google Vs Hacking


Tidak tahu apakah penggunaan google ini sudah bisa disebut seni atau bukan dan mudah mudahan juga istilah seni internet tidak dipatenkan sehingga saya tidak disebut plagiat dan harus membayar fee J . Tulisan ini dibuat untuk berbagi pengalaman mudah-mudahan bermanfaat dan semoga juga tidak membosankan serta tidak mengesalkan.
Satu keumuman yang dapat dicermati ketika kita membaca tulisan-tulisan yang ditampilkan di Jasakom (mungkin juga di situs-situs lain yang berkaitan dengan tema-tema h4_0r) adalah penulisnya menggunakan google sebagai mesin pencarinya. Banyak ungkapan menarik yang dituliskan untuk menunjukkan kedekatan para penulis ini dengan google. Di bawah ini diberikan contoh beberapa ungkapan tersebut yang diambil dari tulisan di Jasakom.
Download Selengkanya

TRIK 9 HACKING

===========
Tittle : SUPER KIDDIES HACKING: “PHP SUPER BUGS”
Author : K-159
Greetz : Lieur-Euy, Red_Face, Itsme-, yudhax, pe_es, bithedz, KuNtuA, Baylaw, Minangcrew,
Chanel : #bandunghacker, #indohackinglink, #hackercrew, #batamhacker, #aikmel
Email : eufrato@linuxmail.org
Reference : security-corporations.com, security-focus.com, bugs-traq, google.com
Selengkapnya Disini

Pemrograman Pascal Lengkap

1. Sejarah PASCAL
merupakan pengembangan dari bahasa ALGOL 60, bahasa pemrograman untuk sains komputasi. Tahun 1960, beberapa ahli komputer bekerja untuk mengembangkan bahasa ALGOL, salah satunya adalah Dr. Niklaus Wirth dari Swiss Federal Institute of Technology (ETH-Zurich), yang merupakan anggota grup yang membuat ALGOL. Tahun 1971, dia menerbitkan suatu spesifikasi untuk highly-structured language (bahasa tinggi yang

terstruktur) yang menyerupai ALGOL. Dia menamainya dengan PASCAL (seorang filsuf dan ahli matematika dari Perancis) Pascal bersifat data oriented, yaitu programmer diberi keleluasaan untuk mendefinisikan data sendiri. Pascal juga merupakan teaching language (banyak dipakai untuk pengajaran tentang konsep pemrograman). Kelebihan yang lain adalah penulisan kode Pascal yang luwes, tidak seperti misalnya FORTRAN, yang memerlukan programmer untuk menulis kode dengan format tertentu. Bentuk dasar program Pascal adalah seperti berikut:
Selengkapnya di Sini

Tipe Data Terstruktur
tipe ini terdiri atas : array, record, set, dan file. String adalah tipe data jenis array, tetapi karena string memiliki kekhasan tersendiri sebagai array dari karakter maka penulis perlu memberikan penjelasan tersendiri. Sedangkan untuk array, record, dan file perlu dijelaskan dalam bab yang lain karena agak banyak hal-hal yang perlu dibahas.a. Tipe Data String String
Selengkapnya di Sini

PERINTAH INPUT - OUTPUT
1. Assignment
Komputer bisa mengolah dan menampilkan sesuatu yang ada di dalam memori. Merupakan cara tersederhana untuk “menempatkan” (assign) data ke memori.
Contoh:
program luas_PersegiPanjan_00; {Program untuk menghitung luas bangun empat persegi panjang} uses wincrt;
var panjangPSP, lebarPSP, luasPSP : integer;
{Mendeklarasikan variable panjang, lebar dan luas persegi panjang sebagai integer}
BEGIN {Program MULAI}
panjangPSP := 25;
lebarPSP := 20;
luasPSP := panjangPSP * lebarPSP;
END. {Program SELESAI}
Selengkapnya di Sini

STRUKTUR KONTROL PROGRAM
1. Struktur Pengulangan
Secara alamiah, suatu proses bisa berupa proses berurutan dari awal hingga selesai, pilihan berdasarkan kondisi tertentu atau pengulangan bedasarkan batasan tertentu pula. PASCAL menyediakan beberapa konstruksi perintah untuk melakukan proses-proses itu, yaitu:
1. For … to … do
2. While … do
3. Repeat … until
4. goto
Selengkapnya di Sini

SUB PROGRAM (Procedure)
1. Pemrograman Modular
Modular programming adalah merupakan suatu teknik untuk menulis program yang berukuran besar. Program dibagi menjadi beberapa bagian kecil. Tiap bagian disebut module, yang melakukan suatu tugas tertentu.
Contoh :
• Menampilkan menu pilihan
• Menghitung nilai rata-rata
• Mensortir data
Selengkapnya Disini

ARRAY (LARIK)
1. Pendahuluan
Suatu array adalah sebuah struktur data yang terdiri atas banyak variabel dengan tipe data sama, dimana masing-masing elemen variabel mempunyai nilai indeks. Setiap elemen array mampu untuk menyimpan satu jenis data (yaitu: variabel). Suatu array dinyatakan dengan type, sehingga variabel yang bekerja akan dinyatakan dengan:
contoh type
A = array [1..10] of integer;
Selengkapnya Disini

RECORD (REKAMAN)
Sebuah record rekaman disusun oleh beberapa field. Tiap field berisi data dari tipe dasar / bentukan tertentu. Record mempunyai kelebihan untuk menyimpan suatu sekumpulan elemen data yang berbeda-beda tipenya (di banding array). Contoh , sebuah record dengan empat buah field.

Selengkapnya Disini






10.19.2008

Festival Seni Budaya Asmat Tahun 2008


Jika Anda berkesempatan mengunjungi Festival Budaya Suku Asmat (Asmat Culture Festival), pasti Anda akan terkesima dan kagum dengan keunikan dan keindahan hasil karya mereka. Karya seni yang lahir dari budaya dan keterampilan mereka, selain mengangkat citra dan jati diri suku Asmat, juga menghasilkan uang yang cukup fantastis.

ADALAH Yohanis Kimisinai, dari Kampung Kairin, Asmat, salah satu pemahat yang paling bahagia dalam Festival Budaya Asmat ke 25 Tahun 2008. Walau patungnya hanya berpredikat Juara III Kategori Panel, tapi patung ukiran Yohanis memecahkan rekor penjualan tertinggi dalam lelang Sesi I Festival Seni Budaya Asmat ke 25 tanggal 8-12 Oktober Tahun 2008 yang belangsung di Asmat.
Patung hasil karya Yohanis yang bercerita tentang keberanian membunuh musuh di kampung lain, kemudian mayatnya dibawa pulang dan melakukan pesta kemenangannya, dihargai Rp 30 juta oleh Bupati Asmat, Yuven Biakai.



Selain karya Yohanis, sejumlah hasil karya patung seni pahat dan seni ukir suku Asmat juga bernilai tinggi dengan harga puluhan juta rupiah.
Hasil karya Yakobus Seranbi dari Er dan Demianus Kortus, juga dihargai masing-masing Rp 20 juta. Selain itu sejumlah patung karya tangan terampil warga suku Asmat juga dihargai bervariasi, ada yang dihargai Rp 15 juta, Rp10 juta. Rp7,5 juta, Rp6 juta sampai dengan harga di bawah Rp1 juta.
Jumlah uang yang dikumpulkan para pematung Asmat dalam lelang sesi pertama pagi, Jumat (10/10) kemarin, lebih dari Rp100 juta. Lelang ini dilanjutkan sore harinya.
Selain warga suku Asmat berhasil mendapatkan uang melalui lelang resmi dalam forum festival, ratusan karya mereka yang dipajang dalam stand pameran festival, banyak yang terjual kepada pengunjung.
Festival Seni Budaya Asmat ke 25 tahun 2008, diikuti 203 pemahat dan ratusan penari dan diliput sejumlah wartawan cetak dan elektronika dari Indonesia. Festival yang ke-25 tahun 2008 ini berlangsung mulai tangal 8 s/d 12 Oktober 2008. Dengan thema "Mengupayakan Pelestarian Nilai-nilai Luhur Budaya sebagai Jati Diri dalam Mewujudkan Pembangunan Masa Depan Asmat Baru".
Dalam Pembukaan Lelang hasil karya para pematung yang berlangsung di Asmat, Jumat (10/10) kemarin, dihadiri Dubes Vatikan untuk Indonesia, Mgr. Leopoldo Girelli yang mewakili Paus Benedictus XVI, sekaligus mendapat kepercayaan membuka lelang hasil karya para pematung suku Asmat.
Hadir pula dalam acara ini, Bupati Merauke Yohanis Gluba Gebse, Bupati Asmat Yuven Biakai, Uskup Timika, Mgr. John Philip Saklil, Pr, Uskup Agats Mgr. Aloysius Murwito, OFM, sejumlah pejabat Muspida Asmat dan Merauke, serta tamu undangan dari dalam dan luar negeri. Sejumlah tamu luar negeri juga bergabung dalam rombongan PT Freeport Indonesia.
Melalui Dubes Vatikan untuk Indonesia, Paus Benedictus XVI menyerukan kepedulian Gereja Katolik untuk ikut melestarikan budaya Suku Asmat karena melalui budaya itu juga dapat ditemukan kebenaran dan jati diri manusia. Ia mengatakan, sejak dari awal gereja Katolik punya komitmen untuk tidak memisahkan budaya Asmat dari masyarakat Asmat.
Sementara ketua Panitia Penyelenggara Festival Budaya Asmat Tahun 2008, Emerikus Kasamol, mengatakan, festival tahun ini agak istimewa karena merupakan "tahun perak" karena sudah 25 tahun festival ini diselenggarakan dan sudah memberi manfaat bagi masyarakat suku Asmat.
Selain memberikan hasil ekonomi, juga berhasil mengangkat jati diri suku Asmat sampai ke tingkat internasional. "Melalui festival ini, suku Asmat menjadi manusia Asmat sejati," kata Kasamol berapi-api.
Kepada Wartawan, Kasamol juga berharap, tahun ini kalau bisa hasil penjualan lebih meningkat. Tahun lalu, lelang tertinggi hanya Rp 24 juta. Namun tahun perak ini salah satu hasil karya putra suku Asmat dihargai Rp 30 juta. "Ini sangat menyenangkan," ujar Kasamol bangga.
Dalam festival ini, kata Kasamol, ada enam kategori yang dilombakan, yaitu Kategori Patung Kecil, Patung Sedang, Patung Besar, Kategori Cerita Rakyat, Kategori Tradisional dan Kategori Panel. Mereka yang berhasil merebut juara I masing-masing kategori akan masuk museum dan pematungnya diberi penghargaan masing-masing senilai Rp10 juta. Sementara Juara II dan III masing-masing kategori akan diikutkan lelang.
Festival Seni Budaya Asmat tahun ini juga akan dihadiri kapal pesiar yang memuat sejumlah turis asing untuk membeli hasil karya para pematung. Juga ada tujuh delapan kali gelombang pengunjung dari luar Asmat yang mendatangi arena pameran.
Sementara juru bicara PT Freeport Indonesia, Mindo Pangaribuan yang juga hadir dalam festival ini, mengatakan PTFI memahami kebutuhan masyarakat Papua untuk melestarikan tradisi kebudayaan. PTFI juga kata Mindo, tetap berkomitmen mendukung upaya pelestarian budaya ini.
PTFI datang sebagai tamu atau pengunjung, juga membantu mempromosikan festival termasuk memfasilitasi tamu-tamu dari dalam dan luar negeri untuk mengunjungi festival ini.
Lanjut Mindo, PTFI telah lama mendukung festival tahunan Asmat ini. Dalam meningkatkan pemahaman terhadap kebudayaan lokal, menurut Mindo, PTFI sudah melakukan sejumlah kajian tentang masalah sosial, kebudayaan, bahasa dan ekonomi masyarakat yang ada di sekitar wilayah kerja perusahaan. Kajian-kajian tersebut telah meningkatkan komunikasi dan pemahaman antara PTFI dengan masyarakat sekitar. Selain itu, kajian-kajian tersebut telah memberikan kontribusi yang signifikan terhadap pengetahuan dunia mengenai kebudayaan lokal yang unik. Bahkan menurut Mindo, PTFI juga telah mensponsori terbitnya dua buku tentang sosial budaya masyarakat Kamoro dan Amungme.
Dikatakan, ikut melestarikan dan mengembangkan seni budaya lokal Papua, merupakan salah satu komitmen PTFI. Untuk itu setiap tahun, PTFI ikut mendatangkan tamu baik dari dalam maupun dari luar negeri agar mereka mengenal dan membeli hasil karya budaya lokal Papua, khususnya yang ada di wilayah kerja PTFI, seperti Asmat, Kamoro dan Amungme.

Atraksi Asmat Rambah Belanda


Upaya pemerintah untuk memperkenalkan kesenian tradisional terus dilakukan. Salah satunya adalah dengan memperkenalkan kesenian suku Asmat dari Papua pada masyarakat Belanda sebagai bagian dari Trade, Tourism and Investment (TTI). Rombongan Bupati Asmat bertandang ke Belanda pada 28 Agustus - 5 September 2008.
Duta Besar RI untuk Kerajaan Belanda J.E. Habibie mengemukakan bahwa kunjungan tersebut dilakukan untuk mendukung pembangunan Kawasan Timur Indonesia serta mempromosikan atraksi seni budaya Indonesia.
"Kegiatan tersebut diisi dengan demonstrasi memahat kayu yang sudah melegenda di seluruh dunia, demo memasak makanan Papua, serta tari-tarian tradisional Asmat yang menarik minat seratus lebih masyarakat serta sejumlah media massa Belanda," ujarnya dalam keterangan resmi kemarin (3/9).
Fanny Habibie, sapaan akrabnya, menjelaskan bahwa seni pahat Asmat sangat kental dipengaruhi oleh spirit yang mempengaruhi si pemahat dan berusaha dituangkan dalam patung yang dibuat.


"Sehingga hasil akhir dari karya seni itu tampak berjiwa dan tidak semata-mata benda mati sebagaimana patung lain. Secara umum, budaya suku Asmat sangat unik dan terus bertahan hingga sekarang sehingga menjadi salah satu tujuan kunjungan utama Indonesia," lanjutnya.
Pada kesempatan tersebut, Bupati Asmat Yuvensius A. Biakai mengemukakan bahwa sebagai bagian dari Indonesia, Asmat berharap dapat memberikan andil besar serta mendukung pembangunan RI.
"Disadari bahwa kondisi geografis yang terisolir dan daerah berawa-rawa cukup menyulitkan proses pembangunan Asmat, sehingga rencana besar yang hendak diwujudkan ialah membangun bandara internasional dan pelabuhan guna memperluas akses dan mendorong peningkatan pariwisata Asmat," imbuhnya.
Dalam demo memahat patung kayu, tampil tiga warga Asmat dengan pakaian tradisional yang memahat sambil sesekali melafalkan semacam mantra untuk meminta "dukungan spiritual" dari alam sekitar.
Sedangkan ibu-ibu dari Papua Indonesia dan Belanda bergabung untuk demo memasak makanan khas Papua berupa Papeda dengan sup ikan dan hasilnya langsung disuguhkan kepada para pengunjung yang tampak puas menikmati sajian lezat tersebut.
Puncak dari penampilan seni budaya Asmat adalah pertunjukan tari-tarian tradisional yang unik dan kadangkala langsung dikomando oleh Bapak Bupati. Banyak di antara tarian Asmat dilakukan untuk acara ritual, namun salah satu tarian yang ditampilkan berjudul Persahabatan.
Ini merupakan tarian yang bersifat lebih terbuka dan semua orang dapat menari bersama, sehingga tak ayal pada saat dipertunjukkan di akhir acara, hampir semua penonton ikut menari tari tersebut mengikuti gerakan para penari Asmat.
Selain pertunjukan seni budaya, rombongan Asmat juga melakukan acara dialog interaktif di Radio Nederland tanggal 1 September 2008 dan Business Meeting bersama para pengusaha Belanda pada tanggal 2 September 2008.

10.17.2008

Rumah Seribu Cermin


Di sebuah desa kecil, ada sebuah rumah yang dikenal dengan nama "Rumah Seribu Cermin." Suatu hari seekor anjing kecil sedang berjalan-jalan di desa itu dan melintasi "Rumah Seribu Cermin". Ia tertarik pada rumah itu dan memutuskan untuk masuk melihat-lihat apa yang ada di dalamnya.
Sambil melompat-lompat ceria ia menaiki tangga rumah dan masuk melalui pintu depan. Telinga terangkat tinggi-tinggi, ekornya bergerak-gerak secepat mungkin.
Betapa terkejutnya ia ketika masuk ke dalam rumah, ia melihat ada seribu wajah ceria anjing-anjing kecil dengan ekor yang bergerak-gerak cepat. Ia tersenyum lebar, dan seribu wajah anjing kecil itu juga membalas dengan senyum lebar, hangat dan bersahabat.


Ketika ia meninggalkan rumah itu, ia berkata pada dirinya sendiri, "Tempat ini sangat menyenangkan. Suatu saat saya akan kembali mengunjunginya sesering mungkin."

Sesaat setelah anjing itu pergi, datanglah anjing kecil yang lain. Namun, anjing yang satu ini tidak seceria anjing yang sebelumnya. Ia juga memasuki rumah itu.
Dengan perlahan ia menaiki tangga rumah dan masuk melalui pintu. Ketika berada di dalam, ia terkejut melihat ada seribu wajah anjing kecil yang muram dan tidak bersahabat. Segera saja ia menyalak keras-keras, dan dibalas juga dengan seribu gonggongan yang menyeramkan.
Ia merasa ketakutan dan keluar dari rumah sambil berkata pada dirinya sendiri, "Tempat ini sungguh menakutkan, saya takkan pernah mau kembali ke sini lagi."

Seringkali gambaran atau kesan tentang wajah yang ada di dunia ini, yang kita lihat ... adalah cermin gambaran dan kesan dari wajah kita sendiri.

Kalau kita mengesankan keramahan, maka dunia akan tampak ramah...
Kalau dunia terasa suram, mungkin itu karena kesan yang kita berikan...



Salam SUKSES,



Jika kamu memancing ikan....


Jika Kamu Memancing Ikan

Setelah ikan itu terlekat di mata kail, hendaklah kamu mengambil ikan itu....
Janganlah sesekali kamu lepaskan ia semula ke dalam air begitu saja....
Karena ia akan sakit oleh karena bisanya ketajaman mata kailmu dan
mungkin ia akan menderita selagi ia masih hidup.


Begitulah juga setelah kamu memberi banyak pengharapan kepada seseorang...

Setelah ia mulai menyayangimu hendaklah kamu menjaga hatinya....
Janganlah sesekali kamu meninggalkannya begitu saja....
Karena dia akan terluka oleh kenangan bersamamu dan mungkin tidak dapat
melupakan segalanya selagi dia mengingatmu....

Jika kamu menadah air biarlah berpada, jangan terlalu mengharap pada
takungannya dan janganlah menganggap ia begitu
teguh.... cukuplah
sekadar keperluanmu....

Apabila sekali ia retak.... tentu sukar untuk kamu menamba
lnya semula....
Akhirnya ia dibuang....
Sedangkan jika kamu coba membaikinya mungkin ia masih dapat dipergunakan
lagi....


Begitu juga jika kamu memiliki seseorang, terimalah seadanya....
Janganlah kamu terlalu mengaguminya dan janganlah kamu menganggapnya
begitu istimewa....
Anggaplah dia manusia biasa.
Apabila sekali dia melakukan kesilapan bukan mudah bagi kamu untuk
menerimanya.... akhirnya kamu kecewa dan meninggalkannya
.

Sedangkan jika kamu memaafkannya boleh jadi hubungan kamu akan terus
hingga ke akhirnya....


Jika kamu telah memiliki sepinggan nasi... yang kamu pasti baik untuk
dirimu.
Mengenyangkan. Berkhasiat.
Mengapa kamu berlengah, coba mencari makanan yang lain..

Terlalu ingin mengejar kelezatan.
Kelak, nasi itu akan basi dan kamu tidak boleh memakannya.
Kamu akan menyesal.

Begitu juga jika kamu telah bertemu dengan seorang insan..... y
ang kamu
pasti membawa kebaikan kepada dirimu.
Menyayangimu. Mengasihimu.
Mengapa kamu berlengah, coba membandingkannya dengan yang lain.
Terlalu mengejar kesempurnaan.
Kelak, kamu akan kehilangannya apabila dia menjadi m
ilik orang lain
Kamu juga yang akan menyesal.


10.14.2008

SISTEM DAN MODEL1

I. PENGERTIAN SISTEM DAN MODEL
Suatu sistem didefinisikan sebagai himpunan atau kombinasi dari bagian-bagian yang
membentuk sebuah kesatuan yang kompleks. Namun tidak semua kumpulan dan gugus
bagian dapat disebut suatu sistem kalau tidak memenuhi syarat adanya kesatuan (unity),
hubungan fungsional, dan tujuan yang berguna. Suatu kawasan dengan berbagai sumber
daya dan aktivitas di dalamnya merupakan suatu sistem yang kompleks. Dalam penataan
ruang suatu kawasan jelas ketiga syarat tersebut dapat dipenuhi, tata ruang yang berbasis
lahan merupakan suatu kesatuan yang didalamnya terdapat hubungan fungsional
antarsektor atau bagian dalam mencapai tujuan optimalisasi pemanfaatan tata ruang suatu
kawasan. Hubungan fungsional tersebut tercermin pada hubungan antara kondisi sosial,
ekonomi, dan biofisik kawasan. Ketiga kondisi akan saling mempengaruhi dengan fungsifungsi
yang dapat dijelaskan. Kondisi sosial, sebagai contoh adalah perubahan kondisi
kependudukan akan mempengaruhi aktivitas ekonomi yang selanjutnya berpengaruh pada
penggunaan ruang yang akan mengubah kondisi biofisik kawasan.
Model didefinisikan sebagai suatu perwakilan atau abstraksi dari sebuah obyek atau situasi
Download Selengkapnya Disini

aktual. Model memperlihatkan hubungan-hubungan langsung maupun tidak langsung
serta kaitan timbal balik dalam istilah sebab akibat. Oleh karena suatu model adalah
abstraksi dari realitas, pada wujudnya kurang kompleks daripada realitas itu sendiri. Jadi,
1). Makalah disampaikan pada Pelatihan Penyusunan Produk Domestik Regional Bruto(Pdrb) Hijau Dan
Perencanaan Kehutanan Berbasis Penataan Ruang. Badan Planologi Kehutanan, Departemen
Kehutanan. Bogor 4 – 9 Juni 2006
Tujuan Instruksional Khusus:
Setelah mengikuti pelatihan ini, peserta pelatihan akan dapat:
1. menjelaskan perbedaan pengertian sistem dan model,
2. menentukan jenis dan klasifikasi model,
3. menjelaskan tentang permodelan sistem


model adalah sutau penyederhanaan dari suatu realitas yang kompleks. Model dikatakan
lengkap apabila dapat mewakili berbagai aspek dari realitas yang sedang dikaji. Sebagai
contoh, boneka adalah model dari bentuk manusia; boneka yang dapat tertawa, menangis,
dan berjalan adalah model manusia yang lebih lengkap, tidak hanya mewakili bentuk
tetapi juga beberapa perilaku manusia.
II. PENDEKATAN SISTEM DALAM PENYUSUNAN TATA RUANG
Kenyataan yang mendasar dari persoalan aktual tata ruang adalah kompleksitas, dimana
unitnya adalah keragaman. Oleh karena itu, keragaman yang begitu besar tidak mungkin
dikaji atau dikendalikan oleh satu atau dua metode spesifik saja. Dalam hal ini, teori
sistem menyatakan bahwa kesisteman adalah suatu meta-konsep atau meta-disiplin,
formalitas dan proses dari keseluruhan disiplin ilmu dan pengetahuan sosial dapat
dipadukan dan berhasil. Karena sistem selalu mencari keterpaduan antarbagian melalui
pemahaman yang utuh, maka perlu suatu kerangka fikir yang dikenal sebagai pendekatan
sistem (system approach) dalam penataan ruang suatu kawasan.
Pendekatan sistem dalam penataan ruang suatu kawasan adalah cara penyelesaian
persoalan yang dimulai dengan dilakukannya identifikasi terhadap adanya sejumlah kebutuhankebutuhan
ruang sehingga dapat menghasilkan suatu operasi dari sistem tata ruang yang
dianggap efektif. Dalam pendekatan sistem umumnya ditandai oleh dua hal, yaitu (1)
mencari semua faktor yang penting yang ada dalam mendapatkan solusi yang baik untuk
menyelesaikan masalah dan (2) dibuat suatu model kuantitatif untuk membantu
keputusan secara rasional. Untuk dapat bekerja sempurna suatu pendekatan sistem
mempunyai delapan unsur yang meliputi (1) metodologi untuk perencanaan dan
pengelolaan, (2) suatu tim yang multidisipliner, (3) pengorganisasian, (4) disiplin untuk
bidang yang non-kuantitatif, (5) teknik model matematik, (6) teknik simulasi, (7) teknik
optimasi, dan (8) aplikasi komputer.
Salah satu unsur yang penting adalah aplikasi manajerial pada metodologi perencanaan,
pengendalian, dan pengelolaan sistem. Proses tersebut melalui beberapa tahap yang
dimulai dengan mendefinisikan kebutuhan, memformulasikan masalah, sintesa dari alternatif
pemecahan masalah, kelayakan dari alternatif, metode untuk memperoleh alternatif yang
ada, rancangan yang optimal, dan operasionalisasi sistem.
4
Dalam pelaksanaannya, pendekatan sistem memerlukan kerja lintas disiplin dan atau
suatu tim yang multidisipliner. Tim ini terdiri dari beberapa pakar dan praktisi berbagai
fungsi yang berlainan. Tim ini secara bersama-sama melaksanakan pendekatan sistem
untuk memecahkan perihal yang dihadapi. Dengan adanya berbagai disiplin atau keahlian
yang berbeda fungsi yang kemudian membentuk suatu tim yang multidisipliner, maka
agar tersebut bekerja secara sempurna perlu adanya komunikasi interpersonal dan
pengorganisasian. Adanya pengorganisasian yang sempurna menyebabkan tim tersebut
dapat melaksanakan aktivitas secara efektif, terutama dalam alokasi sumber daya manusia
dan potensi fisik selama menjalankan suatu perencanaan dari operasi sistem.
Teknik model matematik sebagai unsur penting dalam penyusunan model abstrak yang
representatif bagi sistem patut dipelajari. Hal ini terutama dalam mempelajari perilaku
sistem (system behaviour) dan menunjang rasionalisasi keputusan yang berhubungan dengan
perihal yang dihadapi.
Perilaku sistem diartikan sebagai status sistem dalam suatu periode waktu tertentu.
Perubahan status sistem tersebut dapat diamati melalui dinamika outputnya. Status
sistem dapat berkeadaan transien yaitu adanya perubahan output di setiap satuan waktu
atau berkeadaan berkesinambungan (steady state) yaitu adanya keseimbangan aliran masuk
dan keluar. Status sistem juga berkaitan dengan apakah tertutup (closed system) dimana
interaksi dengan lingkungan sangat kecil sehingga bisa diabaikan, dan atau terbuka (open
system) dimana paling sedikit satu elemennya berinteraksi dengan lingkungannya.
Disamping sejumlah hal-hal yang nyata dapat dikuantitatifkan, juga harus diperhatikan
adanya pemikiran yang bersifat non-kuantitatif (non-quantitative thinking) dimana hal ini
tidak dapat digantikan oleh suatu ’model mental’. Berdasarkan pengalaman, hal tersebut
timbul bersama-sama dengan hal-hal yang nyata atau fisik.
Teknik simulasi biasanya berguna bila ahli sistem memiliki program komputer atau model
fungsi lainnya dimana dapat menyusun suatu rancangan strategi untuk melaksanakan
manajemen.
5
Teknik optimisasi adalah pengkajian dimana diinginkan suatu batas kritis maksimum atau
minimum dari suatu sistem yang berjalan, karena sistem tersebut tidak bisa lepas dari
adanya pengaruh-pengaruh yang bersifat fisik maupun sosial yang berasal dari kondisi
lingkungan dimana sistem tersebut berada.
Dalam melakukan pendekatan sistem dapat dengan menggunakan komputer atau tanpa
menggunakan komputer. Akan tetapi adanya fasilitas komputer memudahkan
penggunaan model dan teknik simulasi dalam sistem, terutama dalam menghadapi
masalah yang cukup luas dan kompleks dimana banyak sekali peubah, data dan interaksiinteraksi
yang mempengaruhi, seperti halnya dalam penataan ruang suatu kawasan.


10.13.2008

Ketika Seks Menjadi Menyakitkan


Banyak wanita yang merasakan kesakitan saat melakukan hubungan seks pada saat-saat tertentu yang dikenal dengan istilah dyspareunia. Bagi kebanyakan wanita, rasa itu hanyalah ketidak-nyamanan yang terjadi sesaat. Tetapi terkadang pada beberapa yang lain, rasa sakit seakan menjadi sesuatu yang selalu terjadi saat berhubungan. Ahli terapi psikoseksual Paula Hall akan menerangkan sebabnya dan solusinya.

Kurangnya rangsangan seksual
Selama ini hal inilah penyebab utama dari hubungan seks yang menyakitkan.

Ketika tubuh wanita siap untuk seks, vagina akan mengembang baik panjang dan lebarnya. Ketika hal ini terjadi, vagina Anda akan menjadi basah dan berpelumas untuk menghindari pergesekan. Vagina memang tidak didesain untuk dimasuki dalam keadaan yang tidak terangsang.

Jika Anda merasa yakin sudah begitu terangsang tetapi tetap merasakan sakit, lebih baik periksalah ke dokter Anda.

Rangkaian rasa sakit
Masalah dengan rasa sakit ini akan menghalangi rangsangan seksual. Dan tentu saja, kurangnya rangsangan seksual akan menyebabkan rasa sakit lebih lanjut lagi.


Banyak wanita menemukan kalau mereka terperangkap dalam rangkaian rasa sakit yaitu pernah punya pengalaman hubungan seks yang menyakitkan sebelumnya, mereka akan trauma akan mengalami rasa sakit lagi. Rasa takut akan rasa sakit ini akan menghalangi rangsangan yang dilakukan, kurangnya rangsangan yang dirasakan menyebabkan rasa sakit lagi dan seperti itulah rangkaian kejadian itu terus berulang.

Penyebab sementara
- Baru saja melahirkan
Hal ini menjadi suatu hal yang umum wanita merasa tidak nyaman berhubungan seks setelah melahirkan anak, terutama jika saat melahirkan dilakukan episiotomy (pemotongan untuk mempermudah proses melahirkan).
- Menopause
Hubungan seks akan menjadi menyakitkan ketika memasuki masa menopause di mana kadar hormon estrogen yang rendah menyebabkan tipisnya dinding vagina. Tanyalah dokter Anda atau klinik menopause tentang krim estrogen, yang mana akan mengatasi masalah ini dengan cepat.
- Infeksi saluran kemih
Cystitis atau iritasi vagina seperti sejenis sariawan, vaginitis, dan bisul pada alat kelamin juga bisa menyebabkan rasa sakit. Sekali penyebab utamanya diketahui, rangkaian pengobatan akan bisa mengatasi masalah ini.
- Sensitif terhadap kondom
Anda mungkin akan menderita iritasi akibat produk kondom tertentu, krim kontrasepsi atau pelumas. Cobalah merk lain.

Mengatasinya sendiri
- Rileks
Ini hal terpenting yang dapat Anda lakukan. Mandilah, lakukan latihan pernafasan atau belilah buku dan rekaman untuk melakukan rileksasi.
- Atasi masalah dalam hubungan Anda
Anda perlu memastikan bahwa isi kepala dan hati Anda berada dalam mood yang baik untuk seks, begitu juga tubuh Anda. Jika Anda merasa tidak senang dengan sesuatu hal dengan pasangan Anda, coba selesaikan dahulu.
- Lakukan latihan pada dasar panggul Anda
Ini akan meningkatkan aliran darah pada area genital Anda dan membuat Anda lebih peka terhadap segala sensasi dari rangsangan fisik.
- Coba gunakan fantasi
Timbulkan mood dalam diri Anda dengan masuk dalam fantasi favorit Anda.
- Nikmati rangsangan yang ada
Jangan tergesa-gesa dan biarkan tubuh Anda benar-benar fokus merasakan sensasi kenikmatan akan sentuhan.
- Gunakan pelumas
Sangatlah susah merangsang klitoris yang kering. Gunakan pelumas untuk mempercepat prosesnya, selalu sediakan sebotol di tempat tidur Anda.
- Rangsang saraf rasa takut Anda
Latihlah dengan menonton film horor, naik roller coaster atau lakukan hal lain yang membuat jantung Anda berdegup kencang. Peneliti mengatakan tubuh Anda akan lebih mudah merespon rangsangan seksual 15 sampai 30 menit berikutnya.

Periksa dengan dokter Anda
Jangan khawatir jika segala cara yang Anda coba sendiri di atas tidak berfungsi pada Anda. Sepertinya apa yang menyebabkan rasa sakit itu bisa disembuhkan begitu ditemukan perawatan yang tepat. Anda mungkin harus meminta nasehat dari dokter atau ahli terapi psikoseksual Anda.

Jika Anda merasakan hubungan seksual yang menyakitkan hanya sesaat, penting untuk mengetahui kalau Anda sedang tidak menderita sesuatu penyakit. Dokter Anda mungkin akan menanyakan beberapa seperti ini:
- Apakah rasa sakit hanya sekitar bagian luar vagina Anda atau di bagian yang lebih dalam lagi?
- Apakah sakitnya hanya pada satu sisi atau keduanya?
- Apakah Anda punya penyakit pada punggung?
- Bagaimana Anda menggambarkan rasa sakit itu? Apakah itu rasa sakit yang dalam, atau perih dan terasa terbakar, atau terasa seperti tertusuk-tusuk?
- Apakah Anda merasakan rasa sakit itu hanya saat berhubungan seks atau rasa itu ada terus menerus?
- Apakah itu berubah-ubah pada waktu yang berbeda dalam satu bulan atau pada posisi yang berbeda?

Jika rasa sakit berada di bagian bawah perut atau pada salah satu sisinya, Anda harus memeriksakan diri pada dokter untuk mengetahui apakah ada kelainan ginekologi seperti endometriosis, prolapse, kista indung telur, fibroid dan radang pada bagian panggul.

Kemungkinan lain adalah uterine retroversion, suatu keadaan alami di mana rahim miring ke arah belakang panggul. Pada kondisi ini, Anda akan menemukan dengan memakai posisi yang berbeda, di mana bisa masuk tidak terlalu dalam, akan terasa lebih nyaman.

Jika Anda merasa tidak nyaman secara terus menerus pada daerah kelamin Anda, Anda harus memeriksakan diri pada dokter Anda untuk mengetahui apakah Anda mengalami vulvodynia atau vulval vestibulitus. (bbc/cax)

Domenech Menghitung Hari

MENGHITUNG HARI

CONSTANTA – Masa depan pelatih Prancis Raymond Domenech makin di ujung tanduk. Indikasinya adalah hasil seri 2-2 (2-0) yang diraih Les Bleus, sebutan Prancis, kala dijamu Rumania di Stadion Farul, Constanta, dini hari kemarin WIB. Raihan yang membuat Federasi Sepak Bola Prancis atau FFF segera mengambil keputusan terhadap status Domenech.


2 Rumania v Prancis 2 (Grup 7 Zona Eropa)

MENGHITUNG HARI

CONSTANTA – Masa depan pelatih Prancis Raymond Domenech makin di ujung tanduk. Indikasinya adalah hasil seri 2-2 (2-0) yang diraih Les Bleus, sebutan Prancis, kala dijamu Rumania di Stadion Farul, Constanta, dini hari kemarin WIB. Raihan yang membuat Federasi Sepak Bola Prancis atau FFF segera mengambil keputusan terhadap status Domenech.

Namun, sabar dulu. Sebab, Presiden FFF Jean-Pierre Escalettes mengatakan jika status Domenech masih akan menunggu hingga Rabu (15/10) nanti atau bertepatan dengan rapat dewan pengurus FFF. “Kita lihat saja karena waktunya tidak lama lagi,” katanya kepada stasiun televisi TF1.

“Prancis harus segera berkonsentrasi untuk laga uji coba lawan Tunisia pada Selasa nanti (14/10). Setelah itu, biarlah rapat dewan pengurus FFF yang memutuskan apa yang bakal terjadi,” sambung Escalettes.

Dari pernyataan Escalettes, hasil uji coba lawan Tunisia yang dihelat di Stade de France, Paris, itu bisa jadi adalah tes terakhir bagi Domenech. Tapi, bisa juga merupakan laga perpisahan bagi pelatih 56 tahun itu mengacu hasil kurang menggembirakan di tiga laga awal kualifikasi PD 2010.

Terpenting, Domenech jelas-jelas gagal memenuhi target tidak resmi FFF. Sebagaimana yang diyakini media-media di Prancis, pelatih yang menangani Les Bleus sejak 12 Juli 2004 itu harus merebut minimal 5 poin di tiga laga awal kualifikais PD 2010. Kabarnya, target itu sebagai deal antara Domenech dan FFF gara-gara hasil buruk Les Bleus di Euro 2008 Juni lalu yang sudah tersisih sejak fase grup.

Kenyataannya, Domenech hanya mempersembahkan 4 poin. Di laga pertama, Prancis kalah 1-3 dari Austria (6/9) meski sempat menang 2-1 atas Serbia di laga berikutnya (10/9). Efeknya, juara Piala Dunia 1998 dan runner-up Piala Dunia 2006 itu kini harus rela menempati peringkat keempat grup 7 zona Eropa di bawah Serbia, Lithuania, dan Austria.

Saat menghadapi Rumania, Prancis sejatinya juga nyaris kalah. Itu setelah Rumania leading dua gol di awal pertandingan lewat aksi Florentin Petre pada menit keenam dan heading Dorin Goian menit ke-17. Tapi, gelandang muda Prancis Yoann Gourcuff menjadi penyelamat Prancis lewat tendangan jarak jauh pada menit ke-69 setelah didahului gol Franck Ribery di menit ke-36.

“Secara hasil kami memang belum maksimal. Tapi, dari segi spirit permainan, khususnya yang ditunjukkan pemain di babak kedua, saya salut dengan para pemain,” ungkap Domenech kepada AFP.

Terkait jabatannya yang tengah terancam, Domenech kembali memperlihatkan sikap cuek. Sikap mantan pelatih Prancis U-21 itulah yang terkadang membuat publik atau fans Les Bleus geram. Seperti kala Domenech justru asyik mempertontonkan kemesraan dengan pacarnya di televisi usai kegagalan Prancis di Euro 2008.

Di sisi lain, di Prancis saat ini sudah santer beredar nama-nama pelatih yang dianggap pantas menggantikan posisi Domenech. Antara lain mantan kapten Les Bleus di Piala Dunia 1998 Didier Deschamps, pelatih Bordeaux Laurent Blanc, maupun Gerard Houllier, mantan pelatih Prancis pada 1992-1993.

Sementara itu, start kurang menggembirakan Prancis di kualifikasi PD 2010 menular kepada tim raksasa Eropa lainnya, Portugal. Sekalipun kembali diperkuat Cristiano Ronaldo, Portugal hanya mampu bermain imbang tanpa gol lawan Swedia di Stadion Rasunda di Solna.

Dengan hasil tersebut, skuad Carlos Queiroz masih tertahan di peringkat ketiga grup 1 dengan 4 poin atau berselisih tiga poin dengan urutan teratas Denmark. “Hasil yang lumayan karena laga yang kami jalani tidak mudah. Saya juga puas tidak lagi mengalami masalah dengan cedera,” ucap Ronaldo sebagaimana dilansir Reuters. (dns)



STATISTIK PERTANDINGAN

RUMANIA PRANCIS

3 Tembakan ke Gawang 2

0 Tembakan Melenceng 0

2 Penyelamatan 2

3 Sepak Pojok 6

1 Offside 2

1 Kartu Kuning 2

0 Kartu Merah 0

61% Penguasaan Bola 39%



HOME || INDEX


Contoh program Menggunakan while… do..

program ulang;
uses crt;
var
jml,I:integer;
begin
clrscr;
I:=0;
while I<10 do
begin
I:=I+1;
writeln(’data ke:’,i,’unisbank’);
writeln(’teknik industri’);
end;
readln;
end.

Contoh program Menggunakan for….do…

program ulang_taufik;
uses crt;
var
X,celcius:integer;
fahrenheit:real;
begin
writeln(’********************’);
writeln(’ celcius fahrenheit ‘);
writeln(’********************’);
celcius:=0;
for X:=1 to 10 do
begin
fahrenheit:=1.8*celcius+32;
writeln(celcius:8,fahrenheit:14:2);
celcius:=celcius+25;
end;
writeln(’*******************’);
readln;
end.

Contoh program Menggunakan case ….of….

program latihan_bytaufik;
uses crt;
var
npeserta,nkursus:string;
kkursus:char;
biaya:real;
lama:integer;
begin
clrscr;
write(’nama peserta’);readln(npeserta);
write(’nama kursus’);readln(nkursus);
write(’kode kursus(A/B/C/D):’);readln(kkursus);
case kkursus of
‘A’,'a’:begin
nkursus:=’visual basic’;
biaya:=300000;
lama:=26;
end;
‘B’,'b’:begin
nkursus:=’visual foxpro’;
biaya:=250000;
lama:=18;
end;
‘C’,'c’:begin
nkursus:=’java’;
biaya:=350000;
lama:=24;
end;
‘D’:begin
nkursus:=’c++’;
biaya:=200000;
lama:=15;
end;
end;
writeln(’nama peserta:’,npeserta);
writeln(’nama kursus:’,nkursus);
writeln(’kode kursus:’,kkursus);
writeln(’lama :’,lama);
readln;
end.

Contoh program Pascal menggunakan If…then..else

program menumakan_bytaufik;
uses crt;
var pil:char;
begin
writeln(’1.nasi soto ‘ ) ;
writeln(’2.nasi rames ‘ );
writeln(’3.nasi rawon ‘ ) ;
write(’menu pilihan anda:’);readln(pil);
if pil=’1′ then
writeln(’anda memilih nasi soto ‘ )
else if pil=’2′ then
writeln(’anda memilih nasi rames ‘ )
else if pil=’3′ then
writeln(’anda memilih nasi rawon ‘ )
else
writeln(’coba1_3′);
readln;
end.

Short Cut Editor Pascal

Perintah menngakses menu

F10 : Mengakses menu
Ctrl + KS atau F2 : Menyimpan program ke disk
F3 : Memanggil program ke disk
Alt + F3 : Menutup program atau jendela yang sedang aktif

Perintah – perintah memindah kursor

Ctrl + S atau anak panah kiri : memindah kursor satu karakter ke kiri
Ctrl + D atau anak panah kanan : memindah satu karakter ke kanan
Ctrl + A atau anak panah kiri : satu kata ke kiri
Ctrl + F atau Ctrl + Anak panah kanan : Satu kata ke kanan
Ctrl + E atau anak panah atas : satu karakter ke atas
Ctrl + X atau anak panah bawah : satu karakter ke bawah
Ctrl + W : Menggulung satu layer ke atas
Ctrl + Z : menggulung satu layer ke bawah
Ctrl + R atau PgUp : Menggulung satu halaman ke atas
Ctrl + C atau PgDn : Menggulung satu halaman ke bawah

Perintah – perintah Menyisip dan menghapus

Ctrl + V atau Ins : Mematikan / menghidupkan mode insert
Ctrl + N : Menyisip baris
Ctrl + Y : menghapus baris
Ctrl + QY : hapus hingga ke akhir baris
Ctrl + H atau Backspace : Menghapus satu karakter ke kiri
Ctrl + G atau Del : Menghapus satu karakter ke kanan
Ctrl + T menghapus satu kata ke kanan

Mencari dan Mengganti kata
Ctrl + QF : Mencari kata
Ctrl + QA : Mencari dan mengganti kata

Perintah – Perintah Blok

Ctrl + KB : Menandai awal blok
Ctrl + KK : Menandai akhir blok
Ctrl + KT : Menandai sebuah kata
Ctrl + KC : Mengcopy blok
Ctrl + KV : Memindah blok
Ctrl + KY : Menghapus blok
Ctrl + KR : Membaca blok dari disk
Ctrl + KW : Menulis blok ke disk
Ctrl + KH : Menyembunyikan atau memunculkan tanda blok
Ctrl + KP : Mencetak blok ke printer
Ctrl +KI : Menindentasi blok
Ctrl + KU : Meng –unindentasi blok
Ctrl + QB : Memindah kursor ke awal blok
Ctrl + QK : Memindah kursor ke akhir blok
Ctrl + KD : Keluar ke menu
Ctrl + KL : Menandai garis ( mark line )
Ctrl + Ins : Mengcopy blok ke Clipboard
Shift+ Del : Hapus blok dan kirim ( Copy ) ke Cilpboard
Ctrl + Del : Menghapus blok
Shift + Ins : Panggil isi Clipboard

Perintah-Perintah dalam Turbo Pascal

erintah – Perintah Unit System Golongan Arithmatic di Turbo Pascal

Perintah –perintah berikut ini adalah perintah –perintah yang tidak perlu menggunakan perintah USES pada awal program, lebih tepatnya tidak perlu menggunakan Uses System. Semua perintah yang tergabung dalam Unit System bisa langsung diterjemahkan oleh kompiler turbo pascal. Sebab perintah – perintah yang ada dalan Unit System adalah perintah – perintah utama dalam Turbo Pascal. Tetapi jika anda memasukkan perintah dari unit lain, maka perintah USES harus diberikan pada awal program diikuti nama unit dari perintah yang bersangkutan.

Berikut adalah perintah-perintah Unit System Golongan Arithmatic:

Int :
Perintah untuk mengabaikan angka dibalik koma. Penggunaannya : Int(45,78)=45
Frac:
Mengambil desimal suatu bilangan. Frac(45,78)=0,78 . (Frac=Fraction)
Sqr:
Mencari pangkat 2 dari suatu bilangan. Sqr(3)=9. (Sqr=Square)
Sqrt:
Mencari akar pangkat dua dari suatu bilangan. Sqrt(16)=4. (Sqrt=Square Root)
Exp:
Untuk mencari eksponensial (exponential) dari suatu bilangan. Contoh Exp dari 1 =2,72
Ln:
Mencari logaritma natural dari suatu bilangan. (Ln=logarithma natural).
Pi :
Untuk memasukkan bilangan pi (3,1415926536)
Sin :
Untuk mencari Sinus dari suatu bilangan dalam satuan radian.
Bentuk umumnya adalah: Sin(angka)
Untuk mengkonversi kedalam derajat, maka harus ditambahkan rumus:Sin(Angka/(180/Pi).
Cos:
Untuk mencari Cosinus dari suatu bilangan dalam satuan radian.
Bentuk umumnya adalah : Cos(angka)
Untuk mengkonversi kedalam derajat maka harus ditambahkan rumus:Cos(angka/(180/Pi)
Tan:
Turbo pascal tidak menyediakan perintah untuk mencari tangen dari suatu bilangan. Tetapi dengan perintah Sinus dan Cosinus, maka Tangen dari suatu bilangan dengan dicari dengan rumus : Tan=Sin(angka)/Cos(angka)
Arctan:
Untuk mencari Arctangen dari suatu bilangan.
ArcSin:
Sama dengan Tan, Turbo Pascal tidak menyediakan perintah untuk mencari Arcsinus dari suatu bilangan. Tetapi dengan adanya perintah Arctan, Sqr dan Sqrt, maka ArcSin dari suatu bilangan dapat dicari dengan rumus : ArcSin(x)=ArcTan(x/Sqrt (1-Sqr(x))), dimana x adalah bilangan Real.
ArcCos:
Turbo pascal tidak menyediakan ArcCos.Rumusnya adalah : ArcCos(x)=ArcTan(sqrt(1-sqr(x)) /x), dimana x adalah bilangan Real.
Abs:
Untuk mencari absolut (menghilangkan tanda negatif) dari suatu bilangan.

7.07.2008

VISUAL BASIC

Modul 1
Menggunakan Option Button dan Frame


Buat Form seperti di bawah ini yang terdiri dari 4 frame yang diberinama pada properties caption: Style, Color, Underine dan Strike. 4 Option untuk Style, 4 option untuk Color, 2 option untuk strike dan 2 option untuk underline.



Lalu tulis Source code nya

Private Sub Option1_Click()
Label1.FontBold = False
Label1.FontItalic = False
End Sub

Private Sub Option10_Click()
Label1.ForeColor = vbYellow
End Sub

Private Sub Option11_Click()
Label1.FontStrikethru = True
End Sub

Private Sub Option12_Click()
Label1.FontStrikethru = False
End Sub

Private Sub Option2_Click()
Label1.FontItalic = True
End Sub

Private Sub Option3_Click()
Label1.FontBold = True
End Sub

Private Sub Option4_Click()
Label1.FontBold = True
Label1.FontItalic = True
End Sub

Private Sub Option5_Click()
Label1.FontUnderline = True
End Sub

Private Sub Option6_Click()
Label1.FontUnderline = False
End Sub

Private Sub Option7_Click()
Label1.ForeColor = vbRed
End Sub

Private Sub Option8_Click()
Label1.ForeColor = vbBlue
End Sub

Private Sub Option9_Click()
Label1.ForeColor = vbGreen
End Sub

Lalu jalankan dengan menekan > pada toolbar atau tekan F5

SISTEM OPERASI

BAB 4
Penjadwalan Proses



4.1. Pengertian dan sasaran penjadwalan proses


Penjadwalan proses merupakan kumpulan kebijaksanaan dan mekanisme di sistem
operasi yang berkaitan dengan urutan kerja yang dilakukan sistem komputer.

Adapun penjadwalan bertugas memutuskan :
a. Proses yang harus berjalan
b. Kapan dan selama berapa lama proses itu berjalan

Kriteria untuk mengukur dan optimasi kinerje penjadwalan :
a. Adil (fairness)
Adalah proses-proses yang diperlakukan sama, yaitu mendapat jatah waktu
pemroses yang sama dan tak ada proses yang tak kebagian layanan pemroses
sehingga mengalami kekurangan waktu.
b. Efisiensi (eficiency)
Efisiensi atau utilisasi pemroses dihitung dengan perbandingan (rasio)
waktu sibuk pemroses.
c. Waktu tanggap (response time)
Waktu tanggap berbeda untuk :
c.1 Sistem interaktif
Didefinisikan sebagai waktu yang dihabiskan dari saat karakter
terakhir dari perintah dimasukkan atau transaksi sampai hasil
pertama muncul di layar. Waktu tanggap ini disebut terminal response
time.
c.2 Sistem waktu nyata
Didefinisikan sebagai waktu dari saat kejadian (internal atau
eksternal) sampai instruksi pertama rutin layanan yang dimaksud
dieksekusi, disebut event response time.
d. Turn around time
Adalah waktu yang dihabiskan dari saat program atau job mulai masuk ke
sistem sampai proses diselesaikan sistem. Waktu yang dimaksud adalah waktu
yang dihabiskan di dalam sistem, diekspresikan sebagai penjumlah waktu
eksekusi (waktu pelayanan job) dan waktu menunggu, yaitu : Turn arround
time = waktu eksekusi + waktu menunggu.
e. Throughput
Adalah jumlah kerja yang dapat diselesaikan dalam satu unit waktu.
Cara untuk mengekspresikan throughput adalah dengan jumlah job pemakai
yang dapat dieksekusi dalam satu unit/interval waktu.

Kriteria-kriteria tersebut saling bergantung dan dapat pula saling
bertentangan sehingga tidak dimungkinkan optimasi semua kriteria secara
simultan.
Contoh : untuk memberi waktu tanggap kecil memerlukan penjadwalan yang
sering beralih ke antara proses-proses itu. Cara ini meningkatkan
overhead sistem dan mengurangi throughput.
Oleh karena itu dalam menentukan kebijaksanaan perancangan penjadwalan
sebaiknya melibatkan kompromi diantara kebutuhan-kebutuhan yang saling
bertentangan. Kompromi ini bergantung sifat dan penggunaan sistem komputer.

Sasaran penjadwalan berdasarkan kriteria-kriteria optimasi tersebut :
a. Menjamin tiap proses mendapat pelayanan dari pemroses yang adil.
b. Menjaga agar pemroses tetap dalam keadaan sibuk sehingga efisiensi
mencapai maksimum. Pengertian sibuk adalah pemroses tidak menganggur,
termasuk waktu yang dihabiskan untuk mengeksekusi program pemakai dan
sistem operasi.
c. Meminimalkan waktu tanggap.
d. Meminimalkan turn arround time.
e. Memaksimalkan jumlah job yang diproses persatu interval waktu.
Lebih besar angka throughput, lebih banyak kerja yang dilakukan sistem.

4.2 Tipe penjadwalan


Terdapat 3 tipe penjadwal berada secara bersama-sama pada sistem operasi
yang kompleks, yaitu:
1. Penjadwal jangka pendek (short term scheduller)
Bertugas menjadwalkan alokasi pemroses di antara proses-proses ready di
memori utama. Penjadwalan dijalankan setiap terjadi pengalihan proses
untuk memilih proses berikutnya yang harus dijalankan.
2. Penjadwal jangka menengah (medium term scheduller)
Setelah eksekusi selama suatu waktu, proses mungkin menunda sebuah
eksekusi karena membuat permintaan layanan masukan/keluaran atau memanggil
suatu system call. Proses-proses tertunda tidak dapat membuat suatu
kemajuan menuju selesai sampai kondisi-kondisi yang menyebabkan tertunda
dihilangkan. Agar ruang memori dapat bermanfaat, maka proses dipindah
dari memori utama ke memori sekunder agar tersedia ruang untuk proses-
proses lain. Kapasitas memori utama terbatas untuk sejumlah proses aktif.
Aktivitas pemindahan proses yang tertunda dari memori utama ke memori
sekunder disebut swapping. Proses-proses mempunyai kepentingan kecil saat
itu sebagai proses yang tertunda. Tetapi, begitu kondisi yang membuatnya
tertunda hilang dan proses dimasukkan kembali ke memori utama dan ready.
3. Penjadwal jangka panjang (long term scheduller)
Penjadwal ini bekerja terhadap antrian batch dan memilih batch berikutnya
yang harus dieksekusi. Batch biasanya adalah proses-proses dengan
penggunaan sumber daya yang intensif (yaitu waktu pemroses, memori,
perangkat masukan/keluaran), program-program ini berprioritas rendah,
digunakan sebagai pengisi (agar pemroses sibuk) selama periode aktivitas
job-job interaktif rendah.

+----------+
:Suspended :
Program +----: Blocked :<---------------------+
jangka : : Queue : :
menengah ========>: +----------+ Program :
: +=== jangka :
: : pendek :
+----------+ : +----------+ : +=======+ :
: Batch : +--->: Ready : V : :---+
------>: Queue :---------->: Queue :--------->: CPU :----->
: : ^ +----->: : : :---+
+----------+ : : +--->+----------+ +=======+ :
: : : :
Program : : : :
jangka =====+ : : +----------+ :
panjang : : :Suspended : :
: +----: Ready :<---------------------+
Program-program : Queue :
interaktif +----------+

Gambar 4.1 : Tipe-tipe penjadwalan

Sasaran penjadwalan berdasarkan tipe-tipe penjadwalan :
a. Memaksimumkan kinerja untuk memenuhi satu kumpulan kriteria yang
diharapkan.
b. Mengendalikan transisi dari suspended to ready (keadaan suspend ke ready)
dari proses-proses swapping.
c. Memberi keseimbangan job-job campuran.

Penjadwalan jangka panjang
+========================================================================+
: Penjadwalan jangka menengah :
: +==================================================================+ :
: : Penjadwalan jangka pendek : :
: : +============================================================+ : :
: : : : : :
: : : Timeout : : :
: : : ++---------------------------++ : : :
: : : :: :: : : :
: : : \/ :: : : :
: : : Submit +----------+ Dispatch +-----------+ Completion: : :
: : :------->: Ready :--------------->: Running :---------->: : :
: : : +----------+ +-----------+ : : :
: : : /\ :: /\ /\ : : :
: : : :: :: :: :: : : :
: : : :: :: :: Event :: Event : : :
: : : :: :: :: occur :: wait : : :
: : : :: :: :: +------------+ : : :
: : : :: :: ::-----------------: Blocked : : : :
: : : :: :: +------------+ : : :
: : : :: :: /\ :: : : :
: : : :: :: :: :: : : :
: : : :: \/ I/O compeletion :: \/ : : :
: : : +-----------+ atau +------------+ : : :
: : : : Suspended :<------------->: Suspended : : : :
: : : : ready : event : blocked : : : :
: : : +-----------+ completion +------------+ : : :
: : : : : :
: : +============================================================+ : :
: +==================================================================+ :
+========================================================================+
Gambar 4.2 : Tipe-tipe penjadwalan dikaitkan dengan diagram state

4.3 Strategi penjadwalan


Terdapat dua strategi penjadwalan, yaitu :
1. Penjadwalan nonpreemptive (run to completion)
Proses diberi jatah waktu oleh pemroses, maka pemroses tidak dapat diambil
alih oleh proses lain sampai proses itu selesai.
2. Penjadwalan preemptive
Proses diberi jatah waktu oleh pemroses, maka pemroses dapat diambil alih
proses lain, sehingga proses disela sebelum selesai dan harus dilanjutkan
menunggu jatah waktu pemroses tiba kembali pada proses itu. Berguna pada
sistem dimana proses-proses yang mendapat perhatian/tanggapan pemroses
secara cepat, misalnya :
a. Pada sistem realtime, kehilangan interupsi (tidak layani segera) dapat
berakibat fatal.
b. Pada sistem interaktif, agar dapat menjamin waktu tanggap yang memadai.
Penjadwalan secara preemptive baik tetapi harus dibayar mahal. Peralihan
proses memerlukan overhead (banyak tabel yang dikelola). Supaya efektif,
banyak proses harus berada di memori utama sehingga proses-proses tersebut
dapat segera running begitu diperlukan. Menyimpan banyak proses tak
running benar-benar di memori utama merupakan suatu overhead tersendiri.

4.4 Algoritma-algoritma Penjadwalan


Berikut jenis-jenis algoritma berdasarkan penjadwalan :

1. Nonpreemptive, menggunakan konsep :
a. FIFO (First In First Out) atau FCFS (First Come First Serve)
b. SJF (Shortest Job First)
c. HRN (Highest Ratio Next)
d. MFQ (Multiple Feedback Queues)

2. Preemptive, menggunakan konsep :
a. RR (Round Robin)
b. SRF (Shortest Remaining First)
c. PS (Priority Schedulling)
d. GS (Guaranteed Schedulling)

Klasifikasi lain selain berdasarkan dapat/tidaknya suatu proses diambil
secara paksa adalah klasifikasi berdasarkan adanya prioritas di proses-
proses, yaitu :
1. Algoritma penjadwalan tanpa berprioritas.
2. Algoritma penjadwalan berprioritas, terdiri dari :
a. Berprioritas statik
b. Berprioritas dinamis

4.5 Algoritma Preemptive


A. Round Robin (RR)
Merupakan :
· Penjadwalan yang paling tua, sederhana, adil,banyak digunakan algoritmanya
dan mudah diimplementasikan.
· Penjadwalan ini bukan dipreempt oleh proses lain tetapi oleh penjadwal
berdasarkan lama waktu berjalannya proses (preempt by time).
· Penjadwalan tanpa prioritas.
· Berasumsi bahwa semua proses memiliki kepentingan yang sama, sehingga tidak
ada prioritas tertentu.
Semua proses dianggap penting sehingga diberi sejumlah waktu oleh pemroses
yang disebut kwanta (quantum) atau time slice dimana proses itu berjalan.
Jika proses masih running sampai akhir quantum, maka CPU akan mempreempt
proses itu dan memberikannya ke proses lain.
Penjadwal membutuhkannya dengan memelihara daftar proses dari runnable.
Ketika quantum habis untuk satu proses tertentu, maka proses tersebut akan
diletakkan diakhir daftar (list), seperti nampak dalam gambar berikut ini :

Proses Proses Proses
saat berikutnya saat
ini | ini
| | |
V V V
+---+ +---+ +---+ +---+ +---+ +---+ +---+ +---+ +---+ +---+
: B :--: F :--: D :--: G :--: A : : B :--: F :--: D :--: G :--: A :
+---+ +---+ +---+ +---+ +---+ +---+ +---+ +---+ +---+ +---+

Gambar 4.1(a) : Daftar proses runnable.
4.1(b) : Daftar proses runnable sesudah proses b habis quantumnya.

Algoritma yang digunakan :
1. Jika kwanta habis dan proses belum selesai, maka proses menjadi runnable
dan pemroses dialihkan ke proses lain.
2. Jika kwanta belum habis dan proses menunggu suatu kejadian (selesainya
operasi I/O), maka proses menjadi blocked dan pemroses dialihkan ke
proses lain.
3. Jika kwanta belum habis tetapi proses telah selesai, maka proses diakhiri
dan pemroses dialihkan ke proses lain.

Diimplementasikan dengan :
1. Mengelola senarai proses ready (runnable) sesuai urutan kedatangan.
2. Ambil proses yang berada di ujung depan antrian menjadi running.
3. Bila kwanta belum habis dan proses selesai, maka ambil proses di ujung
depan antrian proses ready.
4. Jika kwanta habis dan proses belum selesai, maka tempatkan proses running
ke ekor antrian proses ready dan ambil proses di ujung depan antrian
proses ready.

Masalah yang timbul adalah menentukan besar kwanta, yaitu :
· Kwanta terlalu besar menyebabkan waktu tanggap besar dan turn arround time
rendah.
· Kwanta terlalu kecil menyebabkan peralihan proses terlalu banyak sehingga
menurunkan efisiensi proses.
Switching dari satu proses ke proses lain membutuhkan kepastian waktu yang
digunakan untuk administrasi, menyimpan, memanggil nilai-nilai register,
pemetaan memori, memperbaiki tabel proses dan senarai dan sebagainya.
Mungkin proses switch ini atau konteks switch membutuhkan waktu 5 msec
disamping waktu pemroses yang dibutuhkan untuk menjalankan proses tertentu.
Dengan permasalahan tersebut tentunya harus ditetapkan kwanta waktu yang
optimal berdasarkan kebutuhan sistem dari hasil percobaan atau data historis.
Besar kwanta waktu beragam bergantung beban sistem. Apabila nilai quantum
terlalu singkat akan menyebabkan terlalu banyak switch antar proses dan
efisiensi CPU akan buruk, sebaliknya bila nilai quantum terlalu lama akan
menyebabkan respon CPU akan lambat sehingga proses yang singkat akan menunggu
lama. Sebuah quantum sebesar 100 msec merupakan nilai yang dapat diterima.

Penilaian penjadwalan ini berdasarkan kriteria optimasi :
· Adil
Adil bila dipandang dari persamaan pelayanan oleh pemroses.
· Efisiensi
Cenderung efisien pada sistem interaktif.
· Waktu tanggap
Memuaskan untuk sistem interaktif, tidak memadai untuk sistem waktu nyata.
· Turn around time
Cukup baik.
· Throughtput
Cukup baik.

Penjadwalan ini :
a. Baik untuk sistem interactive-time sharing dimana kebanyakan waktu
dipergunakan menunggu kejadian eksternal.
Contoh : text editor, kebanyakan waktu program adalah untuk menunggu
keyboard, sehingga dapat dijalankan proses-proses lain.
b. Tidak cocok untuk sistem waktu nyata apalagi hard-real-time applications.

B. Priority Schedulling (PS)
Adalah tiap proses diberi prioritas dan proses yang berprioritas tertinggi
mendapat jatah waktu lebih dulu (running). Berasumsi bahwa masing-masing
proses memiliki prioritas tertentu, sehingga akan dilaksanakan berdasar
prioritas yang dimilikinya. Ilustrasi yang dapat memperjelas prioritas
tersebut adalah dalam komputer militer, dimana proses dari jendral
berprioritas 100, proses dari kolonel 90, mayor berprioritas 80, kapten
berprioritas 70, letnan berprioritas 60 dan seterusnya. Dalam UNIX perintah
untuk mengubah prioritas menggunakan perintah nice.

Pemberian prioritas diberikan secara :
a. Statis (static priorities)
Berarti prioritas tidak berubah.
Keunggulan :
· Mudah diimplementasikan.
· Mempunyai overhead relatif kecil.
Kelemahan :
· Tidak tanggap terhadap perubahan lingkungan yang mungkin menghendaki
penyesuaian prioritas.
b. Dinamis (dynamic priorities)
Merupakan mekanisme untuk menanggapi perubahan lingkungan sistem
beroperasi. Prioritas awal yang diberikan ke proses mungkin hanya berumur
pendek setelah disesuaikan ke nilai yang lebih tepat sesuai lingkungan.
Kelemahan :
· Implementasi mekanisme prioritas dinamis lebih kompleks dan mempunyai
overhead lebih besar. Overhead in diimbangi dengan peningkatan daya
tanggap sistem.
Contoh penjadwalan berprioritas :
Proses-proses yang sangat banyak operasi masukan/keluaran menghabiskan
kebanyakan waktu menunggu selesainya operasinya masukan/keluaran.
Proses-proses ini diberi prioritas sangat tinggi sehingga begitu proses
memerlukan pemroses segera diberikan, proses akan segera memulai
permintaan masukan/keluaran berikutnya sehingga menyebabkan proses blocked
menunggu selesainya operasi masukan/keluaran. Dengan demikian pemroses
dapat dipergunakan proses-proses lain. Proses-proses I/O berjalan paralel
bersama proses-proses lain yang benar-benar memerlukan pemroses, sementara
proses-proses I/O itu menunggu selesainya operasi DMA.
Proses-proses yang sangat banyak operasi I/O-nya, kalau harus menunggu
lama untuk memakai pemroses (karena prioritas rendah) hanya akan membebani
memori, karena harus disimpan tanpa perlu proses-proses itu dimemori
karena tidak selesai-selesai menunggu operasi masukan dan menunggu jatah
pemroses.

Dalam algoritma berprioritas dinamis dituntun oleh keputusan untuk memenuhi
kebijaksanaan tertentu yang menjadi tujuan. Layanan yang bagus adalah menset
prioritas dengan nilai 1/f, dimana f adalah ration kwanta terakhir yang
digunakan proses.
Contoh :
· Proses yang menggunakan 2 msec kwanta 100 ms, maka prioritasnya50.
· Proses yang berjalan selama 50 ms sebelum blocked berprioritas 2.
· Proses yang menggunakan seluruh kwanta berprioritas 1.
Kebijaksanaan yang diterapkan adalah jaminan proses-proses mendapat layanan
adil dari pemroses dalam arti jumlah waktu pemroses yang sama.
Keunggulannya penjadwalan berpriorita adalah memenuhi kebijaksanaan yang
ingin mencapai maksimasi suatu kriteria diterapkan.
Algoritma ini dapat dikombinasikan, yaitu dengan mengelompokkan proses-proses
menjadi kelas-kelas prioritas. Penjadwalan berprioritas diterapkan antar
kelas-kelas proses itu.
Algoritma penjadwal akan menjalankan : proses runnable untuk prioritas 4
lebih dulu secara round robin, apabila kelas 4 semua sudah diproses,
selanjutnya akan menjalankan proses runnable untuk prioritas 3 secara round
robin, apabila kelas 3 semua sudah diproses (habis), selanjutnya akan
menjalankan proses runnable untuk prioritas 2 secara round robin, dan
seterusnya, seperti dalam gambar berikut :


Queues header Runnable processes
|=======================================|
+------------+ +---+ +---+ +---+
: Priority 4 :------: :----: :----: : (Highest priority)
: : +---+ +---+ +---+
+------------+ +---+ +---+ +---+ +---+ +---+
: Priority 3 :------: :----: :----: :----: :----: :
: : +---+ +---+ +---+ +---+ +---+
+------------+ +---+
: Priority 2 :------: :
: : +---+
+------------+
: Priority 1 : (Lowest priority)
: :
+------------+

Gambar : Skedul algoritma denga empat klas prioritas

C. Multiple Feedback Queues (MFQ)
Merupakan :
· Penjadwalan berprioritas dinamis
Penjadwalan ini untuk mencegah (mengurangi) banyaknya swapping dengan proses-
proses yang sangat banyak menggunakan pemroses (karena menyelesaikan tugasnya
memakan waktu lama) diberi jatah waktu (jumlah kwanta) lebih banyak dalam
satu waktu. Penjadwalan ini juga menghendaki kelas-kelas prioritas bagi
proses-proses yang ada. Kelas tertinggi berjalan selama satu kwanta, kelas
berikutnya berjalan selama dua kwanta, kelas berikutnya berjalan empat
kwanta, dan seterusnya.
Ketentuan yang berlaku adalah sebagai berikut
· Jalankan proses pada kelas tertinggi.
· Jika proses menggunakan seluruh kwanta yang dialokasikan, maka diturunkan
kelas prioritasnya.
· Proses yang masuk untuk pertama kali ke sistem langsung diberi kelas
tertinggi.
Mekanisme ini mencegah proses yang perlu berjalan lama swapping berkali-kali
dan mencegah proses-proses interaktif yang singkat harus menunggu lama.

D. Shortest Remaining First (SRF)
Merupakan :
· Penjadwalan berprioritas.dinamis.
· Adalah preemptive untuk timesharing
· Melengkapi SJF
Pada SRF, proses dengan sisa waktu jalan diestimasi terendah dijalankan,
termasuk proses-proses yang baru tiba.
· Pada SJF, begitu proses dieksekusi, proses dijalankan sampai selesai.
· Pada SRF, proses yang sedang berjalan (running) dapat diambil alih proses
baru dengan sisa waktu jalan yang diestimasi lebih rendah.

Kelemahan :
· Mempunyai overhead lebih besar dibanding SJF. SRF perlu penyimpanan waktu
layanan yang telah dihabiskan job dan kadang-kadang harus menangani
peralihan.
· Tibanya proses-proses kecil akan segera dijalankan.
· Job-job lebih lama berarti dengan lama dan variasi waktu tunggu lebih lama
dibanding pada SJF.
SRF perlu menyimpan waktu layanan yang telah dihabiskan , menambah overhead.
Secara teoritis, SRF memberi waktu tunggu minimum tetapi karena overhead
peralihan, maka pada situasi tertentu SFJ bisa memberi kinerja lebih baik
dibanding SRF.

E. Guaranteed Scheduloing (GS)
Penjadwalan ini memberikan janji yang realistis (memberi daya pemroses yang
sama) untuk membuat dan menyesuaikan performance adalah jika ada N pemakai,
sehingga setiap proses (pemakai) akan mendapatkan 1/N dari daya pemroses CPU.
Untuk mewujudkannya, sistem harus selalu menyimpan informasi tentang jumlah
waktu CPU untuk semua proses sejak login dan juga berapa lama pemakai sedang
login. Kemudian jumlah waktu CPU, yaitu waktu mulai login dibagi dengan n,
sehingga lebih mudah menghitung rasio waktu CPU. Karena jumlah waktu pemroses
tiap pemakai dapat diketahui, maka dapat dihitung rasio antara waktu pemroses
yang sesungguhnya harus diperoleh, yaitu 1/N waktu pemroses seluruhnya dan
waktu pemroses yang telah diperuntukkan proses itu.
Rasio 0,5 berarti sebuah proses hanya punya 0,5 dari apa yang waktu CPU
miliki dan rasio 2,0 berarti sebuah proses hanya punya 2,0 dari apa yang
waktu CPU miliki. Algoritma akan menjalankan proses dengan rasio paling
rendah hingga naik ketingkat lebih tinggi diatas pesaing terdekatnya.
Ide sederhana ini dapat diimplementasikan ke sistem real-time dan memiliki
penjadwalan berprioritas dinamis.

4.6 Algoritma Nonpreemptive


A. First In First Out (FIFO)
Merupakan :
· Penjadwalan tidak berprioritas.

FIFO adalah penjadwalan paling sederhana, yaitu :
· Proses-proses diberi jatah waktu pemroses berdasarkan waktu kedatangan.
· Pada saat proses mendapat jatah waktu pemroses, proses dijalankan sampai
selesai.

Penilian penjadwalan ini berdasarkan kriteria optimasi :
· Adil
Adil dalam arti resmi (proses yang datang duluan akan dilayani lebih dulu),
tapi dinyatakan tidak adil karena job-job yang perlu waktu lama membuat
job-job pendek menunggu. Job-job yang tidak penting dapat membuat job-job
penting menunggu lam.
· Efisiensi
Sangat efisien.
· Waktu tanggap
Sangat jelek, tidak cocok untuk sistem interaktif apalagi untuk sistem
waktu nyata.
· Turn around time
Jelek.
· Throughtput
Jelek.

FIFO jarang digunakan secara mandiri, tetapi dikombinasikan dengan skema
lain, misalnya :
· Keputusan berdasarkan prioritas proses. Untuk proses-pross berprioritas
sama diputuskan berdasarkan FIFO.

Penjadwalan ini :
a. Baik untuk sistem batch yang sangat jarang berinteraksi dengan pemakai.
Contoh : aplikasi analisis numerik, maupun pembuatan tabel.
b. Sangat tidak baik (tidak berguna) untuk sistem interaktif, karena tidak
memberi waktu tanggap yang baik.
c. Tidak dapat digunakan untuk sistem waktu nyata (real-time applications).

B. Shortest Job First (SJF)
Penjadwalan ini mengasumsikan waktu jalan proses sampai selesai diketahui
sebelumnya. Mekanismenya adalah menjadwalkan proses dengan waktu jalan
terpendek lebih dulu sampai selesai, sehingga memberikan efisiensi yang
tinggi dan turn around time rendah dan penjadwalannya tak berprioritas.

Contoh :
Terdapat empat proses (job) yaitu A,B,C,D dengan waktu jalannya masing-masing
adalah 8,4,4 dan 4 menit. Apabila proses-proses tersebut dijalankan, maka
turn around time untuk A adalah 8 menit, untuk B adalah 12, untuk C adalah
16 dan untuk D adalah 20. Untuk menghitung rata-rata turn around time seluruh
proses adalah dengan menggunakan rumus :

( 4a + 3b + 2c + 1d ) / 4

Dengan menggunakan rumus, maka dapat dihitung turn around time-nya sebagai
berikut (belum memperhatikan shortest job first, lihat gambar a) :

= ( 4a + 3b + 2c + 1d ) / 4
= ( 4x8 + 3x4 + 2x4 + 1x4 ) / 4
= ( 32 + 12 + 8 + 4 ) / 4
= 56 / 4
= 14 menit

Apabila keempat proses tersebut menggunakan penjadwalan shortest job fisrt
(lihat gambar b), maka turn around time untuk B adalah 4, untuk C adalah 8,
untuk D adalah 12 dan untuk A adalah 20, sehingga rata-rata turn around
timenya adalah sebagai berikut :

= ( 4a + 3b + 2c + 1d ) / 4
= ( 4x4 + 3x4 + 2x4 + 1x8 ) / 4
= ( 16 + 12 + 8 + 8 ) / 4
= 44 / 4
= 11 menit


Tidak memperhatikan SJF Memperhatikan SJF

Posisi : a b c d a b c d
Priority : 4 3 2 1 4 3 2 1
Job : A B C D B C D A

+-----------------+ +-----------------+
: 8 : 4 : 4 : 4 : : 4 : 4 : 4 : 8 :
+-----------------+ +-----------------+
(a) (b)

Jelas bahwa a memberikan nilai kontribusi yang besar, kemudian b, c dan d.
Karena SJF selalu memperhatikan rata-rata waktu respon terkecil, maka sangat
baik untuk proses interaktif. Umumnya proses interaktif memiliki pola, yaitu
menunggu perintah, menjalankan perintah, menunggu perintah dan menjalankan
perintah, begitu seterusnya.

Masalah yang muncul adalah :
· Tidak mengetahui ukuran job saat job masuk.
Untuk mengetahui ukuran job adalah dengan membuat estimasi berdasarkan
kelakukan sebelumnya.
· Proses yang tidak datang bersamaan, sehingga penetapannya harus dinamis.
Penjadwalan ini jarang digunakan, karena merupakan kajian teoritis untuk
pembandingan turn around time.

C. Highest Ratio Next (HRN)
Merupakan :
· Penjadwalan berprioritas dinamis.
· Penjadwalan untuk mengoreksi kelemahan SJF.
· Adalah strategi penjadwalan dengan prioritas proses tidak hanya merupakan
fungsi waktu layanan tetapi juga jumlah waktu tunggu proses. Begitu proses
mendapat jatah pemroses, proses berjalan sampai selesai.
Prioritas dinamis HRN dihitung berdasarkan rumus :
Prioritas = (waktu tunggu + waktu layanan ) / waktu layanan
Karena waktu layanan muncul sebagai pembagi, maka job lebih pendek
berprioritas lebih baik, karena waktu tunggu sebagai pembilang maka proses
yang telah menunggu lebih lama juga mempunyai kesempatan lebih bagus.
Disebut HRN, karena waktu tunggu ditambah waktu layanan adalah waktu tanggap,
yang berarti waktu tanggap tertinggi yang harus dilayani.

4.7 Variasi yang diterapkan pada sistem waktu nyata (real time)


Karena sistem waktu nyata sering mempunyai deadline absolut, maka penjadwalan
dapat berdasarkan deadline. Proses yang dijalankan adalah yang mempunyai
deadline terdekat. Proses yang lebih dalam bahaya kehilangan deadline
dijalankan lebih dahulu. Proses yang harus berakhir 10 detik lagi mendapat
prioritas di atas proses yang harus berakhir 10 menit lagi.
Penjadwalan in disebut Earliest Deadline First (EDF).

4.8 Schedulling mechanism VS schedulling policy


Ada perbedaan antara schedulling mechanism dengan schedulling policy.
Skedul algoritma adalah dengan pemakaian nilai-nilai dalam parameter, dimana
nilai-nilai parameter tersebut dapat diisi (set/change) oleh sebuah proses.
Kernel menggunakan algoritma schedulling priority dengan menyediakan sebuah
system call dimana sebuah proses dapat diset dan diubah prioritasnya.
Metode ini dapat membantu proses induk (parent process) sehingga dapat
mengontrol skedul anak prosesnya (child process). Disini mekanismenya adalah
dalam kernel dan policy adalah penetapan nilai (set) oleh proses pemakai.

SISTEM OPERASI

BAB 3
Proses



3.1. Pengertian proses (task/job)


Proses berisi instruksi, data, program counter, register pemroses, stack
data, alamat pengiriman dan variabel pendukung lainnya.
Terdapat beberapa definisi mengenai proses, antara lain :
a. Merupakan konsep pokok dalam sistem operasi, sehingga masalah manajemen
proses adalah masalah utama dalam perancangan sistem operasi.
b. Proses adalah program yang sedang dieksekusi.
c. Proses adalah unit kerja terkecil yang secara individu memiliki sumber
daya dan dijadwalkan oleh sistem operasi.
Peran sistem operasi dalam kegiatan proses adalah mengelola semua proses di
sistem dan mengalokasikan sumber daya ke proses tersebut.
Banyak proses yang dijalankan bersamaan, dimana setiap proses mendapat
bagian memori dan kendali sendiri-sendiri (peran SO), sehingga setiap proses
(program) memiliki prinsip :
a. Independent, artinya program-program tersebut berdiri sendiri, terpisah
dan saling tidak bergantung.
b. One program at any instant, artinya hanya terdapat satu proses yang
dilayani pemroses pada satu saat.
Dalam multiprogramming, teknik penanganan proses adalah dengan mengeksekusi
satu proses dan secara cepat beralih ke proses lainnya (bergiliran),sehingga
menimbulkan efek paralel semu (pseudoparallelism).

Gambar (a) : Multiprogramming dengan 4 proses (program/job)
(b) : Model konseptual dari 4 proses independent, sequential proses
(c) : Hanya 1 proses yang aktif pada suatu saat


3.2. Pengendalian proses


Dalam pengendalian antar proses, sistem operasi menggunakan metode :
a. Saling melanjutkan (interleave)
Sistem operasi harus dapat kembali melanjutkan proses setelah melayani
proses lain.
b. Kebijaksaan tertentu
Sistem operasi harus mengalokasikan sumber daya ke proses berdasar
prioritasnya.
c. Komunikasi antar proses dan penciptaan proses
Sistem operasi harus mendukung komunikasi dan penciptaan antar proses
(menstrukturkan aplikasi).
Pada sistem dengan banyak proses aktif, proses-proses pada satu saat berada
dalam beragam tahap eksekusinya. Proses mengalami beragam state (ready,
running, blocked) selama siklus hidupnya sebelum berakhir dan keluar dari
sistem. Sistem operasi harus dapat mengetahui state masing-masing proses dan
merekam semua perubahan yang terjadi secara dinamis. Informasi tersebut
digunakan untuk kegiatan penjadwalan dan memutuskan alokasi sumber daya.

3.3 Status (state) proses


Sebuah proses akan mengalami serangkaian state diskrit. Beragam kejadian
dapat menyebabkan perubahan state proses. Tiga state tersebut adalah sebagai
berikut :
Tabel 3.1 : Tiga state dasar proses

Hubungan ketiga state dasar digambarkan dalam diagram berikut :

Gambar 3.1 Diagram tiga state dasar proses

Penjelasan diagram :
1. Proses yang baru diciptakan akan mempunyai state ready.
2. Proses berstate running menjadi blocked, karena sumbar daya yang diminta
belum tersedia atau meminta layanan perangkat masukan/keluaran, sehingga
menunggu kejadian muncul. Proses menunggu kejadian alokasi sumber daya
atau selesainya layanan perangkat masukan/keluaran (event wait).
3. Proses berstate running menjadi ready, karena penjadwal memutuskan
eksekusi proses lain karena jatah waktu untuk proses tersebut telah habis
(time out).
4. Proses berstate blocked menjadi ready saat sumber daya yang diminta/
diperlukan telah tersedia atau layanan perangkat masukan/keluaran selesai
(event occurs).
5. Proses berstate ready menjadi running, karena penjadwal memutuskan
penggunaan pemroses utnuk proses itu karena proses yang saat itu running
berubah statenya (menjadi ready ata blocked) atau telah menyelesaikan
sehingga disingkirkan dari sistem. Proses menjadi mendapatkan jatah
pemroses.

3.4 Diagram state lanjut


Penundaan (suspend) adalah operasi penting dan telah diterapkan dengan
beragam cara. Penundaan biasanya berlangsung singkat. Penundaan sering
dilakukan sistem untuk memindahkan proses-proses tertentu guna meredukdi
beban sistem selama beban puncak.
Proses yang ditunda (suspended blocked) tidak berlanjut sampai proses lain
meresume. Untuk jangka panjang, sumber daya-sumber daya proses dibebaskan
(dilucuti). Keputusan membebaskan sumber daya-sumber daya bergantung sifat
masing-masing sumber daya. Memori utama seharusnya segera dibebaskan begitu
proses tertunda agar dapat dimanfaatkan proses lain. Resuming (pengaktifan
kembali) proses, yaitu menjalankan proses dari titik (instruksi) dimana
proses ditunda.
Operasi suspend dan resume penting, sebab :
a. Jika sistem berfungsi secara buruk dan mungkin gagal maka proses-proses
dapat disuspend agar diresume setelah masalah diselesaikan.
Contoh :
Pada proses pencetakan, bila tiba-tiba kerta habis maka proses disuspend.
Setelah kertas dimasukkan kembali, proses pun dapat diresume.
b. Pemakai yang ragu/khawatir mengenai hasil prose dapat mensuspend proses
(bukan membuang (abort) proses). Saat pemakai yakin proses akan berfungsi
secara benar maka dapat me-resume (melanjutkan kembali di instruksi saat
disuspend) proses yang disuspend.
c. Sebagai tanggapan terhadap fluktuasi jangka pendek beban sistem, beberapa
proses dapat disuspend dan diresume saat beban kembali ke tingkat normal.

Gambar berikut menunjukkan modifikasi diagram state dengan memasukkan
kejadian suspend dan resume.

Gambar 3.2 : Diagram lima state proses

Dua state baru dimasukkan sehingga membentuk diagram 5 state, yaitu :
1. Suspended ready
2. Suspended blocked
Penundaan dapat diinisialisasi oleh proses itu sendiri atau proses lain.
a. Pada sistem monoprocessor, proses running dapat mensuspend dirinya
sendiri karena tak ada proses lain yang juga running yang dapat
memerintahkan suspend.
b. Pada sistem multiprocessor, proses running dapat disuspend proses running
lain pada pemroses berbeda. Proses ready hanya dapat di suspend oleh
proses lain.
Pada proses blocked terdapat transisi menjadi suspended blocked. Pilihan in
dirasa aneh. Apakah tidak cukup menunggu selesainya operasi masukan/keluaran
atau kejadian yang membuat proses ready atau suspended ready ?. Bukankah
state blockedm readyblockedm suspended blocked sama-sama tidak mendapat
jatah waktu pemroses ?. Kenapa dibedakan ?.
Alasannya, karena penyelesaian operasi masukan/keluaran bagi proses blocked
mungkin tak pernah terjadi atau dalam waktu tak terdefinisikan sehingga
lebih baik disuspend agar sumber daya-sumber daya yang dialokasikan untuk
proses tersebut dapat digunakan proses-proses lain. Untuk kondisi ini, lebih
baik sumber daya-sumber daya yang dipegang proses yang berkondisi seperti
ini dipakai proses-proses lain.
Proses blocked disuspend sistem atau secara manual menjadi suspended blocked.
Bila akhirnya operasi masukan/keluaran berakhir maka segera proses suspended
blocked mengalami transisi. Karena resume dan suspend mempunyai prioritas
tinggi maka transisi segera dilakukan. Suspend dan resume dapat digunakan
untuk menyeimbangkan beban sistem saat mengalami lonjakan di atas normal.

3.5. Program Control Block (PCB)


Struktur data PCB menyimpan informasi lengkap mengenai proses sehingga dapat
terjadi siklus hidup proses. Sistem operasi memerlukan banyak informasi
mengenai proses guna pengelolaan proses. Informasi ini berada di PCB.
Sistem berbeda akan mengorganisasikan secara berbeda.
Informasi dalam PCB :
1. Informasi identifikasi proses
Informasi ini berkaitan dengan identitas proses yang berkaitan dengan
tabel lainnya.
Informasi tersebut meliputi :
a. Identifier proses
b. Identifier proses yang menciptakan
c. Identifier pemakai
2. Informasi status pemroses
Informasi tentang isi register-register pemroses. Saat proses berstatus
running, informasi tersebut berada diregister-register. Ketika proses
diinterupsi, semua informasi register harus disimpan agar dapat
dikembalikan saat proses dieksekusi kembali. Jumlah dan jenis register
yang terlibat tergantung arsitektur komputer.
Informasi status terdiri dari :
a. Register-register yang terlihat pemakai
Adalah register-register yang dapat ditunjuk instruksi bahasa assembly
untuk diproses pemroses.
b. Register-register kendali dan status
Adalah register-register yang digunakan untuk mengendalikan operasi
pemroses.
c. Pointer stack
Tiap proses mempunyai satu atau lebih stack, yang digunakan untuk
parameter atau alamat prosedur pemanggil dan system call. Pointer
stack menunjukkan posisi paling atas dari stack.
3. Informasi kendali proses
Adalah informasi lain yang diperlukan sistem operasi untuk mengendalikan
dan koordinasi beragam proses aktif.
Informasi kendali terdiri dari :
a. Informasi penjadwalan dan status
Informasi-informasi yang digunakan untuk menjalankan fungsi penjadwalan,
antara lain :
a.1 Status proses
Mendefinisikan keadaan/status proses (running, ready, blocked)
a.2 Prioritas
Menjelaskan prioritas proses.
a.3 Informasi berkaitan dengan penjadwalan
Berkaitan dengan informasi penjadwalan, seperti lama menunggu,
lama proses terakhir dieksekusi.
a.4 Kejadian
Identitas kejadian yang ditunggu proses.
b. Penstrukturan data
Satu proses dapat dikaitkan dengan proses lain dalam satu antrian atau
ring, atau struktur lainnya. PCB harus memiliki pointer untuk mendukung
struktur ini.
c. Komuikasi antar proses
Beragam flag, sinyal dan pesan dapat diasosiasikan dengan komunikasi
antara dua proses yang terpisah.
d. Manajemen memori
Bagian yang berisi pointer ke tabel segmen atau page yang menyatakan
memori maya (virtual memori) proses.
e. Kepemilikan dan utilisasi sumber daya
Sumber daya yang dikendalikan proses harus diberi tanda, misalnya :
e.1 Berkas yang dibuka
e.2 Pemakain pemroses
e.3 Pemakaian sumber daya lainnya
Informasi ini diperlukan oleh penjadwal.
Struktur citra proses digambarkan berurutan di satu ruang alamat.
Implementasi penempatan citra proses yang sesungguhnya bergantung skema
manajemen memori yang digunakan dan organisasi struktur kendali sistem
operasi.

Gambar 3.3 : Proses pemakai

3.6. Operasi-operasi pada proses


Sistem operasi dalam mengelola proses dapat melakukan operasi-operasi
terhadap proses.
Operasi tersebut adalah :
a. Penciptaan proses
b. Penghancuran/terminasi proses
c. Penundaan proses
d. Pelanjutan kembali proses
e. Pengubahan prioritas proses
f. Memblok proses
g. Membangunkan proses
h. Menjadwalkan proses
i. Memungkinkan proses berkomunikasi dengan proses lain

3.7 Penciptaan proses


Melibatkan banyak aktivitas, yaitu :
a. Memberi identitas proses
b. Menyisipkan proses pada senarai atau tabel proses
c. Menentukan prioritas awal proses
d. Menciptakan PCB
e. Mengalokasikan sumber daya awal bagi proses
Ketika proses baru ditambahkan, sistem operasi membangun struktur data untuk
mengelola dan mengalokasikan ruang alamat proses.
Kejadian yang dapat menyebabkan penciptaan proses :
a. Pada lingkungan batch, sebagai tanggapan atas pemberian satu kerja (job)
Sistem operasi dengan kendali batch job, setelah menciptakan proses baru,
kemudian melanjutkan membaca job berikutnya.
b. Pada lingkungan interaktif, ketika pemakai baru berusaha logon.
c. Sebagai tanggapan suatu aplikasi, seperti permintaan pencetakan file,
sistem operasi dapat menciptakan proses yang akan mengelola pencetakan itu.
Sistem operasi menciptakan proses untuk memenuhi satu fungsi pada program
pemakai, tanpa mengharuskan pemakai menunggu.
d. Proses penciptaan proses lain (proses anak).
Untuk mencapai modularitas atau mengeksploitasi kongkurensi, program
pemakai memerintahkan pembuatan sejumlah proses.
Proses dapat menciptakan proses baru yaitu anak proses (child process),
sedangkan proses yang menciptakannya disebut proses induk (parent process).
Proses anakpun kembali dapat menciptakan proses-proses anak lainnya.
Proses-proses dapat membentuk pohon hirarki proses.

3.8 Tahap-tahap penciptaan proses


Penciptaan proses dapat disebabkan beragam sebab. Penciptaan proses meliputi
beberapa tahap :
1. Beri satu identifier unik ke proses baru. Isian baru ditambahkan ke tabel
proses utama yang berisi satu isian perproses.
2. Alokasikan ruang untuk proses.
3. PCB harus diinisialisasi.
4. Kaitan-kaitan antar tabel dan senarai yang cocok dibuat.
5. Bila diperlukan struktur data lain maka segera dibuat struktur data itu.

3.9. Penghancuran proses


Penghancuran proses melibatkan pembebasan proses dari sistem, yaitu :
a. Sumber daya-sumber daya yang dipakai dikembalikan.
b. Proses dihancurkan dari senarai atau tabel sistem.
c. PCB dihapus (ruang memori PCB dikembalikan ke pool memori bebas).
Penghancuran lebih rumit bila proses telah menciptakan proses-proses lain.
Terdapat dua pendekatan, yaitu :
a. Pada beberapa sistem, proses-proses turunan dihancurkan saat proses induk
dihancurkan secara otomatis.
b. Beberapa sistem lain menganggap proses anak independen terhadap proses
induk, sehingga proses anak tidak secara otomatis dihancurkan saat proses
induk dihancurkan.

Tabel 3.2 : Alasan-alasan penghancuran proses

3.10. Pengalihan proses


Kelihatannya pengalihan proses (process switching) adalah sepele. Pada suatu
saat, proses running diinterupsi dan sistem operasi memberi proses lain
state running dan menggilir kendali ke proses itu.
Dalam hal ini muncul beberapa masalah, yaitu :
1. Kejadian-kejadian apa yang memicu alih proses ?
2. Masalah lain adalah terdapatnya perbedaan antara alih proses (process
switching) dan alih konteks (context switching).
3. Apa yang harus dilakukan sistem operasi terhadap beragam struktur data
yang dibawah kendalinya dalam alih proses ?

3.11. Kejadian-kejadian penyebab pengalihan proses


Kejadian-kejadian yang menyebabkan terjadinya alih proses adalah :
1. Interupsi sistem
Disebabkan kejadian eksternal dan tak bergantung proses yang saat itu
sedang running. Contoh : selesainya operasi masukan/keluaran.
Pada kejadian interupsi, kendali lebih dulu ditransfer ke interrupt
handler yang melakukan penyimpanan data-data dan kemudian beralih ke
rutin sistem operasi yang berkaitan dengan tipe interupsi itu.
Tipe-tipeinterupsi antara lain :
a. Interupsi clock (clock interrupt)
Sistem operasi (penjadwal) menentukan apakah proses yang sedang running
telah mengeksekusi selama jatah waktunya. Jika telah mencapai jatahnya
maka proses dialihkan ke state ready dan proses lain dijadwalkan
running.
b. Interupsi masukan/keluaran
Kejadian dimana peralatan masukan/keluaran melakukan interupsi meminta
layanan sistem operasi. Sistem operasi segera menentukan aksi-aksi
masukan/keluaran yang harus dilakukan.
c. Page/memory fault
Pemroses menemui pengacuan alamat memori maya yang tidak terdapat di
memori utama (fisik). Sistem operasi segera memerintahkan untuk
mengambil page yang terdapat alamat yang dimaksud untuk dipindah ke
memori utama.
2. Trap
Adalah interupsi karena terjadinya kesalahan atau kondisi kekecualian
(exception conditions) yang dihasilkan proses yang running, seperti usaha
illegal dalam mengakses file.
Dengan trap, sistem operasi menentukan apakah kesalahan yang dibuat
merupakan kesalahan fatal ?
a. Jika fatal, proses yang saat itu running disingkirkan dan terjadi alih
proses.
b. Jika kesalahan tidak fatal maka bergantung sifat kesalahan dan
rancangan sistem operasi.
Kemungkinan yang dilakukan adalah menjalankan prosedur pemulihan atau
memperingkatkan ke pemakai. Saat terjadi trap, mungkin terjadi pengalihan
proses mungkin pula resume proses.
3. Supervisor call
Yaitu panggilan meminta atau mengaktifkan bagian sistem operasi.
Contoh :
Proses pemakai running meminta layanan masukan/keluaran seperti membuka
file. Panggilan ini menghasilkan transfer ke rutin bagian sistem operasi.
Biasanya, penggunaan system call membuat proses pemakai blocked karena
diaktifkan proses kernel (sistem operasi).

3.12. Pengalihan konteks


Pengalihan konteks dapat terjadi tanpa pengalihan state process yang sedang
running, sedang pengalihan proses pasti melibatkan juga pengalihan konteks.
Siklus penanganan interupsi adalah :
1. Pemroses menyimpan konteks program saat itu yang sedang dieksekusi ke
stack.
2. Pemroses menset register PC dengan alamat awal program untuk interuppet
handler.
Setelah kedua aktivitas itu, pemroses melanjutkan menjalankan instruksi-
instruksi berikutnya di interuppt handler yang melayani interrupt.
Pelaksanaan interupsi ini belum tentu mengakibatkan pengalihan ke proses
lain (yaitu pengalihan PCB proses dari senarai running ke senarai lain
(blocked, ready), dan sebaliknya. Kita menyebut pengalihan konteks adalah
untuk pengalihan sementara yang singkat, misalnya untuk mengeksekusi program
interrupt handler.
Setelah penanganan interupsi selesa maka konteks yang terdapat pada stack
dikembalikan sehingga kembali ke konteks proses semula tanpa terjadi
pengalihan ke proses lain. Pengalihan proses terjadi jika proses yang running
beralih menjadi state lain (ready, blocked), kemudian sistem operasi harus
membuat perubahan-perubahan berarti terhadap lingkungannya. Rincian-rincian
dalam pelaksanaan pengalihan proses dibahas setelah ini.

3.13. Pengalihan proses


Pengalihan proses terjadi jika proses yang running beralih menjadi state
lain (ready, blocked) kemudian sistem operasi membuat perubahan-perubahan
berarti terhadap lingkungan.
Langkah-langkah yang terlibat dalam pengalihan proses sebagai berikut :
1. Simpan konteks pemroses, termasuk register PC dan register-register lain.
2. Perbarui PCB proses yang running. Pelaksanaan termasuk mengubah state
proses menjadi salah satu state (ready, blocked, suspendedready).
Field-field yang relevan juga diperbarui misalnya alasan meninggalkan
state running dan informasi akunting.
3. Pindahkan PCB proses ke senarai yang cocok (ready, blocked).
4. Pilih satu proses lain untuk dieksekusi sesuai dengan teknik penjadwalan.
5. Perbarui PCB proses yang dipilih termasuk perubahan state menjadi running.
6. Perbarui struktur-struktur data manajemen memori. Pekerjaan ini sesuai
dengan pengelolaan translasi alamat.
7. Kembalikan konteks pemroses dengan konteks simpanan yang memberitahu
konteks proses terakhir saat dialihkan dari state running. Pengembalian
konteks ini dilakukan dengan memuatkan nilai-nilai register PC dan
register-register lain dengan nilai konteks yang tersimpan.
Pengalihan proses melibatkan pengalihan konteks dan perubahan state,
memerlukan usaha lebih besar daripada pengalihan konteks.

3.14. Tabel-tabel proses


Tiap proses mempunyai state yang perlu diperhatikan sistem operasi yang
dicatat dalam beragam tabel atau senarai yang saling berhubungan, yaitu :
a. Tabel informasi manajemen memori
Untuk menjaga keutuhan memori utama dan memori sekunder yang menyimpan
informasi tentang :
a.1 Alokasi memori utama yang dipakai proses.
a.2 Alokasi memori sekunder yang dipakai proses (menggunakan manajemen
memori dengan swapping).
a.3 Atribut segmen memori utama dan sekunder.
a.4 Informasi-informasi lain yang digunakan untuk pengelolaan memori.
b. Tabel informasi manajemen masukan/keluaran
Untuk mengelola perangkat masukan/keluaran, dimana perangkat tersebut
digunakan proses tertenty, sehingga perlu dijaga agar proses lain tidak
memakainya. Sistem operasi perlu mengetahui status operasi masukan/
keluaran dan lokasi memori utama yang digunakan untuk transfer data.
c. Tabel informasi sistem file
Berisi informasi mengenai ekstensi file, lokasi pada memori sekunder,
status saat itu dan menyimpan atribut-atribut file lainnya.
d. Tabel proses
Untuk mengelola informasi proses di sistem operasi, lokasinya di memori,
status dan atribut proses lainnya.
Proses ditempatkan di memori utama di lokasi tertentu, proses mempunyai satu
ruang alamat tersendiri. Ruang alamat yang digunakan proses disebut citra
proses (process image), karena selain seluruh kode biner program, proses
ditambahi atribut-atribut lain yang berkaitan penempatannya pada suatu lokasi
memori dan status eksekusi pada saat itu.

Tabel 3.3 : Elemen-elemen citra proses

Struktur umum tabel-tabel kendali ditunjukkan pada gambar berikut :

Gambar 3.4 : Struktur tabel-tabel kendali pada sistem operasi

3.15. PCB dan senarai proses


PCB berisi informasi mengenai proses yang diperlukan sistem operasi.
PCB dibaca dan /atau dimodifikasi rutin sistem operasi seperti penjadwalan,
alokasi sumber daya, pemrosesan interupsi, monitoring dan analisis kinerja.
Kumpulan PCB mendefinisikan state sistem operasi.
Untuk menyatakan senarai proses di sistem operasi dibuat senarai PCB.

Gambar 3.5: Senarai PCB

Diagram memperlihatkan hanya satu PCB berada di senarai running. PCB ini
menyatakan proses yang saat itu sedang dieksekusi pemroses sehingga hanya
satu proses yang running. Tentu saja ini tidak berlaku untuk multiprocessing
yang dapat mengeksekusi lebih dari satu proses sekaligus.
Prose-proses ready digambarkan dengan PCB proses-proses di senarai ready.
Proses-proses menunggu dijadwalkan untuk dieksekusi pemroses. Proses yang
dijadwalkan dieksekusi (yaitu mengalami transisi dari state ready menjadi
running) maka PCBnya dipindah dari senarai ready ke senarai running.
Proses running (PCB-nya berada di senarai running) dipindah sesuai state
yang dialami proses itu, sebagai berikut :
a. Bila proses berakhir (selesai) maka dijalankan operasi terminasi sehingga
PCB-nya tak ada lagi.
b. Bila proses diblocked karena menunggu alokasi sumber daya maka PCBnya
dipindah ke senarai blocked.
c. Bila proses dijadwalkan habis jatah waktu eksekusinya maka PCBnya
dipindahkan ke senarai ready.
Proses yang sedang blocked berpindah menjadi ready bila sumber daya yang
ditunggu telah teralokasi untuknya. Untuk itu PCBnya dipindahkan ke senarai
ready.

3.16. Pengaksesan informasi di PCB


Rutin-rutin sistem operasi perlu mengakses informasi di PCB. Tiap proses
dilengkapi ID unik yang digunakan sebagai indeks (penunjuk) ke tabel untuk
mengambil PCB.
Kesulitan bukan pada mekanisme pengaksesan, tetapi masalah proteksi terhadap
PCB. Dua masalah utama proteksi terhadap PCB, yaitu :
1. Bug (kesalahan pemrograman) pada rutin tunggal, misalnya interrupt handler
dapat merusak PCB sehingga dapat berakibat menghancurkan kemampuan sistem
mengelola proses-proses yang diasosiasikan dengan PCB.
2. Perubahan rancangan struktur dan semantiks PCB dapat berdampak ke sejumlah
modul sistem operasi yang memakai PCB.
Kedua masalah tersebut memberi gagasan agar semua rutin sistem operasi
melewati satu rutin khusus, yaitu rutin penanganan PCB dalam mengakses PCB.
Tugas rutin adalah memproteksi PCB dan menjadi perantara pembacaan dan
penulisan PCB.
a. Masalah pertama dapat dicegah karena rutin penanganan PCB akan selalu
menjaga agar PCB tidak rusak.
b. Masalah kedua jelas langusng teratasi karena antarmuka terhadap rutin-
rutin lain masih tetap dipertahankan walau rincian-rincian PCB diubah.
Rutin-rutin sistem operasi yang memakai antarmuka tidak perlu diubah.
Teknik ini menghendaki didefinisikan antarmuka rutin penanganan PCB dan
rutin-rutin lain dengan baik. Kelemahan teknik ini adalah adanya overhead
kinerja karena harus memanggil rutin penanganan PCB. Pengaksesan langsung
terhadap PCB tentu lebih cepat daripada harus memanggil rutin penanganan PCB.

3.17. Kedudukan sistem operasi


Sistem operasi pada dasarnya adalah sepert perangkat lunak lain, yaitu
program yang perlu dieksekusi pemroses.
Kedudukan sistem operasi dibanding proses-proses lain, adalah :
a. Sistem operasi sebagai kernel tersendiri yang berbeda dengan proses-proses
lain (kernel sebagai non-proses).
b. Fungsi-fungsi sistem operasi dieksekusi dalam proses pemakai.
c. Sistem operasi juga sebagai kumpulan proses (process based operating
systems).

3.18. Kernel sebagai non proses


Kernel sistem operasi adalah di luar proses, digambarkan pada gambar berikut :

Gambar 3.6 : Eksekusi kernel sebagai non-proses

Ketika proses running diinterupsi atau memanggila system call, maka konteks
pemroses proses ini disimpan dan kendali dilewatkan ke kernel. Sistem operasi
mempunyai daerah memori dan stack sendiri untuk pemanggilan prosedur.
Sistem operasi melakukan fungsi yang diinginkan dan mengembalikan konteks
proses yang diinterupsi. Eksekusi proses pemakai yang diinterupsi dilanjutkan.
Alternatif lain, sistem operasi menyimpan lingkungan proses, melakukan
penjadwalan dan menjadwalkan proses lain.
Konsep proses hanya diterapkan untuk program-program pemakai. Kode sistem
operasi dieksekusi sebagai satu entitas terpisah, beroperasi pada mode
kernel. Proses adalah non-kernel, sedang sistem operasi adala kernel yang
bukan proses.

3.19. Dieksekusi dalam proses pemakai


Alternatif lain dieksekusi sistem operasi adalah mengeksekusi sistem operasi
di konteks proses pemakai. Pendekatan ini didasarkan terutama pada pandangan
bahwa sistem operasi sebagai kumpulan rutin yang dipanggil pemakai untuk
melakukan beragam fungsi dan dieksekusi dalam lingkungan proses pemakai.
Pendekatan in idigambarkan pada gambar berikut :

Gambar 3.7 : Eksekusi dalam proses pemakai

Pada seluruh waktu, sistem operasi mengelola N citra proses. Tiap citra
tidak hanya mempunyai daerah untuk proses tapi juga daerah program, data
dan stack untuk kernel. Terdapat juga ruang alamat yang dipakai bersama
semua proses. Ketika diinterupsi, trap atau supervisor call terjadi,pemroses
ditempatkan ke mode kernel dan kendali dilewatkan ke sistem operasi. Konteks
pemroses disimpan dan alih konteks ke rutin sistem operasi. Eksekusi
dilanjutkan dalam proses pemakai saat itu, tidak dilakukan alih proses,
hanya alih konteks di proses yang sama. Jika sistem operasi telah
menyelesaikan tugas, menentukan apakah proses berlanjut, maka alih konteks
meresume program yang diinterupsi dalam proses itu juga. Keunggulan
pendekatan ini adalah program pemakai yang diinterupsi untuk memperoleh
rutin sistem operasi dan diresume tidak mengalami overhead peralihan dua
proses. Jika sistem operasi menentukan bahwa alih proses terjadi bukan
kembali ke proses semula yang dieksekusi, maka kendali dilewatkan ke rutin
alih proses. Rutin ini boleh dijalankan pada proses boleh juga tidak,
bergantung rancangan sistem. Pada keadaan ini, proses saat itu menjadi
state non-running dan proses lain menjadi running.

3.20. Sistem operasi sebagai kumpulan proses


Pendekatan ini mengimplementasikan sistem operasi sebagai kumpulan proses.
Pendekatan ini digambarkan pada gambar berikut :

Gambar 3.8: Eksekusi sistem operasi sebagai proses

Variannya adalah perangkat lunak bagian kernel dieksekusi dalam mode kernel.
Fungsi-fungsi kernel utama diorganisasi sebagai proses-proses terpisah. Terdapat kode kecil pengalihan proses yang dieksekusi di luar proses.
Pendekatan ini mempunyai beberapa keunggulan, yaitu :
a. Perancangan modular dapat diterapkan ke perancangan sistem operasi. Sistem operasi menjadi modul-modul dengan interface yang bersih dan minimal antar modul-modul itu.
b. Fungsi-fungsi sistem operasi tak kritis secara bagus dapat diimplementasikan sebagai proses-proses terpisah.
c. Mudah diterapkan pada lingkungan multiprocessor atau multicomputer dimana beberapa layanan sistem operasi ditaruh di pemroses-pemroses tertentu. Teknik ini akan meningkatkan kinerja.

3.21. Mikrokernel


Saat ini, mikrokernel mendapat banyak perhatian. Mikrokernel adalah inti
sistem operasi yang menyebabkan landasan perluasan sistem operasi.
Pendekatan mikrokernel dipopularkan sistem operasi MACH. Secara teoritis,
pendekatan mikrokernel menyediakan derajat fleksibilitas dan modularitas
tinggi. Sistem operasi yang memakai pendekatan mikrokernel adalah MS Windows
NT. Landasan pendekatan mikrokernel adalah hanya fungsi-fungsi sistem
operasi inti yang secara mutlak esensi yang harus berada di kernel.
Layanan-layanan dan aplikasi-aplikasi yang kurang esensi dibangin diatas
mikrokernel itu. Meskipun pembagian antara yang perlu dan tidak perlu ada
di mikrokernel beragam. Terdapat ciri yang sama yaitu banyak lauanan yang
secara tradisional merupakan bagian sistem operasi menjadi subsistem
eksternal. Subsistem in berinteraksi dengan kernel dan subsistem-subsistem
lain. Layanan-layanan itu antara lain sistem file, sistem windowing dan
layanan-layanan keamanan. Komponen-komponen sistem operasi di luar
mikrokernel saling berinteraksi melalui pesan yang dilewatkan melalui
mikrokernel. Fungsi mikrokernel adalh sebagai mediator pertukaran pesan.
Mikrokernel memvalidasi pesan, melewatkan pesan antara komponen-komponen
dan memberi hak pengaksesan perangkat keras. Struktur ini ideal untuk
lingkungan pemrosesan terdistribusi karena mikrokernel dapat melewatkan
pesan baik secara lokal atau jarak jauh tanpa perubahan komponen-komponen
sistem operasi yang lain.

 
Powered by Blogger