首页 > 代码库 > 查找idt table 所對應的page table in Linux

查找idt table 所對應的page table in Linux

#include <linux/kernel.h>#include <linux/module.h>#include <linux/delay.h>#include <linux/string.h>#include <linux/jump_label.h>#include <linux/types.h>#include <asm/pgtable.h>#include <asm/pgtable_64.h>#include <asm/tlbflush.h>#include <asm/current.h>#include <linux/fs.h>#include <asm/fixmap.h>#include <asm/desc_defs.h>MODULE_LICENSE("GPL");struct desc_ptr idt;int init_module(void){        asm volatile ("sidt %0" : "=m" (idt));        unsigned int level;        pte_t *pte;        pte = lookup_address( idt.address, &level);        printk("level:%d\n", level);        printk("pte_val(*pte):%lx\n", pte_val(*pte));        printk("pte_val(*pte)& _PAGE_PRESENT:%d\n", pte_val(*pte)& _PAGE_PRESENT);        return 0;}void cleanup_module(void){        printk("clean_module : fixmap\n");}