Studying Operating System Using Docker |
Shivani Dubey
Intern, University of the Ryukyus
|
Why Docker?
The modern platform for high velocity innovation. Docker container is not any specific platform. It can run on any computer, on any infrastructure and in any cloud.
What is xv6?
xv6 is modern reimplementation of Sixth Edition Unix in ANSI C.
We implemented the concept of scheduling processes by their priorities.
int get_highest_priority_proc(void)
{
int highest_priority;
int pid = 0;
int hpid = -1;
int rpid = 0;
highest_priority=100;
struct proc *p;
for(p = ptable.proc; p < &ptable.proc[NPROC]; p++, pid++){
if(p->state != RUNNABLE) {
continue;
}
rpid = pid;
if (highest_priority > p->priority) {
highest_priority=p->priority;
hpid = pid;
}
}
return hpid > 0?hpid:rpid;
}
Docker environment poses some problems, some of which are difficult to comprehend.