Synchronous dan Asynchronous
• Synchronous
Dengan transmisi synchronous, ada level lain dari synchronisasi yang perlu agar receiver dapat menentukan awal dan akhir dari suatu blok data. Untuk itu, tiap blok dimulai dengan suatu pola preamble bit dan diakhiri dengan pola postamble bit. Pola-pola ini adalah kontrol informasi.
Komunikasi asynchronous adalah sederhana dan murah tetapi memerlukan tambahan 2 sampai 3 bit per karakter untuk synchronisasi. Persentase tambahan dapat dikurangi dengan mengirim blok-blok bit yang besar antara start dan stop bit, tetapi akan memperbesar kumulatif timing error. Solusinya yaitu transmisi synchronous.
Cara kerja synchronous : Dalam I/O synchronous, sebuah program memulai operasi I/O dan komputer akan idle/ menunggu sampai permintaan I/O telah selesai.
Contoh I/O synchronous :
- Printer
- Memory
• Asynchronous
Strategi dari metode ini yaitu mencegah problem timing dengan tidak mengirim aliran bit panjang yang tidak putus -putusnya. Melainkan data ditransmisi per karakter pada suatu waktu, dimana tiap karakter adalah 5 sampai 8 bit panjangnya. Timing atau synchronisasi harus dipertahankan antara tiap karakter; receiver mempunyai kesempatan untuk men-synchron-kan awal dari tiap karakter baru.
Keuntungan transmisi synchronous :
- Efisien dalam ukuran blok data; transmisi asynchronous memerlukan 20% atau lebih tambahan ukuran.
- Kontrol informasi kurang dari 100 bit.
Cara kerja asynchronous : Pada I/O asynchronous, sebuah program yang memulai operasi permintaan I/O pada kernel dengan memanggil fungsi yang bersangkutan. Apabila permintaan telah di terima oleh kernal, program yang meminta I/O akan terus memproses data berikutnya sampai permintaan I/O telah di penuhi. Lalu program akan menghentikan proses data yang sedang di proses lalu memproses data yang telah diterima untuk melanjutkan proses data yang di minta.Contoh I/O asynchronous :
- Memory
- sound device