記憶體設定的一些有用技巧

2021-09-30 07:24:16 字數 546 閱讀 6106

向baoyg師兄學習,由衷敬佩。

1 核心中獲取模組變數的實體地址

x86_64平台 中,核心變數可以通過直接減乙個固定偏移(start_kernel_map = 0xffffffff80000000)來獲得實體地址;

但是module中 的變數還是需要查詢頁表才能獲得實體地址,可以通過呼叫lookup_address來獲得對應的pte

2 設定頁面為uncacheable

有兩種方法:

2.1 一種是使用mtrr。

使用者態使用方法: echo "base=0x??????? size=0x???? type=uncachable" >| /proc/mtrr

核心態使用方法: 增加 mtrr_reg=mtrr_add_page(pfn, pages, type); 登出 mtrr_del_page(mtrr_reg, pfn, pages);

2.2 使用頁面項中的pcd屬性(page cache disable)

在用lookup_address獲得pte後,可以直接修改該pte的屬性,加上_page_pcd

DJANGO ADMIN 一些有用的設定

先看看普通 註冊方法。開啟admin.py檔案,如下 from django.contrib import admin from blog.models import blog blog模型的管理器 class blogadmin admin.modeladmin list display id c...

VI的使用 一些有用的技巧

vi是linux中最常見的edit工具,對它的熟練點對你使用linux很有幫助 1 vi的簡單操作 移動 行首 0,移至行尾 向上 k,向下 j,向前 b,向後 w 刪除 x或nx 從游標所在的位置刪除乙個或n個字元 x或nx 刪除游標前的乙個或n個字元 dd 刪除游標所在的行 d 刪除從游標位置開...

Mac 開發的一些有用的設定

為了快速設定開發,做乙個備忘錄 等這個命令跑完後後,就可以直接在 terminal 中使用主要的命令,比如 make,gcc,clang,perl,svn,git,size,strip,strings,libtool,cpp 等等。iterm2官網 使用 homebrew 完成 zsh 和 zsh ...