RSS
 

Aplikasi Foto dan Video Paling Diminati

24 Sep

Kategori aplikasi mobile terdiri dari berbagai macam, ada kategori aplikasi bisnis, kesehatan, fotografi, video, utilitas, produktifitas, musik, permainan dan sebagainya. Kategori-kategori tersebut memuat ribuan aplikasi di masing-masing toko aplikasi. Dalam membangun aplikasi para developer harus memikirkan aplikasi dengan kategori apa yang akan dibuat. Tentunya hal tersebut akan sangat penting dan sulit dilakukan. Karena mereka harus menganalisa kebutuhan pasar, analisa kempetitor dan lain sebagainya. Data terbaru yang dihimpun dari Flurry yang melakukan survey tentang kategori aplikasi yang paling banyak diunduh semester kedua tahun 2012 menunjukan bahwa kategori foto dan video menduduki peringkat teratas.

bb

Grafik tersebut menunjukan bahwa selama 6 bulan kategori foto dan video mengalami pertumbuhan pengguna aktif sebesar 89 persen.

Hasil tersebut sangat relevan melihat aplikasi fotografi mobile yang ada sekarang dapat menggantikan fitur-fitur yang ada pada kamera biasa. Selain itu aplikasi-aplikasi tersebut dapat meningkatkan kinerja dan kualitas yang dihasilkan. Apalagi aplikasi-aplikasi tersebut dapat diunduh secara gratis melalui toko aplikasi yang telah disediakan. Sebut saja Instagram yang kini sudah menjadi gaya hidup masyarakat indonesia. Bahkan kebanyakan dari pengguna instagram kita akan melakukan sesuatu hal, misal makan atau minum, mereka lebih memilih memfoto makanannya terlebih dahulu ketimbang langsung menikmati atau berdoa.

Terlebih sekarang banyak aplikasi foto yang dapat mempercantik foto kita, seperti Camera360. Apliasi ini dapat memanipulasi hasil foto baik secara langsung saat pengambilan atau pun mengedit foto yang sudah diambil sebelumnya. Aplikasi seperti ini tentunya sangat menarik untuk pengguna yang merasa kurang puas dengan aplikasi foto bawaan device aslinya. Mereka tidak perlu bersusah payah lagi untuk mengeditna melalui PC.

Selain itu yang sedang menjadi trend di Indonesia yaitu Path. Aplikasi dengan jumlah maksimum 150 teman ini berkembang dengan pesat. Aplikasi pengungguah momen ini selain untuk fotografi juga dapat digunakan untuk berbagi lokasi, dan berbagai momen lainnya. Bahkan kebanyakan orang suka berbagi apa yang sedang mereka dengarkan, apa yang sedang mereka tonton dan baca. Begitu atraktifnya aplikasi ini karena ada fitur kapan kita tidur dan kapan kita bangun.

Jadi para developer aplikasi mobile, data tren aplikasi mobile berdasarkan tingkat pertumbuhan aktivitas pengguna penting untuk dijadikan referensi dalam menentukan ide aplikasi mobile apa yang akan dibuat. Dan, berikut adalah data tambahan lainnya yang menunjukan rata-rata lamanya aktifitas pengguna aplikasi mobile perbulan dalam satuan menit.

Screen-Shot-2012-05-22-at-6.15.48-AM

Catatan : Data Flurry ini di hasilkan dari 8 juta pengguna aktif aplikasi mobile di seluruh dunia dan dari 180.000 aplikasi mobile (iOS, Android, HTML5, Windows Phone dan BlackBerry).

 

Referensi :

http://www.flurry.com/flurry-analytics.html

 
 

Rubah iPhone Kamu Menjadi Pendetektsi Logam Dengan Metal DetectorTM

24 Sep

Pada era modern seperti sekarang, banyak piranti elektronik dan barang-barang di sekitar kita yang terbuat dari logam. Logam yang digunakan pun beragam, mulai dari besi, baja, aluminium, perak dan sebagainya. Sering kali komponen barang-barang kita yang terbuat dari logam tersebut hilang dan susah dicari.

Buat kalian pengguna produk Apple yaitu Iphone, ada aplikasi menarik yang sangat bermanfaat untuk kalian yaitu Metal DetectorTM. Aplikasi ini dapat diunduh secara gratis di Apple Store. Aplikasi ini dapat digunakan untuk mencari koin yang hilang, komponen barang yang terbuat dari logam dan bahkan mendeteksi pisau dan senjata.

Cara kerja Metal DetectorTM

Aplikasi ini memanfaatkan sensor magnetik pada kompas di iPhone. Kompas pada iPhone bekerja dan dipengaruhi oleh medan elektromagnetik yang ada disekitar kita. Ketika device kita didekatkan pada logam, logam tersebut akan mengganggu dan membuat perubahan dalam medan elektromagnetik. Aplikasi Metal DetectorTM mengolah informasi tersebut dengan mengukur besarnya fluktuasi medan elektromagnetik. Besarnya fluktuasi medan elektromagnetik merupakan perubahan yang ditampilkan dan diberitahu kepada pengguna. Apabila benda tersebut bukan logam maka tidak akan terjadi fluktuasi medan elektromagnetik.

Aplikasi ini akan mengeluarkan suara ‘beep’ ketika mendeteksi logam disekitarnya. Semakin dekat logam tersebut maka suaranya akan semakin kencang.

 

Sensitifitas Metal DetectorTM dapat diatur mulai dari 10 hingga 90. Sensitifitas ini mempengaruhi jarak device kita ke logam disekitarnya. Semakin besar sensitifitasnya maka jarak logam yang dapat dideteksi akan semakin jauh.

aa

Adapun jenis logam yang dapat dideteksi adalah :

Ferrous :

Jenis logam magnetic, seperti besi dan baja.
Merupakan jenis logam yang paling mudah dideteksi oleh metal detector.

Non-ferrous :

Jenis logam non magnetic, seperti aluminium, tembaga, emas, perak, timah, kuningan, nikel, dll. Relatif mudah dideteksi oleh metal detector, tetapi tingkat sensitifitas-nya masih sedikit di bawah logam jenis ferrous.

Non-magnetic Stainless Steel :

Termasuk dalam jenis ini: stainless steel type 304. Paling sulit terdeteksi oleh metal detector, sehingga tingkat sensitifitasnya paling rendah.

Metal DetectorTM ini dapat diinstall pada perangkat Apple iPhone, iPad dan iPod.

iPhone : iPhone 3GS dengan iOS versi 4.3 keatas.

iPad : iPad 1 dengan iOS versi 4.3 keatas.

iPod touch : iPod touch generasi 3 dengan iOS versi 4.3 keatas.

Referensi :

http://id.forios.net/tag/productivity/metal-detector-lite-download-146912.html

https://itunes.apple.com/us/app/metal-detector/id409682366?mt=8

 

 
 

Protected: SISTEM DIGITAL KELAS E

01 Oct

This post is password protected. To view it please enter your password below:

 
Enter your password to view comments.

Posted in Uncategorized

 

Membangun Server yang Tahan Terhadap Brute Force (Network Security)

20 Sep

Internet merupakan suatu alat komunikasi yang sangat membantu, mobile, dan praktis. Tetapi disisi lain, Internet bisa menjadi alat berbahaya. Tidak hanya di dunia nyata, kejahatan juga dapat dilakukan di dunia maya. Oleh karena itu di dunia maya juga diperlukan keamanan. Gangguan keamanan Internet memiliki bermacam bentuk, dari probing / scanning, cracking, brute force, worm, trojan, spam, dan sebagainya. Administrator biasanya akan melakukan tindakan pengamanan terhadap jaringannya, yaitu dengan menggunakan Firewall agar jaringannya tetap aman dari serangan hacker. Tetapi hal ini cukup sulit untuk menemukan hacker tepat pada posisinya melakukan serangan. Sehingga administrator kesulitan dalam melakukan tindakan terhadap serangan yang dilakukan.

Fail2ban merupakan salah satu aplikasi yang akan membantu administrator dalam mengamankan jaringan. Fail2ban beroperasi dengan memblokir IP yang mencoba melanggar keamanan sistem. Alamat IP yang diblokir dapat dilihat pada file log (misalnya: /var/log/pwdfail, /var/log/auth.log, dan lain-lain) dan melarang setiap IP yang berupaya login terlalu banyak atau melakukan tindakan yang tidak diinginkan lainnya dalam jangka waktu yang ditetapkan oleh administrator.

Fail2ban biasanya dirancang untuk membuka atau membolehkan host yang diblokir dalam jangka waktu tertentu, sehingga tidak mengunci setiap koneksi yang mungkin telah terkonfigurasi sementara. Namun, mengunci IP dalam waktu beberapa menit biasanya cukup untuk menghentikan koneksi jaringan yang sedang melakukan flood atau membanjiri sistem jaringan, serta mengurangi kemungkinan suksesnya untuk melakukan dictionary attack.

Dalam bahasa sederhana, fail2ban yaitu aplikasi yang berfungsi untuk melakukan pencegahan terhadap percobaan serangan brute force login ke suatu server. Aplikasi ini akan diterapkan untuk melakukan pengamanan terhadap SSH, FTP, SMTP, dan Apache.

Pada penelitian ini akan dibangun server yang tahan terhadap serangan brute force dengan menggunakan fail2ban pada Debian 6.0 Squeeze.

1.1      Perancangan Topologi

Gambar 1 Topology Jaringan

 

1.2      Perancangan Hardware

Perancangan jaringan pada ini penelitian akan menggunakan beberapa perangkat keras/hardware dengan spesifikasi sebagai berikut:

  1. Lima unit server yang akan digunakan sebagai Server untuk membangun jaringan server dengan spesifikasi:
    1. Intel Core 2 Duo.
    2. Memory 1 GB.
    3. Hardisk 320 GB.
  2. Kabel UTP dan RJ45.
  3. Satu unit komputer sebagai PC router.
  4. Dua unit Switch DLINK.
  5. Empat buah komputer sebagai attackeryang akan digunakan untuk pengujian server. Dengan spesifikasi sebagai berikut:
    1. Komputer 1 dan 2 : Intel Core i5, Memory 2 GB, Harddisk 500GB.
    2. Komputer 3 dan 4 : Intel Core 2 Duo, Memory 1 GB, Harddisk 320 GB.
  6. Satu buah router Cisco 2800 Series.

 

1.3      Perancangan Software

 1.         Perancangan DNS Server

Pada penelitian  ini digunakan DNS Server. DNS Server di bangun pada sistem operasi Debian 6.0 Squeeze. Software yang digunakan adalah bind9. Bind9 yang digunakan adalah versi 1:9.7.3. Berikut cara instalasi DNS Server pada Debian 6.0 Squeeze.

apt-get install bind9

2.         Perancangan FTP Server

Pada penelitian ini akan dilakukan serangan brute force pada FTP Server. Aplikasi yang digunakan untuk membangun FTP Server adalah vsftpd. Vsftpd yang digunakan adalah versi 2.3.2. Berikut cara instalasi vsftpd.

apt-get install vsftpd

3.         Perancagan SSH Server

Pada penelitian ini akan dilakukan serangan brute force pada SSH Server. Aplikasi yang digunakan untuk membangun SSH Server adalah OpenSSH. OpenSSH yang digunakan adalah versi 1:5.5p1-6. Berikut cara instalasi OpenSSH.

apt-get install ssh2

4.         Perancangan WEB Server

Pada penelitian ini akan dilakukan serangan brute force pada web Server. Aplikasi yang digunakan untuk membangun web Server adalah Apache2. Apache2 yang digunakan adalah versi 2.2.16-6. Berikut cara instalasi Apache2.

apt-get install apache2

5.         Perancangan NFS Server dan NFS Client

NFS server akan di install pada web server, FTP server, dan SSH server. Untuk instalasi NFS server menggunakan perintah.

apt-get install nfs-kernel-server nfs-common portmap

NFS Client di install pada PC router. Untuk melakukan instalasi NFS client menggunakan perintah.

apt-get install nfs-common portmap

6.         Perancangan Fail2ban

Pada Debian 6.0 Squeeze, fail2ban yang digunakan adalah fail2ban versi 0.8.4. Untuk instalasi fail2ban pada Debian 6.0 Squeeze dapat menggunakan perintah.

apt-get install fail2ban

7.         Perancagan Denyhosts

Pada penelitian ini, dibangun sebuah SSH Server yang dilindungi oleh Denyhosts. Denyhosts yang digunakan adalah versi 2.6-7. Untuk instalasi Denyhosts pada Debian 6.0 Squeeze dapat menggunakan perintah.

apt-get install denyhosts

2. HASIL DAN ANALISA

2.1      Fail2ban

Pada penelitian ini, fail2ban melindungi FTP Server, SSH Server, dan web Server.

2.1.1  Fail2ban melindungi FTP Server

Pada Proyek Akhir ini, dilakukan pengujian terhadap FTP Server yang dilindungi oleh Fail2ban dengan empat attacker. Empat attacker tersebut menggunakan aplikasi Brutus versi 2.0 pada sistem operasi Microsoft Windows sebanyak dua buah dan menggunakan aplikasi hydra versi 7.2 pada sistem operasi Linux dua buah. Setelah dijalankan aplikasi ke-empat attacker secara bersamaan, akan terjadi penambahan data pada log FTP Server. Berikut log pada FTP Server setelah dijalankan aplikasi pada empat attacker.

Gambar 2 Log FTP Server diserang Microsoft Windows dan Linux

Pada gambar diatas, terlihat attacker menggunakan IP, 172.16.30.2, 172.16.30.3, 172.16.30.4 dan 172.16.30.5 yang telah gagal dalam melakukan login. Kemudian Fail2ban akan melakukan pengecekan terhadap fairegex yang dideklarasikan pada file vsftpd.conf. Setelah failregex dan log pada FTP Server cocok dengan formatnya maka akan dihitung satu kesalahan. Jika kesalahan sudah sama dengan atau lebih dari yang sudah ditentukan pada variabel maxretry dalam rentang waktu yang telah ditentukan pada variabel findtime, maka file action akan bekerja. File action itu adalah iptables-multiportftp.conf. Pada file iptables-multiportftp.conf terdapat perintah iptables yang akan men-drop paket dari attacker. Berikut log pada fail2ban dengan log FTP Server pada Gambar 2.

Gambar 3 Log Fail2ban untuk FTP Server diserang Microsoft Windows dan Linux

Berikut hasil perintah iptables –L dengan log FTP Server pada Gambar 2.

2.1.2  Fail2ban melindungi SSH Server

Pada penelitian ini, dilakukan pengujian terhadap SSH Server yang dilindungi oleh Fail2ban dengan empat attacker. Empat attacker tersebut menggunakan aplikasi putty versi 0.61 pada sistem operasi Microsoft Windows sebanyak dua buah dan menggunakan aplikasi hydra versi 7.2 pada sistem operasi Linux dua buah. Setelah dijalankan aplikasi ke-empat attacker secara bersamaan, akan terjadi penambahan data pada log SSH Server. Berikut log pada SSH Server setelah dijalankan aplikasi pada empat attacker.

Gambar 4 Log SSH Server dilindungi fail2ban

Pada gambar diatas, terlihat attacker menggunakan IP, 172.16.30.2, 172.16.30.3, 172.16.30.4 dan 172.16.30.5 yang telah gagal dalam melakukan login. Kemudian Fail2ban akan melakukan pengecekan terhadap fairegex yang dideklarasikan pada file sshd.conf. Setelah failregex dan log pada SSH Server cocok dengan formatnya maka akan dihitung satu kesalahan. Jika kesalahan sudah sama dengan atau lebih dari yang sudah ditentukan pada variabel maxretry dalam rentang waktu yang telah ditentukan pada variabel findtime, maka file action akan bekerja. File action itu adalah iptables-multiportweb.conf. Pada file iptables-multiportweb.conf terdapat perintah iptables yang akan men-drop paket dari attacker. Berikut log pada fail2ban dengan log SSH Server pada Gambar 2.

Gambar 5 Log Fail2ban

Berikut hasil perintah iptables –L dengan log SSH Server pada Gambar 2.

Chain fail2ban-ssh (1 references)

target prot opt source destination

DROP all — 172.16.30.3 ssh.local

DROP all — 172.16.30.5 ssh.local

DROP all — 172.16.30.2 ssh.local

DROP all — 172.16.30.4 ssh.local

RETURN all — anywhere anywhere

Dari Gambar 3, pada baris 165 terlihat warning bahwa IP 172.16.30.4 sudah di-banned, pada baris 166 terlihat warning bahwa IP 172.16.30.2 sudah di-banned, pada baris 168 terlihat warning bahwa IP 172.16.30.5 sudah di-banned dan pada baris 169 terlihat warning bahwa IP 172.16.30.3 sudah di-banned.

Tetapi, pada Gambar 3 di baris 167, terdapat tulisan already banned pada log Fail2ban dengan IP yang sama. Ini berarti log pada SSH Server terus jalan, namun IPTables belum melakukan ban karena membutuhkan waktu untuk melakukan perintah iptables -I fail2ban-<name> 1 -s <ip> -d 192.168.40.19 -j DROP.

2.1.3  Fail2ban melindungi Web Server

 

2.2      Denyhosts

Pada penelitian ini, dilakukan pengujian terhadap SSH Server. Pada pengujian ini, satu attacker menggunakan sistem operasi Linux. Aplikasi yang digunakan adalah aplikasi hydra untuk melakukan serangan brute force terhadap SSH Server. Hydra yang digunakan adalah versi 7.2. Berikut log pada SSH Server setelah dijalankan aplikasi hydra.

Gambar 6 Log SSH Server dilindungi denyhosts

Pada gambar diatas, client dengan IP 172.16.30.5 telah melakukan gagal login lebih dari 3 kali. Kemudian Denyhosts akan menambahkan IP 172.16.30.5 kedalam file hosts.deny.

Gambar 7 IP yang di-ban pada Denyhosts

Dari Gambar 4.42, pada baris 2 terlihat bahwa IP 172.16.30.5 sudah di-banned pada layanan sshd.

 

Source : http://journal.pcr.ac.id/wp-content/uploads/2012/09/PAPER-ANALISA-KINERJA-FAIL2BAN-DAN-DENYHOSTS-1.doc

 
 

Schedulling Process

22 May

Penjadwalan merupakan kumpulan kebijaksanaan dan mekanisme di sistem operasi yang berkaitan dengan urutan kerja yang dilakukan sistem komputer. Penjadwalan bertugas memutuskan proses yang harus berjalan dan kapan atau berapa lama proses itu berjalan. Sasaran utama penjadwalan proses adalah optimasi kinerja menurut kriteria tertentu, yaitu :

–   adil

–   efisiensi

–   waktu tanggap (response time)

–   turn arround time

–   throughput

 

Tipe penjadwalan:

Penjadwalan jangka pendek (short-termscheduller)

Penjadwalan ini bertugas menjadwalkan alokasi pemroses diantara proses-proses ready di memori utama.

Penjadwalan jangka menengah (medium termscheduller )

Penjadwalan jangka menengah adalah menangani proses-proses swapping (aktivitas pemindahan proses yang tertunda dari memory utama ke memory sekunder).

Penjadwalan jangka panjang (long-termscheduller)

Penjadwalan jangka panjang bekerja terhadap antrian batch (proses – proses dengan penggunaan sumberdaya yang intensif) dan memilih batch berikutnya yang harus di eksekusi.

Ada 2 strategi penjadwalan :

 

Penjadwalan nonpreemptive

Proses yang sedang berjalan tidak dapat disela. Proses diberi jatah waktu oleh pemroses, maka pemroses tidak dapat diambil alih oleh proses lain sampai proses itu selesai.

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.

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.

ALGORITMA PENJADWALAN

 

Penjadwalan CPU menyangkut penentuan proses-proses yang ada dalam ready queue yang akan dialokasikan pada CPU. Terdapat beberapa algoritma penjadwalan CPU seperti dijelaskan pada sub bab di bawah ini.

 

1. First-Come First-Served Scheduling (FCFS)

Proses yang pertama kali meminta jatah waktu untuk menggunakan CPU akan dilayani terlebih dahulu. Pada skema ini, proses yang meminta CPU pertama kali akan dialokasikan ke CPU pertama kali. Misalnya terdapat tiga proses yang dapat dengan urutan P1, P2, dan P3 dengan

waktu CPU-burst dalam milidetik yang diberikan sebagai berikut :

Process    Burst Time

P1               24

P2                3

P3                3

Gant Chart dengan penjadwalan FCFS adalah sebagai berikut :

Waktu tunggu untuk P1 adalah 0, P2 adalah 24 dan P3 adalah 27 sehingga rata-rata waktu tunggu adalah (0 + 24 + 27)/3 = 17 milidetik. Sedangkan apabila proses datang dengan urutan P2, P3, dan P1, hasil penjadwalan CPU dapat dilihat pada gant chart berikut :

Waktu tunggu sekarang untuk P1 adalah 6, P2 adalah 0 dan P3 adalah 3 sehingga ratarata waktu tunggu adalah (6 + 0 + 3)/3 = 3 milidetik. Rata-rata waktu tunggu kasus ini jauh lebih baik dibandingkan dengan kasus sebelumnya. Pada penjadwalan CPU dimungkinkan terjadi Convoy effect apabila proses yang pendek berada pada proses yang panjang. Algoritma FCFS termasuk non-preemptive. karena, sekali CPU dialokasikan pada suatu proses, maka proses tersebut tetap akan memakai CPU sampai proses tersebut melepaskannya, yaitu jika proses tersebut berhenti atau meminta I/O.

 

2. Shortest Job First Scheduler (SJF)

Pada penjadwalan SJF, proses yang memiliki CPU burst paling kecil dilayani terlebih dahulu. Terdapat dua skema :

1. Non preemptive, bila CPU diberikan pada proses, maka tidak bisa ditunda sampai CPU burst selesai.

2. Preemptive, jika proses baru datang dengan panjang CPU burst lebih pendek dari sisa waktu proses yang saat itu sedang dieksekusi, proses ini ditunda dan diganti dengan proses baru. Skema ini disebut dengan Shortest-Remaining-Time-First (SRTF). SJF adalah algoritma penjadwalan yang optimal dengan rata-rata waktu tunggu yang minimal. Misalnya terdapat empat proses dengan panjang CPU burst dalam milidetik.

Process              ArrivalTime        Burst Time

P1                        0.0                        7

P2                        2.0                        4

P3                        4.0                        1

P4                        5.0                        4

Penjadwalan proses dengan algoritma SJF (non-preemptive) dapat dilihat pada gantchart berikut :

Waktu tunggu untuk P1 adalah 0, P2 adalah 26, P3 adalah 3 dan P4 adalah 7 sehingga rata-rata waktu tunggu adalah (0 + 6 + 3 + 7)/4 = 4 milidetik.

Waktu tunggu untuk P1 adalah 9, P2 adalah 1, P3 adalah 0 dan P4 adalah 4 sehingga rata-rata waktu tunggu adalah (9 + 1 + 0 + 4)/4 = 3 milidetik.

 

3 Priority Scheduling

Algoritma SJF adalah suatu kasus khusus dari penjadwalan berprioritas. Tiaptiap proses dilengkapi dengan nomor prioritas (integer). CPU dialokasikan untuk proses yang memiliki prioritas paling tinggi (nilai integer terkecil biasanya merupakan prioritas terbesar). Jika beberapa proses memiliki prioritas yang sama, maka akan digunakan algoritma FCFS. Penjadwalan berprioritas terdiri dari dua skema yaitu non preemptive dan preemptive. Jika ada proses P1 yang datang pada saat P0 sedang berjalan, maka akan dilihat prioritas P1. Seandainya prioritas P1 lebih besar dibanding dengan prioritas P0, maka pada non-preemptive, algoritma tetap akan menyelesaikan P0 sampai habis CPU burst-nya, dan meletakkan P1 pada posisi head queue. Sedangkan pada preemptive, P0 akan dihentikan dulu, dan CPU ganti dialokasikan untuk P1. Misalnya terdapat lima proses P1, P2, P3, P4 dan P5 yang datang secara berurutan dengan CPU burst dalam milidetik.

Process    Burst Time      Priority

P1             10                     3

P2              1                      1

P3              2                      3

P4              1                      4

P5              5                      2

Penjadwalan proses dengan algoritma priority dapat dilihat pada gant chart berikut :

 

4 Round-Robin Scheduling

Konsep dasar dari algoritma ini adalah dengan menggunakan time-sharing. Pada dasarnya algoritma ini sama dengan FCFS, hanya saja bersifat preemptive. Setiap proses mendapatkan waktu CPU yang disebut dengan waktu quantum (quantum time) untuk membatasi waktu proses, biasanya 1-100 milidetik. Setelah waktu habis, proses ditunda dan ditambahkan pada ready queue. Jika suatu proses memiliki CPU burst lebih kecil dibandingkan dengan waktu quantum, maka proses tersebut akan melepaskan CPU jika telah selesai bekerja, sehingga CPU dapat segera digunakan oleh proses selanjutnya. Sebaliknya, jika suatu proses memiliki CPU burst yang lebih besar dibandingkan dengan waktu quantum,

maka proses tersebut akan dihentikan sementara jika sudah mencapai waktu quantum, dan selanjutnya mengantri kembali pada posisi ekor dari ready queue, CPU kemudian menjalankan proses berikutnya. Jika terdapat n proses pada ready queue dan waktu quantum q, maka setiap proses mendapatkan 1/n dari waktu CPU paling banyak q unit waktu pada sekali penjadwalan CPU. Tidak ada proses yang menunggu lebih dari (n-1)q unit waktu. Performansi algoritma round robin dapat dijelaskan sebagai berikut, jika q besar, maka yang digunakan adalah algoritma FIFO, tetapi jika q kecil maka sering terjadi context switch.

Misalkan ada 3 proses: P1, P2, dan P3 yang meminta pelayanan CPU dengan quantum-time sebesar 4 milidetik.

Process     Burst Time

P1                 24

P2                  3

P3                  3

Penjadwalan proses dengan algoritma round robin dapat dilihat pada gant chart berikut :

Waktu tunggu untuk P1 adalah 6, P2 adalah 4, dan P3 adalah 7 sehingga rata-rata waktu tunggu adalah (6 + 4 + 7)/3 = 5.66 milidetik. Algoritma Round-Robin ini di satu sisi memiliki keuntungan, yaitu adanya keseragaman waktu. Namun di sisi lain, algoritma ini akan terlalu sering melakukan switching seperti yang terlihat pada Gambar 4-4. Semakin besar quantum-timenya maka switching yang terjadi akan semakin sedikit.

 

 
 

Penjadwalan Real-Time

18 May

Penjadwalan Real-Time

Komputasi real time adalah tipe komputasi yang kebenarannya tidak hanya ditentukan oleh hasil lojik komputasi tetapi juga waktu hasil itu diperoleh. Disebut hard real time jika tugas (task) harus selesai dalam deadline. Disebut soft real time, jika tidak ada keharusan selesai dalam deadline.

Bagaimana menjadwal program-program dala system seperti ini? Ada beberapa pilihan :

  • Static table-driven approaches
    tugas-tugas diprioritaskan berdasarkan batasan waktu mereka. Pada saat dijalankan, jika ada tugas dengan prioritas lebih tinggi, tugas yang sedang dijalankan dapat dihentikan.
  • Static priority-driven preemptive approaches
    diprioritastkan berdasarkan batsan waktu mereka. Pada saat dijalankan, jika ada tugas dengan prioritas lebih tinggi, tugas yang sedang dijalankan dapat dihentikan.
  • Dynamic planning-based approaches
    tugas-tugas sudahdirencanakan untuk dijalankan, hanya jika ada tugas baru dating dan memungkinkan untuk dijalankan, maka akan diterima untuk dijalankan.
  • Dynamic best effort approaches
    jalakna semua tugas yang dating, jika deadline tidak terpenuhi, batalkan.

Tugas yang akan dijadwalkan harus dilengkapi dengan kata :

  • kapan siap dijalankan (ready time)
  • kapan harus mulai dikerjakan (starting deadline)
  • kapan harus selesai (completion deadline)
  • berapa lama waktu eksekusi (processing time)
  • apa saja yang dibutuhkan (resource requirement)
  • tingkat prioritas (priority)
  • apakah ia terdiri dari sub-sub tugas ( subtask structure)

Perhatikan kasus pada table dibawah:

Tugas

Waktu Datang

Waktu Eksekusi

Deadline

A(1)

0

10

20

A(2)

20

10

40

A(3)

40

10

60

A(4)

60

10

80

A(5)

80

10

100

B(1)

0

25

50

B(2)

50

25

100

….

Dengan memperhatikan kapan harus selesai, tugas-tugas ini akan dijadwalkan seperti gambar dibawah ini

Kasus lain yang mungkin terjadi adalah tugas-tugas dating dalam jangka waktu yang tidak tentu, aperiodic. Penjadwalan dapat dilakukan berdasarkan kapan tugas itu harus mulai dikerjakan, atau kapan tugas itu harus selesai.

Sistem operasi kelas E

Malang, 18 Mei 2012

by MadeRiko

 

Perrbedaan Timer dan Counter

17 May
Apa itu timer/counter?
Merupakan suatu pencacah(counter) yang bisa menghitung naik/turun
Pencacah berupa register 8 bit/16 bit
Nilai cacahan yg tersimpan di register tersebut akan naik/turun pada transisi naik (positive edge) clock masukan
Timer : clock untuk timer berasal dari clock yang dipakai oleh sistem (internal).Jika kita menggunakan kristal, clock untuk timer bersumber dari kristal. Timer biasanya digunakan untuk pewaktuan
Counter: clock berasal dari pin Tn(T0,T1 atau TOSC1-TOSC2). Digunakan untuk mencacah event dari luar(mencacah pulsa dsb)
by:
 

Hello world!

07 Mar

Selamat datang di Student Blogs. Ini adalah posting pertamaku!