![240](https://upload.jianshu.io/users/upload_avatars/22427588/22b760d5-cf8d-49b0-ab47-81ec3502d13a.jpg?imageMogr2/auto-orient/strip|imageView2/1/w/240/h/240)
Page fault發(fā)生時(shí)的map流程 Guest在發(fā)生異常的時(shí)候,會(huì)觸發(fā)vm_exit從guest切換到host,xvisor作為當(dāng)前的hos...
Guest創(chuàng)建 Vmm_guest結(jié)構(gòu)體 首先來看guest結(jié)構(gòu)體的內(nèi)容距糖,其中apace是用來管理物理內(nèi)存的桑滩,設(shè)備樹的綁定椭盏,gpa->hpa的對(duì)...
內(nèi)存虛擬化概述 對(duì)于非虛擬化的操作系統(tǒng)來說年栓,物理內(nèi)存需要有兩個(gè)特性:1.物理地址從0開始 2.物理地址是連續(xù)的纺腊。指令對(duì)于內(nèi)存的訪問是通過處理器來...
寄存器satp 操作系統(tǒng)分為用戶模式和內(nèi)核模式畔师,riscv架構(gòu)也分為特權(quán)架構(gòu)和非特權(quán)架構(gòu)娶靡。特權(quán)架構(gòu)指的是因?yàn)槎〞r(shí)器中斷,異常和系統(tǒng)調(diào)用等情況看锉,進(jìn)...
在Android中有跟多無符號(hào)數(shù)的使用并涉及到有符號(hào)數(shù)到無符號(hào)數(shù)的轉(zhuǎn)換塔鳍,在沒有認(rèn)真研究之前,還以為無符號(hào)數(shù)就是把符號(hào)位去了呻此,但實(shí)踐下來并非如此轮纫,...
之前一直使用的是linux終端的gdb,因?yàn)檎{(diào)試的對(duì)象是riscv焚鲜,而我們使用的環(huán)境是x86的掌唾,所以必須用emulator。目前的工作是對(duì)ass...
以為是重載忿磅,其實(shí)是默認(rèn)函數(shù)參數(shù) 在閱讀Android源碼的時(shí)候糯彬,碰到了函數(shù)調(diào)用的參數(shù)個(gè)數(shù)與函數(shù)定義時(shí)對(duì)不上的情況,一開始以為是重載葱她,但后來發(fā)現(xiàn)是...
c/c++是系統(tǒng)編程語言撩扒,處于運(yùn)行效率的考慮,提供了指針這樣的機(jī)制可以直接操作內(nèi)存吨些。而指針本身其實(shí)是虛擬內(nèi)容的地址搓谆,比如在一個(gè)32位的操作系統(tǒng)上...
添加打印 在選擇開機(jī)模式的時(shí)候,想要統(tǒng)計(jì)不同的方式被調(diào)用的次數(shù)豪墅,那么就需要通過打log的方式對(duì)各種模式進(jìn)行統(tǒng)計(jì) 編譯執(zhí)行到機(jī)器碼打印文件路徑:....