Showing posts with label pengertian. Show all posts
Showing posts with label pengertian. Show all posts

Wednesday, June 10, 2015

Komputer parallel merupakan sekumpulan elemen pemroses yang bekerja sama dalam menyelesaikan masalah besar. Sistem yang digunakan dalam komputer parallel adalah komputasi parallel sesuai namanya, tujuan dibuat komputasi parallel adalah untuk mengolah data dalam jumlah besar ataupun tuntutan komputas yang banyak.

Tujuan pengembangan  komputasi parallel :
  • Tuntutan aplikasi
  • Trend teknologi
  • Trend arsitektur
  • Ekonomi
  • Pengaplikasian dengan bidang lain (transportasi, bangunan, kesehatan)

Dalam komputer parallel ada 2 hukum yang berlaku :
  • Hukum Amdahl Amdahl berpendapat, “Peningkatan kecepatan secara paralel akan menjadi linear, melipatgandakan kemampuan proses sebuah komputer dan mengurangi separuh dari waktu proses yang diperlukan untuk menyelesaikan sebuah masalah”.
  • Hukum Gustafson
    Gustafson berpendapta s
    ebuah komputasi paralel berjalan dengan menggunakan dua atau lebih mesin untuk mempercepat penyelesaian masalah dengan memperhatikan faktor eksternal, seperti kemampuan mesin dan kecepatan proses tiap-tiap mesin yang digunakan
Pembagian komputer berdasar arsitekturnya / Taksonomi (Versi Flyn )

  1.   SISD (Single Instruction, Single Data-Stream)
  2. SIMD (Single Instruction, Multi Data-Stream)
  3.  MIMD (Multiple Instruction-stream, Multiple Data-stream)
  4. MISD (Multiple Instruction-stream, Single Data-stream)

Berdasar taksonomi dari Flyn, yang termasuk dalam kategori prosessor tunggal adalah SISD dan SIMD dan yang menggunakan prosessor parallel adalah MIMD.

Perbedaan SIMD dan MIMD



Jadi yang yang bisa disebut dengan komputer parallel adalah komputer yang menggunakan pemrosesan secara parallel, dalam hal ini tidak bisa lepas dari penggunaan prosessor yang tentunya mumpuni untuk bekerja secara parallel. Jenis komputer yang menggunakan prosessor parallel ada 2 yaitu komputer parallel dan komputer terdistribusi. Ciri dari komputer parallel adalah multiprosessor, shared-memory, dan menggunakan multiprosessor tipe message passing atau MPI.

Salah satu perbedaan mendasar dari komputer parallel dan komputer terdisitribusi adalah pada komputer parallel menggunakan prosessor serentak dalam menyelesaikan suatu perintah  mereka saling berbagi memory dan clock sedangkn pada komputer terdistribusi tidak berbagi memory dan clock system.


Sumber :
http://id.wikipedia.org/wiki/Komputasi_paralel
https://andri102.wordpress.com/game/soft-skill/konsep-komputasi-parallel-processing/

Monday, June 08, 2015

Pipeline  adalah teknik untuk memecah proses  eksekusi menjadi beberapa sub-proses yang akan dieksekusi dalam segmen khusus dan dalam waktu yang bersamaan sehingga akan menghemat waktu pemrosesan.

Teknik pipeline ini dapat diterapkan pada berbagai tingkatan dalam sistem komputer. Bisa  pada level yang tinggi, misalnya program aplikasi, sampai pada tingkat yang rendah, seperti  pada instruksi yang dijaankan oleh microprocessor.

Apabila dianalogikan, konsep pipeline mirip dengan alur perakitan mobil, dimana saat bagian body memasang perlengkapan body pada mobil pertama maka pada bagian pengecatan akan menunggu mobil pertama. Saat  mobil pertama masuk ke pengecatan, maka bagian body akan melanjutkan dengan mobil kedua tanpa menunggu mobil pertama selesai dirakit dan selanjutnya ke tahap mesin dan yang lainnya dengan konsep yang sama.

Tiga kesulitan yang sering dihadapi ketika menggunakan teknik  pipeline ini adalah :
1.       Terjadinya penggunaan resource yang bersamaan
2.       Pengaturan Jump ke suatu lokasi memori.
3.       Sebagai perbandingan dapat melihat grafik berikut





Tahapan pipeline
1.       Mengambil instruksi pertama dan menjalankannya
2.       Ketika tahap 1 selesai maka lanjut ke tahap 2
3.       Ketika tahap 2 dijalankan, maka tahap 1 dijalankan menggunakan resource memory yang tersedia
4.       Dan menjalankan tahap selanjutnya sampai resource memory digunakan secara maksimal



Contoh pengerjaan instruksi dengan pipeline

Untuk menghitung efisiensi dalam sebuah pipeline dapat digunakan rumus sebagai berikut
     Non-pipeline     : n.k.T
     Pipeline             : nT + (k-1).T
     Peningkatan kecepatan = n.k / (k + n - 1), dimana n >> 1

Masalah yang muncul dalam system pipeline
Dalam pipeline ada situasi dimana ada instruksi yang gagal dilaksanakan, sehingga instruksi berikutnya tidak bisa dilaksanakan, situasi ini disebut  Hazards
Ada 3 jenis Hazards
1.       Structural Hazards   muncul dari konflik resource sistem yaitu ketika hardware tidak dapat mensuport semua kemungkinan kombinasi pelaksanaan instruksi
2.       Data Hazards muncul ketika data untuk suatu instruksi tergantung pada hasil instruksi sebelumnya
3.       Control Hazards  muncul pada saat pelaksanaan instruksi yang mengubah PC

Keuntungan dari Pipeline
 1.Waktu siklus prosesor berkurang, sehingga meningkatkan tingkat instruksi-isu dalam kebanyakan kasus.

2.Beberapa combinational sirkuit seperti penambah atau pengganda dapat dibuat lebih cepat dengan menambahkan lebih banyak sirkuit.

3.Pemrosesan dapat dilakukan lebih cepat, dikarenakan beberapa proses dilakukan secara bersamaan dalam satu waktu. Jika  pipeline digunakan sebagai pengganti, hal itu dapat menghemat sirkuit vs combinational yang lebih kompleks sirkuit.

Kerugian dari Pipeline
 1.Prossesor non-pipeline hanya menjalankan satu instruksi pada satu waktu. Hal ini untuk mencegah penundaan cabang (yang berlaku, setiap cabang tertunda) dan masalah dengan serial instruksi dieksekusi secara bersamaan. Akibatnya desain lebih sederhana dan lebih murah untuk diproduksi.

2.Instruksi latency di prossesor non-pipeline sedikit lebih rendah daripada dalam  pipeline setara. Hal ini disebabkan oleh fakta bahwa sandal jepit ekstra harus ditambahkan ke jalur data dari prossesor pipeline.

3.Prossesor non-pipeline akan memiliki instruksi bandwidth yang stabil. Kinerja  prossesor yang pipeline jauh lebih sulit untuk meramalkan dan dapat bervariasi lebih luas di antara program yang
berbeda.

4.Karena beberapa instruksi diproses secara bersamaan ada kemungkinan instruksi tersebut sama-sama memerlukan resource yang sama, sehingga diperlukan adanya  pengaturan yang tepat agar proses tetap berjalan dengan benar.

5.Sedangkan ketergantungan terhadap data, bisa muncul, misalnya instruksi yang  berurutan memerlukan data dari instruksi yang sebelumnya.

6.Kasus Jump, juga perlu perhatian, karena ketika sebuah instruksi meminta untuk melompat ke suatu lokasi memori tertentu, akan terjadi perubahan program counter, sedangkan instruksi yang sedang berada dalam salah satu tahap proses yang  berikutnya mungkin tidak mengharapkan terjadinya perubahan program counter.

Friday, May 08, 2015

Komputer adalah alat yang dipakai untuk mengolah data menurut prosedur yang telah dirumuskan. Kata computer secara umum pernah dipergunakan untuk mendefiniskan orang yang melakukan perhitungan aritmatika, dengan atau tanpa mesin pembantu . 





















Jika dilihat dalam  gambar, computer memiliki 4 struktur utama : CPU, Memori Utama, I/O,dan System Interconnection.


A.      CPU merupakan pengontrol operasi komputer dan pusat pengolahan fungsi – fungsi komputer. Kesepakatan, CPU cukup disebut sebagai processor (prosesor) saja.

Fungsi utama dari CPU adalah melakukan operasi aritmatika dan logika terhadap data yang diambil dari memori atau dari informasi yang dimasukkan melalui beberapa perangkat keras

Pada CPU pun memiliki beberapa bagian, apabila di breakdown, maka akan terlihat seperti gambar berikut

Berdasarkan struktur diatas, Komponen penting CPU seperti dijelaskan seperti berikut  :
1.       Control Unit, berfungsi untuk mengontrol operasi CPU dan mengontrol komputer secara keseluruhan. Control unit juga berfungsi untuk mengatur instruksi-instruksi dari memori utama dan menentukan jenis instruksi tersebut.

2.       Arithmetic And Logic Unit (ALU), berfungsi untuk membentuk fungsi – fungsi, lebih tepatnya ALU digunakan untuk menjalankan proses yang berhubungan dengan aritmatika dan berdasar instruksi  yang telah ditentukan. Pada ALU terdapat 2 bagian yaitu unit Aritmatika dan unit logika Boolean.

3.       Register, berfungsi sebagai penyimpan internal bagi CPU. Dengan adanya register ini, maka instruksi yang akan dijalankan disimpan terlebih dahulu selama menjalankan instruksi tersebut, dan akan hilang saat instruksi selesai dijalankan. Bisa dikatakan bahwa register adalah memori sesaat CPU.



B.      Memori Utama adalah memori inti dalam suatu komputer dan merupakan media penyimpanan dalam bentuk array yang disusun word atau byte, kapasitas daya simpannya bisa jutaan susunan. Seperti namanya, fungsi dari memori utama  adalah menyimpan data, namun dalam hal ini data yang disimpan bersifat sementara selama computer nyala atau masih terdapat sumber listrik. Contohnya adalah seperti data yang disimpan pada RAM, data ini akan hilang setelah computer kehilangan daya.

C.      CPU Interconnection, berfungsi menghubungkan seluruh bagian dari CPU. Dengan adanya CPU Interconnection ini dimungkinkan terjadinya komunikasi antar komponen di  dalam CPU.
Terdapat 4 langkah dari sebuah sistem komputer ,yaitu:
1.       Fetch,yaitu proses pengambilan data atau intruksi dari memori dengan menggunakan perangkat input.
2.       Decode,yaitu proses pembacaan sandi/kode dan menerjemahkan intruksi melalui kontrol input.
3.       Execute,yaitu proses eksekusi dengan menjalankan perintah
4.       Store,yaitu proses penyimpanan data dan menampilkan hasilnya pada peralatan output seperti monitor.


D.       I/O merupakan bagian dari computer yang berfungsi untuk memindahkan data dari lingkungan  ke computer maupun sebaliknya.

berdasarkan fungsinya, terdapat input devices dan Output Devices.
Input device merupakan perangkat yang digunakan untuk memasukkan data dari lingkungan ke dalam computer, hal ini memungkinkan manusia / user memberikan instruksi atau trigger ke computer untuk menjalankan sesuatu.
contoh input devices adalah : keyboard, mouse, touch screen, scanner.

Output Devices merupakan kebalikan dari input devices, memiliki fungsi untuk mengeluarkan data / merubah data dari bentuk digital ke lingkungan sesuai output devices yang digunakan. dengan output device ini, user dapat memperoleh feedback  dari apa yang telah diinstruksikan kedalam computer.
contohnya adalah, saat kita memberi perintah untuk menampilkan video, maka computer akan merespon dengan menjalankan video dan menampilkan ke monitor. Jadi monitor merupakan salah satu output devices.
contoh output devices yang lain adalah : speaker, printer, 

Tuesday, March 18, 2014

Setelah kemarin membahas pengertian tentang Kriptografi, sekarang akan dilanjutkan dengan mengenal tentang algoritma sandi. Dalam artikel yang pertama telah dibahas sedikit tentang pengertian algoritma sandi yang dikutip dari id.wikipedia.org. Artikel kali ini akan lebih membahas ke jenis-jenis algoritma sandi yang digunakan.

Algoritma sandi dapat dibedakan menjadi 2 menurut kesamaan kuncinya:
  • kunci-simetris/symetric-key,  sering juga disebut sebagai algoritma sandi konvensional karena biasa diterapkan pada algoritma sandi klasik.
  • kunci asimetris/asymetric-key
Algoritma Sandi Kunci-Simetris
Algoritma sandi disebut kunci-simetris apabila setiap proses enkripsi maupun dekripsi data menggunakan kunci yang sama. berdasarkan jumlah data dan alur pengolahan data dapat dibedakan menjadi 2 yaitu Block-chiper dan stream-chiper.
  • Block-Cipher merupakan skema algoritma sandi yang akan membagi-bagi teks terang ke dala ukuran (blok) tertentu dengan panjang t, dan setiap blok dienkripsi dengan menggunakan kunci yang sama. dpada umumnya, block-cipher menggunakan panjang blok lebih dari 64 bit agar lebih sulit dalam pengenalan pola untuk membongkar kunci enkripsi. Block-cipher telah dikembangkan ke dalam beberapa model untuk menambah kehandalan:
    - ECB, Electronic Code Block
    - CBC, Cipher Block Chaining
    - OFB, Output Feed Back
    - CFB, Cipher Feed Back
  • Stream-Cipher merupakan algoritma sandi yang mengenkripsi data persatuan data seperti bit, byte, nible. setiap mengekripsi satu satuan data digunakan kunci yang merupakan hasil pembangkitan dari kunci sebelumnya.
Contoh algoritma sandi kunci-simetris:
   - DES - Data Encryption Standard
   - blowfish
   - twofish
   - MARS
   - IDEA
   - 3DES - DES yang dilakukan secara 3kali
   - AES - Advanced Encryption Standard (rijndael)



Algoritma Sandi Kunci-Asimetris
Algoritma jenis ini merupakan algoritma yang menggunakan kunci  berbeda untuk melakukan proses enkripsi dan dekripsi, biasa juga disebut dengan kiptografi kunci publik(public-key) dan kunci privat(private-key), karena untuk kunci enkripsi dapat diketahui oleh siapa saja namun untuk kunci dekripsi hanya pembuat atau orang tertentu saja yang boleh mengetahuinya.

Beberapa contoh algoritma sandi kunci-asimetris:
  - Knapsack
  - RSA - Rivert-Shamir-Adelman
  - Diffie-Hellman


Fungsi Hash Kriptografi
Fungsi hash kriptografi merupakan sebuah fungi yang memiliki beberapa sifat kemanan untuk tambahan seingga dapat dipakai untuk tujuan keamana data. Biasanya digunakan untuk keperluan autentikasi dan integtritas data. Alur dari fungsi hash ini adalah mengubah string input dengan panjang berhingga menjadi string output dengan panjang tetap yang disebut nilai hash.

Beberapa contoh algoritma hash kriptografi:
  - MD4
  - MD5
  - SHA-0
  - SHA-1
  - SHA-256
  - SHA-512

Friday, March 14, 2014

Berawal dari mata kuliah yang saya ambil di kampus, kali ini saya akan sedikit membahas tentang pengertian kriptografi. Bagi saya mempelajari pengertiannya sudah menjadi pemikiransendiri. Dalam artikel kali ini yang akan saya bagikan adalah pengertian umum dari Kriptografi, sedangkan cara dan bagaimana kriptografi bekerja akan dilanjutkan pada artikel selanjutnya.
Menurut Bruce Schneier yang saya sadur dari wikipedia.org, Kriptografi adalah sebuah ilmu dan seni untuk menjaga kerahasiaan berita.
Secara umum, <>Kriptografi memiliki 4 tujuan mendasar yang berupa keamanan informasi
1. Kerahasiaan -> layanan yang digunakan untuk menjaga isi dan informasi dari siapapun kecuali yang memiliki otoritas (key)
2. Integritas data -> berhubungan dengan penjagaan dari perubahan data secara tidak sah. sistem harus bisa mendeteksi manipulasi data yag dilakukan oleh pihak2 yang tidak berhak.
3. Autentikasi -> berhubungan dengan pengenalan, baik secara kesatuan sistem maupun informasi itu sendiri.
4. Non-repudiasi -> atau biasa disebut nir- penyangkalan adalah usaha untuk mencegah terjadinya penyangkalan terhadap pengiriman/terciptanya suatu informasi oleh yang membuat.

Dalam sebuah Kriptografi haruslah memiliki algoritma untuk merubah data/pesan yang dikirimkan ke penerima. menurut Shannon, Algoritma yang digunakan haruslah memiliki kekuatan untuk melakukan hal berikut:

  • konfusi/pembingungan(confusion), dari teks terang sehingga sulit untuk direkonstruksikan secara langsung tanpa menggunakan algoritma dekripsinya.






  • difusi/peleburan (difusion), dari teks terang sehingga karakteristik dari teks terang tersebut hilang. 








Pada implementasinya sebuah algoritmas sandi harus memperhatikan kualitas layanan/Quality of Service atau QoS dari keseluruhan sistem dimana dia diimplementasikan. Algoritma sandi yang handal adalah algoritma sandi yang kekuatannya terletak pada kunci, bukan pada kerahasiaan algoritma itu sendiri. Teknik dan metode untuk menguji kehandalan algoritma sandi adalah Kriptanalisa.

Kriptografi Part 2


Subscribe to RSS Feed Follow me on Twitter!