view

Selasa, 03 Januari 2012

Analisis Algoritma Penggantian Pada Sistem Operasi

penggantian halaman dilakukan terjadi apabila page fault, page fault bukan suatu jenis error yang patal, page fault terjadi apabila ada halaman yang ingin di akses tetapi halam tersebut tidak ada dalam memory utama. page fault pasti terjadi minimal satu kali saat halaman tersebut ingin di buka.
Prinsip penggantian halaman sebagai berikut:
a. proses minta halaman tertentu
b.jika halaman berada di dalam memory tidak dilakukan penggantian halam
c.jika halaman tidak berada dalam memory maka:
  • jika ada frame kosong maka halaman itu di-load kedalam frame yang kosong tersebut.
  • jika tidak ada frame yang kosong, maka pilih halaman yang akan di swap dengan menggunakan algoritma ganti halaman.
d.update halaman table dan memory table
e.restart proses.

BERIKUT ALGORITMA PENGGANTIAN HALAMAN
 
Algoritma penggantian page acak
Mekanisme algoritma
Setiap terjadi page fault, page yang diganti dipilih secara acak.
Teknik ini tidak memakai informasi apapun dalam menentukan page yang diganti. Semua page di memori utama mempunyai bobot sama untuk dipilih. Teknik ini dapat memilih sembarang page, termasuk page yang sedang diacu (page yang seharusnya tidak diganti, pilihan terburuk).
Teknik ini sangat buruk, percobaan menunjukkan algoritma acak menimbulkan rate terjadinya page fault yang sangat tinggi.

Algoritma FIFO (First In First Out)
Algoritma ini adalah algoritma yang paling sederhana. Prinsip dari algoritma ini adalah seperti prinsip antrian (antrian tak berprioritas), halaman yang masuk lebih dulu maka akan keluar lebih dulu juga. Algoritma ini menggunakan struktur data stack. Apabila tidak ada frame kosong saat terjadi page fault, maka korban yang dipilih adalah frame yang berada di stack paling bawah, yaitu halaman yang berada paling lama berada di memori. Dengan hanya informasi mengenai lama berada di memori, maka algoritma ini dapat memindahkan page yang sering digunakan. Boleh jadi page itu berada terus di memori karena selalu digunakan. Page itu karena mengikuti pola antrian berdasar lamanya berada di memori menjadi elemen terdepan, diganti, dan segera harus masuk kembali ke memori sehingga terjadi page fault kembali.

Gambar  Algoritma FIFO



Pada awalnya, algoritma ini dianggap cukup mengatasi masalah tentang pergantian halaman, sampai pada tahun 70-an, Belady menemukan keanehan pada algoritma ini yang dikenal kemudian dengan anomali Belady. Anomali Belady adalah keadaan di mana page fault rate meningkat seiring dengan pertambahan jumlah frame , seperti yang bisa dilihat pada contoh di bawah ini.

Gambar  Anomali Algoritma FIFO


Algoritma Optimal
Algoritma ini adalah algoritma yang paling optimal sesuai namanya. Prinsip dari algoritma ini adalah mengganti halaman yang tidak akan terpakai lagi dalam waktu lama, sehingga efisiensi pergantian halaman meningkat (page fault yang terjadi berkurang) dan terbebas dari anomali Belady. Strategi ini akan menghasilkan jumlah page-fault paling sedikit. Algoritma ini memiliki page fault rate paling rendah di antara semua algoritma di semua kasus. Akan tetapi, optimal belum berarti sempurna karena algoritma ini ternyata sangat sulit untuk diterapkan. Sistem tidak dapat mengetahui halaman-halaman mana saja yang akan digunakan berikutnya. Pendekatan ini dapat dilakukan dengan simulasi. Tapi simulasi hanya spesifik untuk suatu program. Bila yang terbaik tak dimungkinkan, maka yang perlu dilakukan adalah berusaha mendekatinya. Algoritma penggantian page diusahakan kinerjanya mendekati optimal. Tiap algoritma penggantian page mengumpulkan dan memakai informasi untuk menentukan page yang diganti sehingga mendekati optimal.

Gambar  Algoritma Optimal





Algoritma LRU (Least Recently Used)
Dikarenakan algoritma optimal sangat sulit dalam pengimplementasiannya, maka dibuatlah algoritma lain yang performance-nya mendekati algoritma optimal dengan sedikit cost yang lebih besar. Algoritma ini mengganti halaman yang paling lama tidak dibutuhkan. Asumsinya, halaman yang sudah lama tidak digunakan sudah tidak dibutuhkan lagi dan kemungkinan besar, halaman yang baru di-load akan digunakan kembali.
Sama seperti algoritma optimal, algoritma LRU tidak mengalami anomali Belady. Algoritma ini memakai linked list untuk mendata halaman mana yang paling lama tidak terpakai. Linked list inilah yang membuat cost membesar, karena harus meng-update linked list tiap saat ada halaman yang di akses. Halaman yang berada di linked list paling depan adalah halaman yang baru saja digunakan. Semakin lama tidak dipakai, halaman akan berada semakin belakang dan di posisi terakhir adalah halaman yang paling lama tidak digunakan dan siap untuk di-swap.
Gambar  Algoritma LRU

 
http://yosuaalvin.students-blog.undip.ac.id/sistem-operasi/
Algoritma Penggantian Page NRU (Not-Recenly Used)
Mekanisme algoritmanya
Pada algoritma ini, page diberi dua bit mencatat status page, bit R dan M, yaitu:
Bit R   : referenced (menyatakan page sedang diacu)
Bit R = 1 berarti sedang diacu
Bit R = 0 berarti tidak sedang diacu
Bit M  : modified (menyatakan page telah dimodifikasi)
Bit M = 1 berarti dimodifikasi
Bit M = 0 berarti tidak dimodifikasi
Dengan 2 bit, maka page-page dikelompokkan menjadi 4 kelas page, yaitu
Kelas 0 : Tidak sedang diacu, belum dimodifikasi (R=0, M=0)
Kelas 1 : Tidak sedang diacu, telah dimodifikasi (R=0, M=1)
Kelas 2 : Sedang diacu, belum dimodifikasi (R=1, M=0)
Kelas 3 : Sedang diacu, telah dimodifikasi (R=1, M=1)
Memilih mengganti page kelas bernomor terendah (bila terdapat page-page di kelas itu) secara acak.
Bila kelas tersebut kosong maka dipilih page di kelas lebih tinggi, dan seterusnya.
Algoritma ini mengasumsikan kelas-kelas bernomor lebih rendah akan baru akan digunakan kembali dalam waktu relatif lama.
Algoritma ini mudah dipahami dan diimplementasikan. Implementasi algoritma ini sangat efisien karena tak banyak langkah dalam pemilihan page. Algoritma ini memang tidak optimal, tapi dalam kondisi-kondisi normal telah memadai.

Algoritma Clock merupakan modifikasi dari algoritma FIFO

Algoritma ini merupakan modifikasi dari algoritma FIFO, kelemahan FIFO dengan memindahkan page yang sering digunakan yang lama berada di memori. Kemungkinan ini dapat dihindari dengan hanya memindahkan page tidak diacu. Page ditambah bit R mencatat apakah page diacu atau tidak. Bit R bernilai 1 bila diacu dan bernilai 0 bila tidak diacu

Pada algoritma ini, semua page merupakan senarai melingkar membentuk pola jam dan terdapat pointer yang menunjuk ke arah page terlama, ketika terjadi page fault, page yang ditunjuk diperiksa.
 http://research.amikom.ac.id/index.php/karyailmiahdosen/article/view/933


Selasa, 25 Oktober 2011

H.A.K.I (HAK ATAS KEKAYAAN INTELEKTUAL)

     Hak Cipta adalah suatu hal khusus untuk mengumumkan atau memperbanyak ciptaannya memberi izin tanpa memberi pembatasan" menurut perundangan yang berlaku.





Contoh H.A.K.I :
 
Contoh pertama di ambil dari sistem operasi yaitu:
1.Windows  







2. Mac Os






3. Linux







Contoh Dari aplikasi yaitu:

 1.Photoshop.




2.Microsoft Office







Contoh Dari Bahasa Pemrograman yaitu:

1.Java








2.C++






Perbedaan Lisensi dan Paten

     Lisensi adalah ijin yang diberikan oleh pemegang paten kepada pihak lain berdasar perjanjian pemberian hak untuk menikmati manfaat ekonomi dari suatu paten yang diberi perlindungan dalam jangka waktu dan syarat tertentu. Sedangkan untuk paten menurut UU No. 14 Tahun 2001 tentang paten.

Paten adalah hak ekslusif yang diberikan oleh Negara melalui Direktorat Jenderal Hak Kekayaan Intelektual (“Ditjen HKI” atau “Ditjen”) kepada inventor atas hasil invensinya di bidang teknologi, yang untuk untuk selama waktu tertentu melaksanakan sendiri invensinya tersebut atau memberikan persetujuannya kepada pihak lain untuk melaksanakannya.



Minggu, 23 Oktober 2011

Command Line Interface

       Gini gan, ane dpet tugas dari dosen ane tentang pengenalan Command Line Interface jadi maksudnya perintah-perintah yang ada di CMD.
langkah pertama klik run di windows lalu ketikan cmd ada lagi cara yang kedua gan teken aje tuch tombol windows ama tombol R yg di keyboard dah gtu muncul deh tampilan run ketikin jg cmd langsung dech muncul tampilan kya dibawah ini.
nah dah kaya gitu ane kasih tutorialnya nich yg ngjalanin perintah-perintahnya:
1. D      = kalo mu manggil partisi hardisk D
2.DIR    = untuk menampilkan yang sudah di panggil seperti contohnya D: nanti bakalan muncul semua dech yang ada di dalam folder D.
3.CD       = untuk memanggil folder
4.CLS     = menghapus layar
5.MD      = menambah directori/membuat folder baru
6.CD..    = untuk keluar dari directori
7.DIR     = untuk mengecek file file yang  ada di directori
8.RD      = untuk meremove directori/ menghapus folder
9.DEL    = untuk menghapus file
10.>>        = untuk memindahkan file yang ada di directori ke directori yang lain
11.Type    = untuk mengecek isi file
12.Copy   = untuk meng copy file
13.Copy con  = untuk mengisi tulisan file txt 
Nah itu  aje yg ane tau itu juga dikasih ma dosen ane sich.
Review dikit aja gan thanks yach.
assalamualikum....





Selasa, 18 Oktober 2011

API (Application Program Interface)

     API biasanya kita temukan dalam beberapa aplikasi dan program sederhana yang membutuhkan kemampuan programming atau coding. Oleh karena itu, Kebanyakan programmer membuat aplikasi dengan menggunakan Application Programming Interface(API). Dalam API itu terdapat fungsi-fungsi/perintah-perintah untuk menggantikan bahasa yang digunakan dalam system calls dengan bahasa yang lebih terstruktur dan mudah dimengerti oleh programmer. Fungsi yang dibuat dengan menggunakan API tersebut kemudian akan memanggil system calls sesuai dengan sistem operasinya. Tidak tertutup kemungkinan nama dari system calls sama dengan nama di API. Keuntungan memprogram dengan menggunakan API adalah:
Portabilitas. Programmer yang menggunakan API dapat menjalankan programnya dalam sistem operasi mana saja asalkan sudah ter- install API tersebut. Sedangkan system call berbeda antar sistem operasi, dengan catatan dalam implementasinya mungkin saja berbeda.
Lebih Mudah Dimengerti. API menggunakan bahasa yang lebih terstruktur dan mudah dimengerti daripada bahasa system call. Hal ini sangat penting dalam hal editing dan pengembangan.

        System call interface ini berfungsi sebagai penghubung antara API dan system call yang dimengerti oleh sistem operasi. System call interface ini akan menerjemahkan perintah dalam API dan kemudian akan memanggil system calls yangdiperlukan.
Untuk membuka suatu file tersebut user menggunakan program yang telah dibuat dengan menggunakan bantuan API, maka perintah dari user tersebut diterjemahkan dulu oleh program menjadi perintah open(). Perintah open() ini merupakan perintah dari API dan bukan perintah yang langsung dimengerti oleh kernel sistem operasi. Oleh karena itu, agar keinginan user dapat dimengerti oleh sistem operasi, maka perintah open() tadi diterjemahkan ke dalam bentuk system call oleh system call interface. Implementasi perintah open() tadi bisa bermacam-macam tergantung dari sistem operasi yang kita gunakan.

Coba Explorasi tentang shell dan system call

        Shell merupakan program user atau lingkungan yang disediakan untuk interaksi user. Shell merupakan penerjemah bahasa perintah yang menerima input standar (keyboard) atau dari suatu file. Shell bukanlah bagian dari kernel, tetapi ia menggunakan kernel untuk menjalankan program, membuat file, dan sebagainya, contoh yang ada di linux
• Bourne shell(sh),
• C shell(csh),
• Korn shell(ksh),
• Bourne again shell(bash),

       System Call adalah tata cara pemanggilan di program aplikasi untuk memperoleh layanan yang disediakan oleh sistem operasi. System call berupa rutin sistem operasi untuk keperluan tertentu yang spesifik. Bentuk system call beragam, terbanyak berupa rutin prosedur atau fungsi.

Analisis Struktur Sistem Linux dan Windows

     Sistem operasi Linux merupakan salah satu varian dari sistem operasi Unix, Linux merupakan salah satu sistem operasi bersifat multi user dan multitasking, limux merupakan sistem operasi yang free maksudnya bebas biaya sob. linux punya kemampuan yg kerenz sob, nich ane sebutin 

1.Kernel linux 
           pertama kali di bangun untuk processor intel 80386 mode terproteksi yg dapat digunakan 
multitasking, di bangun kalo nggk salah ama Linus Saheril Benedict Trovald hehehe Narsis dikit, kalo gk salah dibangun'a sekitar 1991 wah ane masih bayi tuch hehehe, kernel dalam sebuah sistem operasi merupakan bagian yg penting sob, kernel tugasnya berinteraksi dengan hardware komputer.

2.Perpustakaan sistem
     perpustakaan sistem menentukan kumpulan fungsi standar dimana aplikasi aplikasi berinteraksi dengan kernel dan dapat diterapkan hampir semua fungsi sistem operasi yg tidak memerlukan hak penuh atas kernel.

3. Utilitas sistem, 
            Utilitas sistem yaitu program yg melakukan pekerjaan manajemen secara individual,Utilitas system termasuk semua program yang diperlukan untuk menginisialisasi system, seperti program untuk konfigurasi alat jaringan (network device) untuk load modul kernel. Program server yang berjalan secara terus menerus juga termasuk sebagai utilitas system, program semacam ini mengatur antrian pada printer, permintaan login dan koneksi jaringan yang masuk.


Nich Contoh Gambarnya:


sumber gambar: tanyarezaervani.wordpress.com

yang dibawah ini contoh gambar directory linuknya
sumber gambarnya dari blog:computersilmu.wordpress.com
keterangannya:
/bin – Memuatkan program arahan yang merupakan sebahagian dari sistem operasi Linux. Banyak perintah Linux seperti cat, cp, ls, more, dan tar terletak pada /bin.
/boot – Memuatkan Linux Kernel dan file lain yang diperlukan LILO dan GRUB boot manager.
/dev – Memuatkan semua file penting. Linux melakukan semua operasi utama komputer seperti sebuah file yang special. Semua file seperti ini terletak di /dev.

/home – Direktori Home menyimpan semua direktori home user.
/lib – Memuatkan file library, termasuk modul driver yang dapat diisi pada sistem boot.

/media – Direktori untuk mounting removable media seperi drive CD-ROM, floopy disk dan zip drive.
/mnt – Direktori untuk mounting file sistem sementara.

/opt – Data – data instal / copy untuk aplikasi opsional .
/sbin – Memuatkan file administration yang dapat diakses seperti mount, shutdown, umount.
/srv – Memuatkan data untuk layanan (HTTP, FTP, etc.) yang ditawarkan oleh sistem.

/tmp – Direktori yang digunakan untuk menyimpan data sementara. Isi dari direktori ini dibersihkan setiap kali sistem boot.
/usr – Memuatkan sub direktori untuk pelbagai program seperti sistem X Windows.
/var – Memuatkan pelbagai sistem file seperti log, direktori mail, print dan lain – lain. Yang sering kali berubah kandungannya.
/ – Root direktori yang membentuk basic sistem file. Semua file dan direktori secara logic berada di dalam root direktori ini walaupun dari lokasi yang berbeda.
/proc – Direktori istimewa untuk sistem file virtual. Ia mencakupi informasi mengenai berbagai aspek sistem Linux.


# sekarang yang windowsnya:
1. Program Files : folder ini berfungsi untuk menyimpan program-program dan aplikasi-aplikasi yang terinstall didalam windows.

2. Windows : folder ini memiliki peranan penting didalam system windows. Segala proses dan konten-konten utama windows tersimpan disini. Kesalahan dalam mengatur folder ini dapat merusak system windows. isinya berupa system32, assembly dan web.

Nah yang di bawah ini contoh gambar struktur sistem windows sob :

Analisis Struktur Sistem Linux dan Windows

Sistem operasi Linux merupakan salah satu varian dari sistem operasi Unix, Linux merupakan salah satu sistem operasi bersifat multi user dan multitasking, limux merupakan sistem operasi yang free maksudnya bebas biaya sob. linux punya kemampuan yg kerenz sob, nich ane sebutin 

1.Kernel linux pertama kali di bangun untuk processor intel 80386 mode terproteksi yg dapat digunakan 
multitasking, di bangun kalo nggk salah ama Linus Saheril Benedict Trovald hehehe Narsis dikit, kalo gk salah dibangun'a sekitar 1991 wah ane masih bayi tuch hehehe, kernel dalam sebuah sistem operasi merupakan bagian yg penting sob, kernel tugasnya berinteraksi dengan hardware komputer.

2.Perpustakaan sistem, menentukan kumpulan fungsi standar dimana aplikasi aplikasi berinteraksi dengan kernel dan dapat diterapkan hampir semua fungsi sistem operasi yg tidak memerlukan hak penuh atas kernel.

3. Utilitas sistem, yaitu program yg melakukan pekerjaan manajemen secara individual,Utilitas system termasuk semua program yang diperlukan untuk menginisialisasi system, seperti program untuk konfigurasi alat jaringan (network device) untuk load modul kernel. Program server yang berjalan secara terus menerus juga termasuk sebagai utilitas system, program semacam ini mengatur antrian pada printer, permintaan login dan koneksi jaringan yang masuk.


Nich Contoh Gambarnya:


sumber gambar: tanyarezaervani.wordpress.com


yang dibawah ini contoh gambar directory linuknya
sumber gambarnya dari blog:computersilmu.wordpress.com