Thursday, August 29, 2013

Aug 29th

CS 3810
CS 6810

Lunch with Jitju

Xcap review


1. Where do the capacities exist?

a capability is a record in a hypervisor protected data structure.
We call this data structure the capability address space, or the CSpace.
each VM has a private CSpace, and all the code inside it has the same rights.

<Implementation>
struct capability
{
uint32_t magic;
};
struct cap_space
{
int num_caps;
struct capability *caps;
};
struct domain{
struct cap_space *cap_space; <-
}

2. what the "grant" really means and how is it implemented? --> OK
내가 어떤 capability를 가지고 있으면,
상대방에게도 그 capability를 준다.
(하나라도 못주면 fail?, fail이면 그동안 준건 어떻게 해? 그런 정보가 없네)

if ( (ret = cap_grant(to,list,size)) != 0 )
{
TT_ERR("cap_grant failed when called from xc_cap_grant().\n");
rcu_unlock_domain(to);
return ret;

spin_unlock 안하고 return한다.
--> 안톤에게 메일 씀

내일은 다시 XCap proposal로 돌아가서
big picture를 그릴 수 있도록 해보고,
모르는 개념이 있으면 관련 논문을 찾아보는 과정을 거친다.

No comments:

Post a Comment