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.
Operasi I/O selalu dilakukan oleh OS sebagai respon terhadap request dari program aplikasi. OS juga bertanggung jawab untuk menunda eksekusi satu program dan memulai eksekusi program lain. Sehingga, untuk operasi I/O yang melibatkan DMA, OS menetapkan program yang meminta transfer tsb pada keadaan blocked, menginisiasi operasi DMA, dan memulai eksekusi program lain. Pada saat transfer selesai, kontroler DMA memberitahu prosesor dengan mengirim interupt request. Sebagai responnya, OS menetapkan program yang ditunda ke keadaan runnable sehingga dapat dipilih oleh scheduler untuk melanjutkan eksekusi.
Keuntungan menggunakan mode DMA sangat terasa pada sistem operasi multitasking seperti Windows, Linux, UNIX, dan sebagainya. Karena transfer data akan menghemat resource processor sehingga processor dapat mengerjakan pekerjaan lain. Keuntungan lainnya adalah kecepatan transfer data dengan menggunakan mode DMA jauh lebih cepat bila dibandingkan dengan menggunakan mode PIO.
Mode DMA dibagi menjadi single word dan multi word DMA. Single word DMA berarti data dikirim sebanyak satu word untuk satu perintah yang diberikan, sementara pada multi word DMA, data ditransfer beberapa word sekaligus untuk satu perintah saja.
Single word DMA mempunyai tiga mode, yaitu single word mode 0, 1 dan 2. Sementara multi word DMA mempunyai tujuh mode.
Hard disk terbaru minimal sudah mendukung UDMA-133 (Ultra DMA-133), bahkan ATAPI CD ROM, DVD ROM maupun CD Writer sudah mendukung UDMA-66. Khusus untuk UDMA-66 ke atas, tidak dapat menggunakan kabel IDE biasa, harus menggunakan kabel IDE khusus yang serat-serat kabelnya lebih banyak dan lebih halus.
Ada 2 jenis DMA, yaitu:
- Third−party DMA, untuk melakukan operasi transfer data menggunakan DMA controller yang ada pada motherboard.
- First−party DMA (busmastering DMA). Untuk melakukan operasi transfer data dikerjakan oleh bagian logic di interface card.
DMA controller yang ada pada sistem ISA memiliki kecepatan yang sangat rendah sehingga sangat riskan untuk digunakan bersama hard disk keluaran baru, sedangkan DMA controller pada VLBUS hanya mendukung busmastering DMA. Pada EISA dikenal DMA transfer tipe 'B' yang memiliki kecepatan transfer 4 MB/s sedangkan pada PCI dikenal DMA transfer tipe 'F' yang memiliki kecepatan antara 6 sampai 8 MB/s. Saat ini, chipset-chipset motherboard yang terbaru sudah mendukung bus mastering DMA.
Multiword DMA mirip dengan block mode, dalam multiword DMA pengiriman data dilakukan dalam bentuk beberapa word data sekaligus untuk satu perintah saja dibandingkan dengan singleword DMA yang mengirimkan satu word data untuk satu perintah yang diberikan. Silahkan lihat Gambar 1. Cara transfer multiword DMA akan mempercepat transfer data yang sangat diperlukan terutama pada sistem multitasking, server jaringan dan komputer multimedia.
Di Windows 95/98 mengaktifkan mode DMA akan memberikan beberapa keuntungan, yaitu resource CPU untuk mengakses hard disk menjadi lebih sedikit. Anda berminta mencobanya? Begini caranya, buka Control Panel, System properties, buka tabulasi Device Manager, buka Disk Drive, pilih disk yang Anda inginkan (kemungkinan Windows akan menampilkan tipe 'GENERIC IDE TYPE 46' atau 'TYPE 80' dsb). Pilih properties, buka tabulasi Settings. Nah sekarang aktifkan DMA. Windows akan menampilkan Windows yang menyatakan bahwa hal ini berbahaya. Tapi selama Anda yakin hard disk Anda sudah hard disk baru (ATA2, dst) Anda tak perlu ragu. Setelah itu restart Windows. Untuk mengujinya Anda tidak dapat menggunakan System Information dari Norton Utilities karena hasilnya malah akan turun drastis karena tampaknya System Information tidak mendukung pengujian untuk mode DMA. Cara pengujian yang paling ampuh adalah dengan utility untuk menampilkan resource CPU yang digunakan (seperti CPU meter, resource meter), coba sekarang Anda melakukan akses hard disk. Insya Allah Anda akan mendapatkan CPU resource yang digunakan jauh lebih kecil. Sebagai hasil perbandingan, pada mode PIO hard disk pengasuh membutuhkan resource CPU di atas 70% untuk membaca hard disk, tapi pada mode DMA resource yang digunakan hanya 6% saja.
Bagian-Bagian Registry
Menyimpan informasi/data mengenai semua konfigurasi mesin yang bersangkutan. HKLM bukanlah symbolic link ke kunci registry manapun. HKEY_LOCAL_MACHINE memiliki beberapa anak kunci, yakni:
* HKEY_LOCAL_MACHINE\SOFTWARE, berguna untuk menyimpan semua konfigurasi perangkat lunak yang terinstal di dalam komputer yang bersangkutan, dan konfigurasinya yang akan diaplikasikan kepada semua pengguna, baik pengguna yang melakukan logon secara lokal/interaktif maupun yang melakukan logon secara remote (melalui service logon, batch logon, atau terminal services logon).
* HKEY_LOCAL_MACHINE\SYSTEM, berguna untuk menyimpan semua informasi dan konfigurasi sistem operasi Windows yang sedang berjalan. Di sini terdapat semacam recovery point, yang disebut sebagai LastKnownGood Configuration, yang akan digunakan pada saat sistem mengalami masalah pada saat proses booting. Semua konfigurasi driver dan layanan Windows (Win32 Service dan komponen Windows seperti NTFS dan TCP/IP) disimpan di sini.
* HKEY_LOCAL_MACHINE\SAM, berguna untuk menyimpan basis data akun pengguna yang terinstal di dalam sistem operasi yang bersangkutan. Secara default, SAM tidak dapat diakses, bahkan oleh administrator sekalipun, karena memang access control-nya tidak memungkinkan hal itu dilaksanakan. SAM adalah singkatan dari Security Accounts Manager.
* HKEY_LOCAL_MACHINE\HARDWARE, berguna untuk menyimpan konfigurasi perangkat keras di dalam sistem yang bersangkutan, seperti halnya konfigurasi sumber daya perangkat keras (interupsi perangkat keras, konfigurasi DMA, dan konfigurasi lainnya).
* HKEY_LOCAL_MACHINE\SECURITY, berguna untuk menyimpan konfigurasi keamanan Windows.
[sunting] HKEY_CURRENT_USER
Menyimpan informasi/data yang diasosiasikan dengan pengguna yang sedang masuk log. HKCU merupakan sebuah symbolic link ke kunci registry HKEY_USERS\. HKCU juga menyimpan informasi mengenai profil pengguna, konfigurasi perangkat lunak, dan preferensi mereka. Terdapat beberapa anak kunci, yakni:
* AppEvents, yang digunakan untuk menyimpan asosiasi antara suara dengan sebuah event. Disarankan untuk menggunakan Control Panel->Sound untuk mengubahnya, dan jangan menyunting secara langsung dari sini.
* Console, yang digunakan untuk menyimpan konfigurasi jendela Command Prompt (cmd.exe); contoh: lebarnya, tingginya, dan warnanya. Disarankan untuk menggunakan Command Prompt->Properties untuk mengubahnya, dan jangan menyunting langsung dari sini.
* Control Panel, digunakan untuk menyimpan konfigurasi screen saver, skema desktop, warna, keyboard, dan mouse. Selain itu juga dapat menyimpan informasi ketidakmampuan (accessibility) dan regional settings. Disarankan untuk menggunakan Control Panel->Display, Control Panel->Accessibility, dan Control Panel->Language and Regional Options untuk mengubahnya, dan jangan menyuntingnya secara langsung dari sini.
* Environment, mengandung definisi Environment Variable. Disarankan untuk menggunakan Control Panel->System->Advanced->Environment Variables untuk mengubahnya, dan jangan menyunting langsung dari sini.
* Keyboard Layout, menyimpan konfigurasi lay-out konfigurasi keyboard (contoh U.S. English, atau U.K. English, atau U.S. Dvorak, dan lain sebagainya).
* Network, menyimpan konfigurasi dan pemetaan drive yang berada di jaringan.
* Printers, menyimpan konfigurasi koneksi printer.
* Software, digunakan untuk menyimpan preferensi pengguna terhadap sebuah perangkat lunak tertentu.
* UNICODE
* Windows 3.1 Migration Status
[sunting] HKEY_USERS
Anak pohin HKEY_USERS mengandung beberapa anak yakni semua profil pengguna yang terdaftar di dalam sistem yang bersangkutan dan basis data registrasi objek OLE. Selain itu, anak pohon ini juga mengandung HKEY_USERS\.DEFAULT, yang dihubungkan dengan profil milik akun SYSTEM, yang merupakan profil yang digunakan oleh salah satu komponen Windows, WINLOGON.EXE, untuk menyimpan semua konfigurasi seperti halnya HKEY_CURRENT_USER, yakni bagaimana tampilan desktop, bagaimana konfigurasi perangkat keras dan lain-lain. Pengaturan yang diberlakukan terhadap HKU\.DEFAULT ini dapat menjadikan konfigurasi desktop dan lain-lain pada saat proses logon Windows akan berubah dari pengaturan default-nya.
Ketika seorang pengguna masuk log ke sebuah sistem untuk pertama kalinya, sementara akun miliknya tidak berupa roaming profile (yakni, sebuah profil pengguna yang disimpan di dalam tempat tersentralisasi di dalam domain controller), maka Windows akan membuatkan sebuah profil yang baru untuknya, yang dibuat berbasiskan pengaturan yang terdapat di dalam C:\Documents and Settings\Default User.
[sunting] HKEY_CURRENT_CONFIG
Anak pohon HKEY_CURRENT_CONFIG mengandung data konfigurasi untuk profil perangkat keras (hardware profile) yang sedang digunakan oleh Windows. HKCC tidak mengandung data apapun, karena memang anak pohon ini merupakan sebuah symbolic link terhadap HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Hardware Profiles\Current. Dengan demikian, dengan mengubah kunci tersebut atau mengubah HKCC, akan menghasilkan sesuatu yang sama.
Penggunaan profil perangkat keras mengizinkan administrator untuk mengonfigurasikan beberapa variasi dari pengaturan driver perangkat keras yang digunakan pada saat melakukan booting. Meskipun profil yang digunakan dapat berubah dari satu proses booting ke proses booting lainnya, aplikasi dapat merujuk ke anak pohon ini untuk mencari profil mana yang sedang dimuat oleh Windows. Pengaturan profil perangkat keras dapat dilakukan dengan Control Panel->System->Hardware->Hardware Profiles. Jika ada lebih dari satu profil perangkat keras, maka komponen Windows, yakni NTLDR, akan menanyakan kepada pengguna mengenai profil yang harus dimuat pada saat proses booting dilakukan.
[sunting] HKEY_CLASSES_ROOT
Anak pohon HKEY_CLASSES_ROOT mengandung dua jenis data, yakni:
* Data yang mengasosiasikan jenis berkas (dilihat dari ekstensinya atau kelasnya) dengan program yang dapat membukannya. Subkunci jenis berkas di dalam HKEY_CLASSES_ROOT memiliki nama yang sama dengan ekstensi nama berkas, seperti halnya .txt, .exe, dan lain-lain. Asosiasi jenis berkas ini disimpan di dalam registry, tapi disarankan untuk menggunakan Folder Options->File Types jika memang hendak mengubahnya.
* Data konfigurasi untuk objek-objek Object Linking and Embedding (OLE)/Component Object Model (COM).
Isi dari HKCR diambil dari dua sumber, yakni HKLM\SOFTWARE\Classes dan HKCU\SOFTWARE\Classes. Jika sebuah subkey atau entri terdapat di dalam salah satu dari dua lokasi tersebut, maka hal tersebut akan ditampilkan juga di dalam HKCR. Jika ada dua entri yang konflik di antara dua lokasi tersebut, hanya HKCU\SOFTWARE\Classes yang akan ditampilkan di dalam HKCR.
makasih atas infonya
BalasHapusPower supply hp