锘??xml version="1.0" encoding="utf-8" standalone="yes"?>2022中文字字幕久亚洲,日韩一卡2卡3卡4卡新区亚洲 ,综合一区自拍亚洲综合图区http://www.tkk7.com/fjzag/zh-cnSun, 06 Jul 2025 07:51:34 GMTSun, 06 Jul 2025 07:51:34 GMT60濡備綍鑷繁鍐欎竴涓狦DB榪滅▼璋冭瘯鐨勬湇鍔$http://www.tkk7.com/fjzag/articles/419464.htmlcsgeek?csgeek?Tue, 04 Nov 2014 00:21:00 GMThttp://www.tkk7.com/fjzag/articles/419464.htmlhttp://www.tkk7.com/fjzag/comments/419464.htmlhttp://www.tkk7.com/fjzag/articles/419464.html#Feedback0http://www.tkk7.com/fjzag/comments/commentRss/419464.htmlhttp://www.tkk7.com/fjzag/services/trackbacks/419464.html 鍐嶅垎浜竴綃囪嚜宸卞啓鐨勬湁鍏矴DB榪滅▼璋冭瘯搴曞眰鏈哄埗鐨勬枃绔犮傛枃涓弿榪頒簡濡備綍鑷繁鍔ㄦ墜鍐欎竴涓狦DB榪滅▼璋冭瘯鐨勬湇鍔$銆傚師鏂囬摼鎺ュ湪榪欙細
http://people.cs.pitt.edu/~anz28/papers/2013_kitten_gdb_tr.pdf

csgeek? 2014-11-04 08:21 鍙戣〃璇勮
]]>
铏氭嫙鏈轟腑鐨凥yercallhttp://www.tkk7.com/fjzag/articles/419463.htmlcsgeek?csgeek?Mon, 03 Nov 2014 23:59:00 GMThttp://www.tkk7.com/fjzag/articles/419463.htmlhttp://www.tkk7.com/fjzag/comments/419463.htmlhttp://www.tkk7.com/fjzag/articles/419463.html#Feedback0http://www.tkk7.com/fjzag/comments/commentRss/419463.htmlhttp://www.tkk7.com/fjzag/services/trackbacks/419463.html

What is a Hypercall?

Hypercall is an explicit call from Virtual Machine (VM) into the underlying VM Moniter (VMM). That is, a hypercall issued from the guest will cause a VM exit from the guest into the VMM. In this sense, it is kinda like syscall, which will result in a trap from userspace into  kernel space.  Thus, hypercall can serve as a communication approach between the guest and the underlying VMM. The guest can issue hypercalls via VMMCALL instruction on AMD SVM machine or VMCALL on Intel VMX machine.


Adding a Hypercall in Palacios

Palacios maintains a global hypercall map, which maintains the mapping between the unique hypercall number and the hypercall handler. (Each hypercall is associated with a unique hypercall number.). Therefore, to add a hypercal in Palacios, you need to:

  • Implement a handler for the hypercall.
  • Assign a unique hypercall number for the hypercall.
  • Register the hypercall handler and the hypercall number with Palacios.

Sample Example:

static int handle_hcall(struct guest_info * info, uint_t hcall_id, void * priv_data){
    unsigned 
long param1 = *(unsigned long *&info->vm_regs.rbx;
    unsigned 
long param2 = *(unsigned long *&info->vm_regs.rcx;
    unsigned 
long param3 = *(unsigned long *&info->vm_regs.rdx;
    V3_Print(
"param1=%lu param2=%lu param3=%lu\n", param1, parma2, param3);
    info
->vm_regs.rax = 0//return value of the hypercall
}

v3_register_hypercall(vm, HCALL_EXAMPLE_ID, handle_hcall, NULL);

Note: The hypercall management APIs in Palacios are contained in palacios/include/palacios/vmm_hypercall.h and palacios/src/palacios/vmm_hypercall.c.


Issuing Hypercalls from Palacios Guest

“Up to four arguments may be passed in rbx, rcx, rdx, and rsi respectively. The hypercall number should be placed in rax and the return value will be placed in rax.  No other registers will be clobbered unless explicitly stated by the particular hypercall.” (quoted from [1])

For exmaple, on a AMD SVM machine, a hypercall with 3 parameters can be issued via the following code:

#define VMMCALL ".byte 0x0F,0x01,0xD9\r\n" //VMMCALL instruction binary code

int hcall3(unsigned long hcall_id, unsigned long param1, unsigned long param2, unsigned long param3){
     
int ret;
     __asm__ 
volatile(
         VMMCALL
             : “
=a”(ret)
             : “a”(hcall_id), “b”(param1), “c”(param2), “d”(param3)
    );
    
return ret;
}


References:

[1] Linux KVM Hypercall



csgeek? 2014-11-04 07:59 鍙戣〃璇勮
]]>
Linux kernel profiling with hardware performance countershttp://www.tkk7.com/fjzag/articles/411356.htmlcsgeek?csgeek?Sat, 22 Mar 2014 01:06:00 GMThttp://www.tkk7.com/fjzag/articles/411356.htmlhttp://www.tkk7.com/fjzag/comments/411356.htmlhttp://www.tkk7.com/fjzag/articles/411356.html#Feedback0http://www.tkk7.com/fjzag/comments/commentRss/411356.htmlhttp://www.tkk7.com/fjzag/services/trackbacks/411356.html鍑犵瘒鍏充簬閫氳繃hard performance counter鏉ョ洃鎺х▼搴忥紙ipc, page faults, cache misses)錛?br />perf: https://perf.wiki.kernel.org/index.php/Tutorial
perf: linux鍐呮牳abi: http://web.eece.maine.edu/~vweaver/projects/perf_events/perf_event_open.html
perf: perf stat鐨勪竴涓柊鏇懼弬鏁版敮鎸佸懆鏈熸х殑鎵撳嵃鍑篶ounter鍐呭: https://patchwork.kernel.org/patch/2004891/
鏈夊叧performance hardware counter鐨勮櫄鎷熷寲: http://web.eece.maine.edu/~vweaver/projects/perf_events/virtualization.html
鍙︿竴涓湁鍏硃erformance profiling鐨勫父鐢ㄥ伐鍏?PAPI: http://icl.cs.utk.edu/projects/papi/wiki/Main_Page

csgeek? 2014-03-22 09:06 鍙戣〃璇勮
]]>
Linux涓氳繃/proc/stat絳夋枃浠惰綆桟pu浣跨敤鐜?/title><link>http://www.tkk7.com/fjzag/articles/317773.html</link><dc:creator>csgeek?</dc:creator><author>csgeek?</author><pubDate>Thu, 08 Apr 2010 14:57:00 GMT</pubDate><guid>http://www.tkk7.com/fjzag/articles/317773.html</guid><wfw:comment>http://www.tkk7.com/fjzag/comments/317773.html</wfw:comment><comments>http://www.tkk7.com/fjzag/articles/317773.html#Feedback</comments><slash:comments>20</slash:comments><wfw:commentRss>http://www.tkk7.com/fjzag/comments/commentRss/317773.html</wfw:commentRss><trackback:ping>http://www.tkk7.com/fjzag/services/trackbacks/317773.html</trackback:ping><description><![CDATA[     鎽樿: Normal 0 7.8 紓?0 2 false false false EN-US ZH-CN X-NONE ...  <a href='http://www.tkk7.com/fjzag/articles/317773.html'>闃呰鍏ㄦ枃</a><img src ="http://www.tkk7.com/fjzag/aggbug/317773.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.tkk7.com/fjzag/" target="_blank">csgeek?</a> 2010-04-08 22:57 <a href="http://www.tkk7.com/fjzag/articles/317773.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>鏈夊叧Windows騫沖彴涓婥PU浣跨敤鐜囩殑璁$畻http://www.tkk7.com/fjzag/articles/317774.htmlcsgeek?csgeek?Thu, 08 Apr 2010 14:57:00 GMThttp://www.tkk7.com/fjzag/articles/317774.htmlhttp://www.tkk7.com/fjzag/comments/317774.htmlhttp://www.tkk7.com/fjzag/articles/317774.html#Feedback0http://www.tkk7.com/fjzag/comments/commentRss/317774.htmlhttp://www.tkk7.com/fjzag/services/trackbacks/317774.html闃呰鍏ㄦ枃

csgeek? 2010-04-08 22:57 鍙戣〃璇勮
]]>
主站蜘蛛池模板: 国产一区二区免费| 亚洲日本久久一区二区va| 羞羞视频免费网站日本| 18禁无遮挡无码网站免费| 亚洲三级视频在线| 男女超爽刺激视频免费播放| 亚洲视频国产精品| 香蕉97超级碰碰碰免费公| 亚洲另类古典武侠| 成年女人毛片免费视频| 亚洲日韩AV一区二区三区四区| 国语成本人片免费av无码| 亚洲国产日韩a在线播放| 免费a级毛片无码av| 一个人看的免费视频www在线高清动漫 | 国产国拍精品亚洲AV片| 国内永久免费crm系统z在线| 亚洲av永久无码精品网站| 精品无码无人网站免费视频| 最新国产成人亚洲精品影院| 日韩高清免费观看| 久久er国产精品免费观看8| 亚洲男人天堂av| 插B内射18免费视频| 国产亚洲蜜芽精品久久| 亚洲色偷偷综合亚洲AVYP| h视频在线观看免费网站| 亚洲AV永久无码精品网站在线观看| 亚洲精品国产va在线观看蜜芽| 在线观看免费黄网站| 亚洲大香人伊一本线| 免费在线观看a级毛片| 无码人妻一区二区三区免费n鬼沢| 亚洲国产精品久久网午夜| 免费一级毛片正在播放| 久久久久国产精品免费免费不卡| 亚洲一卡2卡3卡4卡5卡6卡| 国产偷窥女洗浴在线观看亚洲| 91久久青青草原线免费| 极品色天使在线婷婷天堂亚洲| 亚洲精品自在在线观看|