摘要: 先看相关的变量的意思:enum km_type {D(0) KM_BOUNCE_READ,D(1) KM_SKB_SUNRPC_DATA,D(2) KM_SKB_DATA_SOFTIRQ,D(3) KM_USER0,D(4) KM_USER1,D(5) KM_BIO_SRC_IRQ,D(6) KM_BIO_DST_IRQ,D(7) KM_PTE0,D(8) KM_PTE1,D(9) KM_IRQ0,D(10) KM_IRQ1,D(11) KM_SOFTIRQ0,D(12) KM_SOFTIRQ1,D(13) KM_TYPE_NR};还有一个是:enum fixed_addresses { FI 阅读全文
posted @ 2011-08-10 14:39 GG大婶 阅读(555) 评论(0) 推荐(0) 编辑
摘要: 使用kmap函数将高端页帧长期映射到内核地址空间中:/* 参数page是要映射的页 */void *kmap(struct page *page){ /* 判断是不是高端内存 */ if (!PageHighMem(page)) return page_address(page); might_sleep(); /* 建立映射 */ return kmap_high(page);}page_address根据page返回对应的线性地址,这个函数就是区分处理了一下高端内存和非高端内存:/* 取得对应的线性地址 */void *page_address(struct page *page){ un 阅读全文
posted @ 2011-08-10 10:32 GG大婶 阅读(1148) 评论(0) 推荐(0) 编辑