Bagikan melalui


Menggunakan Perintah Debugger AMLI

Perintah berikut dapat dikeluarkan dari prompt AMLI Debugger.

Kategori Umum Tindakan Tertentu Perintah Debugger AMLI

Mengontrol Debugger

Lanjutkan Eksekusi dari Break ke Kernel Debugger

gq

Mengontrol Eksekusi AML

Jalankan Langkah Metode Atas Jejak Kode AML Ke dalam Kode AML

jalankanpt

Mengontrol Pengaturan Mode Pelacakan

Mengonfigurasi Mode Pelacakan

jejak

Memberitahukan sebuah Objek Namespace

Notifikasi Objek Namespace

Beri tahu

Menampilkan Tabel Jumlah Objek

Tampilkan Tabel Jumlah Objek

arus searah

Mengakses Memori

Tampilkan Data Tampilkan Byte Data Tampilkan Kata Data Tampilkan Data DWORD Menampilkan Memori Edit String Data

ddbdwdddae

Mengakses Port

Baca Byte dari Port Baca Word dari Port Baca DWORD dari Port Tulis Byte ke Port Tulis Word ke Port Tulis DWORD ke Port

iiwidoowod

Menampilkan Bantuan

Tampilkan Bantuan

?

Mengontrol Debugger

Perintah ini keluar dari Debugger AMLI. Perintah g akan melanjutkan eksekusi normal komputer target, dan perintah q akan membekukan komputer target dan masuk ke debugger kernel.

g

q

Mengontrol Eksekusi AML

Perintah ini memungkinkan Anda menjalankan atau menelusuri metode AML. Perintah jalankan memulai eksekusi pada titik tertentu. Perintah p dan t memungkinkan Anda untuk menelusuri satu instruksi sekaligus. Jika panggilan fungsi ditemui, perintah p memperlakukan fungsi sebagai satu langkah, sementara perintah t melacak ke fungsi baru satu instruksi pada satu waktu.

jalankanMethodName[ArgumentList]

jalankanCodeAddress[ArgumentList]

p

t

MethodName
Menentukan jalur lengkap dan nama metode. Eksekusi akan dimulai di awal lokasi memori metode ini.

CodeAddress
Menentukan alamat di mana eksekusi akan dimulai.

ArgumentList
Menentukan daftar argumen yang akan diteruskan ke metode . Setiap argumen harus berupa bilangan bulat. Beberapa argumen harus dipisahkan dengan spasi.

Mengontrol Pengaturan Mode Pelacakan

Perintah pelacakan mengontrol pengaturan mode jejak penerjemah AML. Jika perintah ini digunakan tanpa parameter, pengaturan mode pelacakan saat ini ditampilkan.

trace [trigon|trigoff] [level=Level] [add=TPStrings] [zap=TPNumbers]

trigon
Mengaktifkan mode pemicu jejak.

trigoff
Menonaktifkan mode pelacakan pemicu.

Tingkat
Menentukan pengaturan baru untuk tingkat pelacakan.

TPStrings
Menentukan satu atau beberapa titik pemicu yang akan ditambahkan. Setiap titik pemicu ditentukan berdasarkan nama. Beberapa string pemicu harus dipisahkan dengan tanda koma.

TPNumbers
Menentukan satu atau beberapa titik pemicu yang akan dihapus. Setiap titik pemicu ditentukan oleh angka. Beberapa angka titik pemicu harus dipisahkan dengan koma. Untuk melihat daftar angka titik pemicu, gunakan perintah pelacakan tanpa parameter.

Memberi tahu Objek Namespace

Perintah pemberitahuan mengirimkan pemberitahuan ke objek namespace ACPI. Pemberitahuan akan ditempatkan dalam antrean objek yang ditentukan.

beri tahuNilai ObjectName

beri tahuNilai ObjectAddress

ObjectName
Menentukan jalur namespace lengkap objek yang akan diberi tahu.

ObjectAddress
Menentukan alamat objek yang akan diberi tahu.

Nilai
Menentukan nilai pemberitahuan.

Menampilkan Tabel Jumlah Objek

Perintah dc menampilkan tabel jumlah objek memori.

arus searah

Mengakses Memori

Perintah akses memori memungkinkan Anda membaca dan menulis ke memori. Saat membaca memori, Anda dapat memilih ukuran unit memori dengan perintah db, dw, dd , atau da . Perintah d sederhana menampilkan memori di unit yang terakhir dipilih. Jika ini adalah perintah tampilan pertama yang digunakan, unit byte digunakan.

Jika tidak ada alamat atau metode yang ditentukan, tampilan akan dimulai di mana perintah tampilan sebelumnya berakhir.

Perintah ini memiliki efek yang sama dengan perintah memori debugger kernel standar; mereka diduplikasi dalam AMLI Debugger untuk akses mudah.

d[b|w|d|a] [ [l=Length] [Method| [%%]Alamat] ]

e [%%]Daftar Alamat Data

b
Menentukan bahwa data harus ditampilkan dalam unit byte.

w
Menentukan bahwa data harus ditampilkan dalam unit word (16-bit).

d
Menentukan bahwa data harus ditampilkan dalam unit DWORD (32-bit).

sebuah
Menentukan bahwa data harus ditampilkan sebagai string. Data ditampilkan sebagai karakter ASCII. Tampilan berakhir ketika karakter NULL dibaca, atau ketika Karakter panjang telah ditampilkan.

Panjangnya
Menentukan jumlah byte yang akan ditampilkan. Panjang harus berupa angka heksadesimal (tanpa awalan 0x ). Jika Panjang dihilangkan, ukuran tampilan default 0x80 byte.

Metode
Menentukan jalur lengkap dan nama metode. Tampilan akan dimulai di awal lokasi memori metode ini.

Alamat
Menentukan alamat memori tempat membaca atau menulis akan dimulai. Jika alamat diawali dengan dua persen tanda (%%), alamat tersebut ditafsirkan sebagai alamat fisik. Jika tidak, itu ditafsirkan sebagai alamat virtual.

DataList
Menentukan data yang akan ditulis ke memori. Setiap item dalam daftar dapat berupa byte heksadesimal atau string. Saat string digunakan, ia harus diapit dalam tanda kutip. Beberapa item harus dipisahkan oleh spasi.

Mengakses Port

Perintah port memungkinkan Anda mengirim output atau menerima input dari port data. Perintah i dan o mentransfer byte tunggal, perintah iw dan ow mentransfer kata -kata (16 bit), dan perintah id dan od mentransfer DWORDS (32 bit).

Perintah ini memiliki efek yang sama dengan perintah port debugger kernel standar; mereka diduplikasi dalam AMLI Debugger untuk akses mudah.

iPort

iwPort

idPort

oPortDataForPort

owPortDataForPort

odPortDataForPort

Pelabuhan
Menentukan alamat port yang akan diakses. Ukuran port harus sesuai dengan perintah yang dipilih.

DataForPort
Menentukan data yang akan ditulis ke port. Ukuran data ini harus cocok dengan perintah yang dipilih.

Menampilkan Bantuan

Perintah ini menampilkan teks bantuan untuk perintah AMLI Debugger.

? [ Perintah]

Perintah
Menentukan perintah untuk menampilkan bantuan. Jika ini dihilangkan, daftar semua perintah AMLI Debugger dan ekstensi AMLI Debugger ditampilkan.

Lihat Juga

The AMLI Debugger