Windows Registry là một thư mục lưu trữ cài đặt và tùy chọn cho hệ điều hành Microsoft Windows. Nó chứa thông tin và cài đặt cho tất cả phần cứng, phần mềm hệ điều hành, hầu hết phần mềm phi hệ điều hành, người dùng, tùy chọn của PC, v.v. Bài viết này nói về Cơ bản về Windows Registry.
Bất cứ khi nào người dùng thay đổi cài đặt Control Panel, liên kết file (file associations), chính sách hệ thống, hoặc hầu hết phần mềm đã cài đặt, các thay đổi được phản ánh và lưu trữ trong registry. Registry cũng cung cấp một cửa sổ vào hoạt động của kernel (nhân), lộ ra thông tin runtime như bộ đếm hiệu suất và phần cứng đang hoạt động.
Windows registry được giới thiệu để dọn dẹp sự bùng nổ của file INI theo chương trình (per-program INI files) trước đây được dùng để lưu cài đặt cấu hình cho chương trình Windows. Các file này 경향 rải rác khắp hệ thống, khiến chúng khó theo dõi.
Đọc thêm: Khi nào thay đổi Registry được lưu?
Cơ bản về Windows Registry
Registry bao gồm 5 Root Keys (Khóa gốc) sau:
- HKEY_CLASSES_ROOT
- HKEY_CURRENT_USER
- HKEY_LOCAL_MACHINE
- HKEY_USERS
- HKEY_CURRENT_CONFIG.
Root Keys chứa SubKeys (Khóa con). Subkeys có thể chứa subkeys của chúng nữa và chứa ít nhất một giá trị, gọi là Default Value (Giá trị mặc định). Một khóa với tất cả subkeys và giá trị của nó được gọi là Hive (Rổ).
Registry nằm trên Đĩa (Disk) trong thư mục system32/config dưới dạng một vài file Hive riêng biệt. Các file Hive này sau đó được đọc vào bộ nhớ mỗi lần Windows khởi động hoặc khi User đăng nhập. Để xem nơi Hives được lưu trữ vật lý, xem:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\HiveList
Bạn có thể đọc thêm về vị trí file Windows Registry.
Registry sử dụng các kiểu dữ liệu sau:
- REG_SZ: SZ chỉ chuỗi kết thúc bằng null (zero-terminated string). Đây là chuỗi độ dài biến đổi có thể chứa ký tự Unicode cũng như ANSI.
- REG_BINARY: Chứa dữ liệu nhị phân (binary data). 0 & 1.
- REG_DWORD: Kiểu dữ liệu này là Double Word (Từ kép). Là giá trị số 32-bit và có thể giữ bất kỳ số từ 0 đến 2^32.
- REG_QWORD: Kiểu dữ liệu này là Quadruple Word (Tử từ). Là giá trị số 64-bit.
- REG_MULTI_SZ: Kiểu dữ liệu này chứa một nhóm chuỗi kết thúc bằng null được gán cho một giá trị đơn.
- REG_EXPAND_SZ: Kiểu dữ liệu này là chuỗi kết thúc bằng null chứa tham chiếu chưa mở rộng đến biến môi trường, ví dụ, %SystemRoot%.
Registry Virtualization (Ảo hóa Registry) trong Windows
Bắt đầu từ Windows Vista, cùng với File Virtualization (Ảo hóa file), Registry cũng đã được ảo hóa, và do đó không giống Windows XP, không 경향 bị bloat (phình to). Điều tương tự đã tiếp tục trong Windows 7.
Ảo hóa về cơ bản nghĩa là ứng dụng bị ngăn chặn ghi vào System Folders (Thư mục hệ thống) của hệ thống file Windows VÀ CŨNG như 'machine wide keys' (khóa toàn máy) trong registry. Tuy nhiên, điều này không ngăn tài khoản người dùng tiêu chuẩn cài đặt hoặc chạy ứng dụng.
Trong Windows Vista và mới hơn, UAC (User Account Control) sử dụng tính năng Registry Virtualization, để chuyển hướng các nỗ lực ghi vào subkeys của
HKEY_LOCAL_MACHINE\Software
Khi một ứng dụng cố gắng ghi vào hive này, Vista thay vào đó, ghi nó vào vị trí theo user,
HKEY_CLASSES_ROOT\VirtualStore\Machine\Software
Thao tác này được thực hiện thầm lặng. Không ai biết điều này đang xảy ra!
Đây, tóm lại, là Registry Virtualization, và nó là một tính năng bảo mật hữu ích.
Ngẫu nhiên, cũng phải nhắc đến công nghệ mới khác nằm dưới Windows Vista và mới hơn: Kernel Transaction Manager (Trình quản lý giao dịch nhân), cho phép Transactional Registry (Registry giao dịch). Tính năng này cho phép một loại rollback (quay lui) Registry. Nhưng nó không được triển khai trong Registry Editor. Thay vào đó, tính năng này được thiết kế cho nhà phát triển cần tạo ứng dụng mạnh mẽ dùng xử lý giao dịch.
Đọc thêm: Cách tạo Registry Key trong Windows.
Registry Editor (Trình chỉnh sửa Registry)
Công cụ chính trong Windows 10/8/7/Vista để làm việc trực tiếp với registry là Registry Editor. Để truy cập, chỉ cần gõ regedit vào Thanh tìm kiếm Menu Start của Vista và nhấn Enter!
Bạn phải cực kỳ cẩn thận khi làm việc với Registry, vì không có lời nhắc xác nhận hoặc nhấp OK để lưu. Thay đổi được kết hợp trực tiếp.
Bạn có thể đọc thêm về Mẹo & Tính năng Windows Registry Editor. Người dùng Windows 10 v1703 có thể dùng Address Bar (Thanh địa chỉ) để nhảy trực tiếp đến bất kỳ registry key nào.
Cần đề cập cụ thể đến hive
HKEY_LOCAL_MACHINE\System\CurrentControlSet
vì các khóa trong hive cụ thể này rất thiết yếu để Windows khởi động, nên bản sao lưu của nó được duy trì, bạn có thể khôi phục khi cần, đơn giản bằng cách boot vào Safe Mode (Chế độ an toàn) và chọn Last Known Good Configuration (Cấu hình tốt cuối cùng được biết).
Bạn có thể muốn đọc các bài này nữa:
- Cách sửa Registry bị hỏng hoặc hư hỏng
- Registry Tweaks cho Start Menu và TaskBar
- Sao lưu và khôi phục registry
- Giám sát thay đổi Registry.
- Cách mở nhiều instance của Registry
- Emoji đang được dùng trong đường dẫn Windows Registry; Bạn có biết!?