Minggu, 18 November 2018

TUGAS 3

DMA(Direct Memory Access)

Gambar terkait

1.     Pengertian DMA(Direct Memory Access)
Direct memory access (DMA) adalah suatu alat pengendali khusus disediakan untuk memungkinkan transfes blok data langsung antar perangkat eksternal dan memori utama, tanpa intervensi terus menerus dari prosesor.
Transfer DMA dilakukan oleh sirkuit kontrol yang merupakan bagian dari antar muka perangkat I/O. Istilah ini yang sering banyak kita ketahui adalah sebagai kontroler DMA. Kontroler DMA melakukan fungsi yang biasanya dilakukan oleh prosesor pada saat mengakses memori utama (yang sering disebut :RAM). Untuk setiap word yang ditransfer, kontroler ini menyediakan alamat memori dan semua sinyal bus yang mengontrol transfer data. Karena harus mentransfer sejumlah blok data, maka kontroler DMA harus menaikkan alamat memori untuk word yang berurutan dan mencatat jumlah transfer.

Sekalipun kontroler DMA dapat mentransfer data tanpa intervensi dari prosesor, operasinya tetap berada dibawah kontrol program yang dieksekusi oleh prosesor. Untuk menginisiasi transfer suatu blok word, prosesor mengirim alamat awal, jumlah word dalam blok, dan arah transfer. Pada saat seluruh blok telah ditransfer, kontroler tersebut memberitahu prosesor dengan memunculkan sinyal interupt. Pada saat transfer DMA terjadi, program yang meminta transfer tersebut berhenti bekerja dan prosesor dapat digunakan untuk mengeksekusi program lain. Setelah transfer DMA selesai, prosesor dapat kembali ke program yang meminta transfer tersebut.

2.    Fungsi DMA(Direct Memory Access)

Fungsi dari Direct Memory Access adalah agar CPU dapat melakukan pekerjaan atau instruksi yang berbeda ketika melakukan operasi baca tulis dari perangkat peripheral.

3.     KELEBIHAN
Adapun beberapa kelebihan dari Direct Memory Access (DMA) adalah sebagai berikut :
·   Dapat menirukan sebagian fungsi processor.
·   Dapat mengambil alih fungsi processor yang berhubungan dengan transfer data.
·   CPU dapat melakukan manajemen operasi baca tulis (transfer data) dengan baik dan juga             dapat menyelesaikan instruksi lain.
·   Mendapat informasi tentang jumlah data bit yang ditransfer , alamat dari device dan memory     yang diperlukan dan arah dari aliran data.


4.      KEKURANGAN

 Jika ada kelebihan kemungkinan ada juga kekurangan. Adapun beberapa kekurangan dari Direct  Memory Access (DMA) adalah sebagai berikut :

·      Transfer rate data terbatas
·       Masih memerlukan keterlibatan CPU, sehingga CPU menjadi lebih sibuk.

                                           

5.      Cara Kerja DMA




Selama transfer blok byte masukan, urutan berikut terjadi sebagai byte data dikirim dari antarmuka ke memori :

Antarmuka mengirimkan pengontrol DMA permintaan DMA layanan.
Permintaan Bus dibuat untuk pin terus (Tinggi aktif) pada mikroprosesor 8086 dan controller kontrol keuntungan dari bus.
Dana bantuan Bus dikembalikan ke DMA controller dari Hold Acknowledge (HLDA) pin (aktif tinggi) pada mikroprosesor 8086.
Para DMA controller tempat isi alamat register ke bus alamat.
Controller mengirimkan antarmuka pengakuan DMA, yang mengisahkan antarmuka untuk menempatkan data pada bus data. (Untuk output itu sinyal antarmuka untuk latch data berikutnya ditempatkan di bus.
Byte data ditransfer ke lokasi memori yang ditunjukkan oleh bus alamat.
Antarmuka kait data.
Permintaan Bus terjatuh, pin HOLD pergi rendah, dan controller relinquishes bus.
Hibah Bus dari mikroprosesor 8086 dijatuhkan dan pin HLDA pergi Rendah.
Register alamat bertambah oleh 1.
Jumlah byte decremented oleh 1.
Jika jumlah byte adalah bukan nol, kembali ke langkah 1, jika tidak berhenti.

Prinsip DMA

•        CPU akan mendelegasikan kerja I/O kepada DMA
•        CPU hanya akan terlibat pada awal proses untuk memberikan instruksi lengkap pada DMA dan     akhir proses saja
•        CPU dapat menjalankan proses lainnya tanpa banyak terganggu dengan interupsi

   Melaksanakan transfer data secara mandiri :

1.  DMA memerlukan pengambilalihan kontrol bus dari CPU
     2.  DMA akan menggunakan bus bila CPU tidak menggunakannya atau DMA memaksa CPU                untuk  menghentikan sementara penggunaan bus
3. Teknik cyclestealing, modul DMA mengambil alih siklus bus



Tiga langkah dalam transfer DMA:

1.    Prosesor menyiapkan DMA transfer dengan menyedia kan data-data dari perangkat,operasi yang akan ditampilkan, alamat memori yang menjadi sumber dan tujuan data, dan              banyaknya byte yang ditransfer.
2.    Pengendali DMA memulai operasi (menyiapkan bus, menyediakan alamat, menulis dan         membaca data), sampai seluruh blok sudah di transfer.
3.   Pengendali DMA meng-interupsi prosesor, dimana selanjutnya akan ditentukan tindakan       berikutnya.
Pada dasarnya, DMA mempunyai dua metode yang berbeda dalam mentransfer data. Metode yang pertama ialah metode yang sangat baku dan sederhana disebut HALT, atau Burst Mode DMA, karena pengendali DMA memegang kontrol dari sistem bus dan mentransfer semua blok data ke atau dari memori pada single burst. Selagi transfer masih
dalam prosres, sistem mikroprosessor diset idle, tidak melakukan instruksi operasi untuk menjaga internal register. Tipe operasi DMA seperti ini ada pada kebanyakan komputer.Metode yang kedua, mengikutsertakan pengendali DMA untuk memegang kontrol dari sistem bus untuk jangka waktu yang lebih pendek pada periode dimana mikroprosessor sibuk dengan operasi internal dan tidak membutuhkan akses ke sistem bus. Metode DMA ini disebut cycle stealing mode. Cycle stealing DMA lebih kompleks untuk diimplementasikan dibandingkan HALT DMA, karena pengendali DMA harus mempunyai kepintaran untuk merasakan waktu pada saat sistem bus terbuka.












REFERENSI
http://53tkj.blogspot.com/2015/08/dma-direct-memory-access.html
http://eligius-zebua.blogspot.com/2016/12/pengertian-direct-memory-access-dma.html
https://www.slideshare.net/ashwiniawatare/dma-and-dma-controller-8237

Rabu, 07 November 2018

TUGAS 2

pengertian dan contoh dari :
 -Batch System
 -Critical Section
 -Process Control Block
 -Distributed Processing
 -Handheld
 -Thread


Pengertian Batch System



Batch system adalah dimana job-job yang mirip dikumpulkan dan dijalankan secara kelompok kemudian setelah kelompok yang dijalankan tadi selesai maka secara otomatis kelompok lain dijalankan. jadi dengan kata lain adalah teknologi proses komputer dari generasi ke-2. yang jika suatu tugas sedang dikerjakan pada 1 rangkaian, akan di eksekusi secara berurutan. Pada komputer generasi ke-2 sistem komputer nya maasih blum dilengkapi oleh sebuah sistem operasi. Tapi, dalam beberapa fungsi sistem operasi, seperti os yang tengah berkembang pada jaman sekarang ini. Contohnya adlah FMS ( Fortarn Monitoring System ) dan IBSYS.

Contoh sebuah Batch System adalah sebuah e-mail dan transaksi batch processing. Dalam suatu sistem batch processing, transaksi secara individual dientri melalui peralatan terminal, dilakukan validasi tertentu, dan ditambahkan ke transaction file yang berisi transaksi lain, dan kemudian dientri ke dalam sistem secara periodik. Di waktu kemudian, selama siklus pengolahan berikutnya, transaction file dapat divalidasi lebih lanjut dan kemudian digunakan untuk meng-up date master file yang berkaitan.


Pengertian Ctitical Section 


critical section adalah dengan mendesain sebuah protokol di mana proses-proses dapat menggunakannya secara bersama-sama.

Critical Section: Kode di mana hanya ada satu proses yang dapat dieksekusi pada satu waktu

Contoh 22.1. Critical section

        
do{

   critical section
   
}while(1)


Pengertian Proses Control Block




Process Control Block adalah informasi-informasi lain yang diperlukan SO untuk mengendalikan dan koordinasi beragam proses aktif.

Contoh PCB :
  • Status proses: status mungkin, new, ready, running, waiting, halted, dan juga banyak lagi.
  • Program counter: suatu stack yang berisi alamat dari instruksi selanjutnya untuk dieksekusi untuk proses ini.
  • CPU register: Register bervariasi dalam jumlah dan jenis, tergantung pada rancangan komputer. Register tersebut termasuk accumulator, register indeks, stack pointer, general-purposes register, ditambah code information pada kondisi apa pun. Beserta dengan program counter, keadaan/status informasi harus disimpan ketika gangguan terjadi, untuk memungkinkan proses tersebut berjalan/bekerja dengan benar setelahnya.
  • Informasi manajemen memori: Informasi ini dapat termasuk suatu informasi sebagai nilai dari dasar dan batas register, tabel page/halaman, atau tabel segmen tergantung pada sistem memori yang digunakan oleh sistem operasi (lihat Bagian V, “Memori”).
  • Informasi pencatatan: Informasi ini termasuk jumlah dari CPU dan waktu riil yang digunakan, batas waktu, jumlah akun jumlah job atau proses, dan banyak lagi.
  • Informasi status M/K: Informasi termasuk daftar dari perangkat M/K yang di gunakan pada proses ini, suatu daftar berkas-berkas yang sedang diakses dan banyak lagi.
  • PCB hanya berfungsi sebagai tempat penyimpanan informasi yang dapat bervariasi dari proses yang satu dengan yang lain.



Pengertian Distributed Processing



Distributed Processing adalah kemampuan menjalankan semua proses pengolahan data secara bersama antara komputer yang berfungsi sebagai pusat dengan beberapa komputer yang lebih kecil dan saling dihubungkan melalui jalur komunikasi. Setiap komputer tersebut memiliki prosesor mandiri sehingga mampu mengolah sebagian data secara terpisah, kemudian hasil pengolahan tadi digabungkan menjadi satu penyelesaian total. Jika salah satu prosesor mengalami kegagalan atau masalah maka prosesor yang lain akan mengambil alih tugasnya. Dalam proses distribusi sudah mutlak diperlukan perpaduan yang mendalam antara teknologi komputer dan telekomunikasi, karena selain proses yang harus didistribusikan, semua host komputer wajib melayani terminal-terminalnya dalam satu perintah dari komputer pusat.

Contoh nya 
Setiap komputer tersebut memiliki prosesor mandiri sehingga mampu mengolah sebagian data secara terpisah, kemudian hasil pengolahan tadi digabungkan menjadi satu penyelesaian total. Jika salah satu prosesor mengalami kegagalan atau masalah yang lain akan mengambil alih tugasnya. 


Pengertian HandHeld



Sistem Handheld adalah sebuah system operasi yang lebih kecil dari mikrokomputer yang mempunyai memori yang terbatas, kecepatan Sistem Handheld lebih rendah dan display screen yang kecil.

Contoh nya system handheld adalah Android, Symbian.


Pengertian Thread



Thread adalah sebuah alur kontrol dari sebuah proses. Suatu proses yang multithreadedmengandung beberapa perbedaan alur kontrol dengan ruang alamat yang sama. Keuntungan dari multithreaded meliputi peningkatan respon dari user, pembagian sumber daya proses, ekonomis, dan kemampuan untuk mengambil keuntungan dari arsitektur multiprosesor. 

Contoh : secara bersamaan mengetik dan menjalankan pemeriksaan ejaan di dalam proses yang sama.


Sumber dari : 
http://onepersen4ever.blogspot.com/2014/04/pengertian-batch-system-bentuk-batch.html?m=1

blogspot.com/2011/03/critical-section.html?m=1
blogspot.com/2012/04/critical-section.html?m=1

http://opensource.telkomspeedy.com/repo/abba/v06/Kuliah/SistemOperasi/BUKU/SistemOperasi-4.X-1/ch22s02.html

http://www.kumpulancontohmakalah.com/2015/11/pengertian-proses-control-block-thread.html?m=1


www.google.co.id/amp/s/uniquesciences.wordpress.com/2012/10/04/process-control-block-pcb/amp/

http://arifbudimanhsb.blogspot.com/2016/06/distributed-processing-adalah.html?m=1


buddy.blogspot.com/2012/09/definisi-multiprogramming.html?m=1u

https://brainly.co.id/tugas/8503328

juliarnasution.blogspot.com/2015/12/pengertian-thread.html?m=1

joeshapictures.blogspot.com/2017/08/thread-dalam-sistem-operasi.html?m=1