Sabtu, 30 Januari 2010

Registry mania : mengenal registry Windows

By Tri Amperiyanto


Registry akan mengendalikan hampir seluruh fungsi sistem operasi Windows.  Dan pengendalian ini diwujudkan dalam suatu informasi database yang dibuat dengan gaya hierarki.  Data-data yang tersebar akan dikumpulkan dan disusun dalam beberapa komponen yang sesuai, yang pada akhirnya akan  disatukan lagi sehingga membentuk suatu database yang ampuh.  Itulah desain dari registry. 
Dengan desain tersebut sistem operasi Windows dapat dikelola sesuai kebutuhan pemakainya. Dengan syarat pemakai tersebut piawai mengenal komponen-komponen kecil tersebut, sehingga dapat mengaturnya dengan tepat dengan kebutuhan. Berikut ini yang dipergunakan sebagai model adalah Registry Windows XP.  Pada windows 9X akan mempunyai struktur yang sedikit berbeda.




Pemakaian Registry

Pada saat melakukan inisialisasi awal sistem, Windows akan membaca beberapa konfigurasi dari Registry.
Seperti saat proses booting berlangsung, Windows membaca setingan yang menentukan device drivers apa saja yang diload,  dan setingan beberapa subsytem untuk mengkonfigurasikan dirinya dan mengendalikan perilaku sistem.
Pada saat login, beberapa komponen Windows akan membaca setingan setiap user yang ada,  network mapping, wallpaper, screen saver, perilaku menu dan penempatan icon.
Tidak hanya itu, data-data Registry akan dibaca jika diperlukan saat terjadi modifikasi data Registry.
Umumnya aplikasi akan memantau setingan konfigurasi Registry dan mengupdatenya bilamana terjadi perubahan seting.


Jenis-jenis data Registry

Registry  dapat terdiri dari beberapa jenis data, lebih kurang 15 jenis data.  Lihat tabel.
Namun demikian beberapa jenis data yang lazim dipakai adalah jenis : REG_DWORD berisi  value berisi data angka atau  data boolean , REG_BINARY – value dapat menyimpan angka lebih dari 32 bit, dan  REG_SZ – value menyimpan jenis data string.


Tabel Jenis data
-----------------------------------------------------------------------------------------------------------------
Jenis data                     Keterangan
-----------------------------------------------------------------------------------------------------------------
REG_NONE                                                   Tidak ada jenis
REG_SZ                                                          Fixed-length Unicode string.
REG_EXPAND_SZ                                         Variable-length Unicode string 
REG_BINARY                                                Arbitrary-length binary data.
REG_DWORD                                                32-bit number.
REG_DWORD_LITTLE_ENDIAN                 32-bit number, dengan  low byte sebagai awal.
REG_DWORD_BIG_ENDIAN                       32-bit number, dengan high byte sebagai awal.
REG_LINK                                                      Unicode symbolic link.
REG_MULTI_SZ                                             Array dari Unicode NULL-terminated strings.
REG_RESOURCE_LIST                                  Hardware resource description.
REG_FULL_RESOURCE_DESCRIPTOR       Hardware resource description.
REG_RESOURCE_REQUIREMENTS_LIST   Resource requirements.
REG_QWORD                                                  64-bit number.
REG_QWORD_LITTLE_ENDIAN                   64-bit number, dengan low byte sebagai  awal
REG_QWORD_BIG_ENDIAN                         64-bit number, dengan high byte sebagai awal.
------------------------------------------------------------------------------------------------------------------------

Struktur logik  Registry

Registry secara global terdiri dari lima kategori informasi.  Akan terdapat kunci-kunci induk (root keys) -   yang berfungsi layaknya kontainer data -  yang berisi data nama value (value name) dan nilainya (value). Juga dapat berisi kunci (key) atau kunci anak (subkey).  Dengan metode hirarki, registry dapat dikelola dengan baik. 
Bagi pemula, istilah key dan subkey ini mungkin membingungkan. Jika dianalogkan dengan pengelolaan folder pada disk, maka root keys sama root directory. Sedangkan keys sama dengan directory (folder) pada disk. Istilah subkey dapat dianggap seperti subdirectory (subfolder) pada disk.  Istilah Value dapat dipadankan dengan file yang ada pada disk. Demikian seterusnya, sehingga mebentuk suatu struktur hierarki. 

Umumnya root keys ini disebut dengan handle keys.  Disingkat dengan HKEY.  Tampilan dari program pengedit  registry standar milik microsoft (REGEDIT.EXE)  pun menampilkan dengan tanda HKEY. 
Struktur HKEY (root keys) jika dilihat dengan program Regedit (registry editor)  secara global adalah sebagai berikut  :


Gambar 1.   struktur Registry Windows XP

HKEY_CURRENT_USER
Merupakan root dari informasi konfigurasi untuk pemakai yang sedang aktif.  Folder pemakai,  screen colors, dan Control Panel akan disimpan disini.  Informasi disini direferensi sebagai suatu user profile.
Jadi ia merupakan hkey yang menyimpan seting individual dari setiap pemakai yang memakai sistem operasi Windows. Data-data bagian ini sebenarnya diambil dari HKEY_USER.

HKEY_USERS
Bagian ini menyimpan seluruh user profile yang ada berikut data-datanya.  Data yang disimpan berisi pengaturan tertentu yang dipakai oleh pemakai, seperti layout desktop, dan pengaturan aplikasi-aplikasi yang dipakainya.     Pada kenyataannya HKEY_CURRENT_USER akan merujuk pada HKEY_USERS ini untuk mendapatkan pemakai yang sedang aktif. 

HKEY_LOCAL_MACHINE
Berisi informasi konfigurasi yang ada pada komputer.  Dan ini berlaku bagi semua user. Hkey ini menyimpan settingan global dari komputer  yang terkait dengan perangkat keras dan perangkat lunak.

HKEY_CLASSES_ROOT
Kebanyakan informasi pada key ini, digunakan untuk memastikan pengaktifan program yang tepat saat pemakai membuka file dengan Windows Explorer.  Selain menyimpan seluruh asosiasi file, HKEY ini juga akan menyimpan jenis kelas spesial folder (CLSID). Isi dari hkey ini merujuk ke Hkey_local_machine\software\classes.

HKEY_CURRENT_CONFIG
Berisi informasi tentang profil perangkat keras terpasang yang digunakan oleh komputer lokal saat startup sistem.  Bagian in merujuk ke  HKEY_LOCAL_MACHINE\CONFIG.


Hives

Registry Hives, sering disingkat dengan istilah hive,  adalah suatu kumpulan key, subkey dan value pada registry, yang lazimnya disimpan dalam suatu set file pendukung.  File-file pendukung inilah yang sebenarnya membentuk struktur logik registry.
Saat proses boot berlangsung, Windows akan melakukan setup secara otomatis berdasarkan data dari file-file pendukung ini. 
Pemakai dapat mengambil file-file data ini secara manual, dengan memakai fasilitas import dari program Regedit (registry Editor).
Pada saat pemakai melakukan shutdown, Windows akan secara otomatis menulis data hive ke file-file pendukung ini. 
Seluruh file pendukung, kecuali HKEY_CURRENT_USER, berada di  folder Systemroot\System32\Config. Sedangkan file pendukung untuk HKEY_CURRENT_USER berada pada folder Systemroot\Profiles\Username.  Ekstension nama file dari file yang ada pada directory ini menunjukkan  isi data yang ada didalamnya.  
Beberapa file pendukung, akan mempunyai beberapa ekstension.
•    File pendukung tanpa extension, akan  menunjukkan kopian dari data hive secara komplit .
•    File pendukung dengan ekstension .alt.  merupakan backup copy dari hive HKEY_LOCAL_MACHINE\ SYSTEM.   Hanya key System  yang mempunyai ekstension .alt.
•    File pendukung dengan ekstension .log, adalah file pencatat transaksi,  yang mencatat perubahan pada key dan masukan value pada hive.
•    File pendukung dengan ekstension .sav,  merupakan kopian dari file hive yang dicari saat setup tahapan mode teks berakhir.

Daftar subkey dari standar hive  berikut file pendukungnya dapat dilihat pada tabel 2.

TABEL 2.  File pendukung pembentuk Hive
===========================================================================
    Subkey                         File Pendukung
===========================================================================
* HKEY_LOCAL_MACHINE\SAM           Sam, Sam.log, Sam.sav
* HKEY_LOCAL_MACHINE\Security          Security, Security.log, Security.sav
* HKEY_LOCAL_MACHINE\Software         Software, Software.log, Software.sav
* HKEY_LOCAL_MACHINE\System         System, System.alt, System.log, System.sav
* HKEY_CURRENT_CONFIG              System, System.alt, System.log, System.sav
* HKEY_CURRENT_USER                Ntuser.dat, Ntuser.dat.log
* HKEY_USERS\.DEFAULT             Default, Default.log, Default.sav
============================================================================

Setiap kali suatu user baru logon ke komputer, suatu hive baru akan dibuat untuk user tersebut dengan file tersendiri untuk  user profile.  Ini disebut dengan user profile hive.  Hive user berisi informasi registry spesifik yang menyimpan setingan aplikasi, desktop, environment, koneksi network dan printer untuk user tersebut.  User profile hives berada di key HKEY_USER.
Pada Windows XP, file pendukung untuk user profile hive bagi suatu pemakai tertentu akan disimpan  di :
HKEY_LOCAL_MACHINE\Software\Microsoft\WindowsNT\CurrentVersion\ProfileList\SID\ProfileImagePath
File tersebut diberi nama  Ntuser.dat. 
Dengan memahami informasi dasar  tentang Registry ini, diharapkan  pemakai dapat mengenal dan memanipulasi Registry secara lebih baik. Sehingga dapat mengendalikan Windows secara lebih  leluasa.

Tidak ada komentar:

Posting Komentar