annotate slide.md @ 1:be770be61183

Updated
author shivanidubey
date Fri, 21 Jun 2019 15:28:51 +0900
parents 845dadcd3a85
children 54dd75a92d04
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
1
be770be61183 Updated
shivanidubey
parents: 0
diff changeset
1 title: Studying Operating System Using Docker
0
845dadcd3a85 slide.html
shivanidubey
parents:
diff changeset
2 author: Shivani Dubey
1
be770be61183 Updated
shivanidubey
parents: 0
diff changeset
3 profile: Intern, University of the Ryukyus
0
845dadcd3a85 slide.html
shivanidubey
parents:
diff changeset
4
845dadcd3a85 slide.html
shivanidubey
parents:
diff changeset
5 # Introduction
845dadcd3a85 slide.html
shivanidubey
parents:
diff changeset
6
845dadcd3a85 slide.html
shivanidubey
parents:
diff changeset
7
845dadcd3a85 slide.html
shivanidubey
parents:
diff changeset
8 - Docker
845dadcd3a85 slide.html
shivanidubey
parents:
diff changeset
9 - xv6
845dadcd3a85 slide.html
shivanidubey
parents:
diff changeset
10
845dadcd3a85 slide.html
shivanidubey
parents:
diff changeset
11 Why Docker?
845dadcd3a85 slide.html
shivanidubey
parents:
diff changeset
12
1
be770be61183 Updated
shivanidubey
parents: 0
diff changeset
13
be770be61183 Updated
shivanidubey
parents: 0
diff changeset
14 The modern platform for high velocity innovation.
be770be61183 Updated
shivanidubey
parents: 0
diff changeset
15 Docker container is not any specific platform. It can run on any computer, on any infrastructure and in any cloud.
be770be61183 Updated
shivanidubey
parents: 0
diff changeset
16
be770be61183 Updated
shivanidubey
parents: 0
diff changeset
17 ## Features of Docker
0
845dadcd3a85 slide.html
shivanidubey
parents:
diff changeset
18
1
be770be61183 Updated
shivanidubey
parents: 0
diff changeset
19 - Easy and Faster Configuration
be770be61183 Updated
shivanidubey
parents: 0
diff changeset
20 - Increases productivity
be770be61183 Updated
shivanidubey
parents: 0
diff changeset
21 - Application Isolation
be770be61183 Updated
shivanidubey
parents: 0
diff changeset
22 - Swarm
be770be61183 Updated
shivanidubey
parents: 0
diff changeset
23 - Routing Mesh
be770be61183 Updated
shivanidubey
parents: 0
diff changeset
24 - Services
be770be61183 Updated
shivanidubey
parents: 0
diff changeset
25 - Security Management
0
845dadcd3a85 slide.html
shivanidubey
parents:
diff changeset
26
845dadcd3a85 slide.html
shivanidubey
parents:
diff changeset
27 What is xv6?
845dadcd3a85 slide.html
shivanidubey
parents:
diff changeset
28
1
be770be61183 Updated
shivanidubey
parents: 0
diff changeset
29
0
845dadcd3a85 slide.html
shivanidubey
parents:
diff changeset
30 xv6 is modern reimplementation of Sixth Edition Unix in ANSI C.
845dadcd3a85 slide.html
shivanidubey
parents:
diff changeset
31
845dadcd3a85 slide.html
shivanidubey
parents:
diff changeset
32 ## Scheduling processes by their priorities
845dadcd3a85 slide.html
shivanidubey
parents:
diff changeset
33
1
be770be61183 Updated
shivanidubey
parents: 0
diff changeset
34
be770be61183 Updated
shivanidubey
parents: 0
diff changeset
35
be770be61183 Updated
shivanidubey
parents: 0
diff changeset
36 We implemented the concept of scheduling processes by their priorities.
be770be61183 Updated
shivanidubey
parents: 0
diff changeset
37
be770be61183 Updated
shivanidubey
parents: 0
diff changeset
38 ```c
be770be61183 Updated
shivanidubey
parents: 0
diff changeset
39 int get_highest_priority_proc(void)
be770be61183 Updated
shivanidubey
parents: 0
diff changeset
40 {
be770be61183 Updated
shivanidubey
parents: 0
diff changeset
41 int highest_priority;
be770be61183 Updated
shivanidubey
parents: 0
diff changeset
42 int pid = 0;
be770be61183 Updated
shivanidubey
parents: 0
diff changeset
43 int hpid = -1;
be770be61183 Updated
shivanidubey
parents: 0
diff changeset
44 int rpid = 0;
0
845dadcd3a85 slide.html
shivanidubey
parents:
diff changeset
45
1
be770be61183 Updated
shivanidubey
parents: 0
diff changeset
46 highest_priority=100;
be770be61183 Updated
shivanidubey
parents: 0
diff changeset
47 struct proc *p;
be770be61183 Updated
shivanidubey
parents: 0
diff changeset
48 for(p = ptable.proc; p < &ptable.proc[NPROC]; p++, pid++){
be770be61183 Updated
shivanidubey
parents: 0
diff changeset
49 if(p->state != RUNNABLE) {
be770be61183 Updated
shivanidubey
parents: 0
diff changeset
50 continue;
be770be61183 Updated
shivanidubey
parents: 0
diff changeset
51 }
be770be61183 Updated
shivanidubey
parents: 0
diff changeset
52 rpid = pid;
be770be61183 Updated
shivanidubey
parents: 0
diff changeset
53 if (highest_priority > p->priority) {
be770be61183 Updated
shivanidubey
parents: 0
diff changeset
54 highest_priority=p->priority;
be770be61183 Updated
shivanidubey
parents: 0
diff changeset
55 hpid = pid;
be770be61183 Updated
shivanidubey
parents: 0
diff changeset
56 }
be770be61183 Updated
shivanidubey
parents: 0
diff changeset
57 }
be770be61183 Updated
shivanidubey
parents: 0
diff changeset
58 return hpid > 0?hpid:rpid;
be770be61183 Updated
shivanidubey
parents: 0
diff changeset
59 }
be770be61183 Updated
shivanidubey
parents: 0
diff changeset
60 ```
be770be61183 Updated
shivanidubey
parents: 0
diff changeset
61
be770be61183 Updated
shivanidubey
parents: 0
diff changeset
62
be770be61183 Updated
shivanidubey
parents: 0
diff changeset
63 ## Docker Limitations
be770be61183 Updated
shivanidubey
parents: 0
diff changeset
64
be770be61183 Updated
shivanidubey
parents: 0
diff changeset
65
be770be61183 Updated
shivanidubey
parents: 0
diff changeset
66
be770be61183 Updated
shivanidubey
parents: 0
diff changeset
67 Docker environment poses some problems, some of which are difficult to comprehend.