# Progress + Plan
## Weeks plan
> Some kind of story points will be used for planning weeks
> One week is
> - 2 points - not really productive or there is a lot of other work
> - 3 points - productive week or not much external load
> - 4 points - really need to hurry up
```
0 | 19.10 | ST: 1. Architecture review + MT: 5. What we want to show with our protype of Phantom on Genode [1]. (Midterm results) [1 SP left]
1 | 26.10 | MT: 3. LR: Why Phantom is relevant
2 | 2.11 | MT: 4. LR: Comparison of systems by corresponding attributes
3 | 9.11 | MT: 1. CODE: Start VM on Genode
4 | 16.11 |
5 | 23.11 |
6 | 30.11 |
7 | 7.12 |
8 | 14.12 | (Fall term results (LR + prototype))
9 | 21.12 |
10 | 28.12 |
11 | 4.1 |
12 | 11.1 |
13 | 18.1 |
14 | 25.1 |
15 | 1.2 | (Midterm + Something that can be shown)
16 | 8.2 |
17 | 15.2 |
18 | 22.2 |
19 | 1.3 |
20 | 8.3 |
21 | 15.3 | (Spring midterm: Methodology + Implementation chapters)
22 | 22.3 |
23 | 29.3 |
24 | 5.4 |
25 | 12.4 |
26 | 19.4 |
27 | 26.4 |
28 | 3.5 |
29 | 10.5 |
30 | 17.5 | (Spring term results)
31 | 24.5 |
32 | 31.5 |
33 | 7.6 | (Final submission)
34 | 14.6 | (Presentation)
35 | 21.6 |
```
## Work
### Main tasks
1. [ ] CODE: Start VM on Genode
1. [x] Start VM on the host system
2. [x] Setup Genode
3. [ ] Setup Phantom as ported app [1]
4. [ ] Attempt to compile and run VM [1]
2. [x] LR: Brief introduction
1. [x] Overview of persistence concept
2. [x] Overview of known persistent OSs
3. [x] Compare with PhantomOS
4. [x] Compile everything and polish
3. [ ] LR: Why Phantom is relevant [3]
1. [ ] Why previous systems failed
2. [ ] How virtual machines can help
3. [ ] Examples of persistence in LVMs and VMs
- [ ] VMWare (VM)
- [ ] PJama (LVM)
4. [ ] Why it was difficult for Java and we need other VM
5. [ ] Benefits of having persistent VM implemented in OS
6. [ ] What options of LVM do we have
- [ ] PVM
- [ ] WebAssembly
7. [ ] Compile everything and polish
4. [ ] LR: Comparison of systems by corresponding attributes [3]
1. [ ] Operating systems (KeyKOS, EROS, CapROS, Coyotos, Grasshoper)
- [ ] All 18 attributes
2. [ ] Other systems (PJama, e.t.c.)
- [ ] Find more suitable systems
- [ ] All 18 attributes
3. [ ] Derive points that may be applicable for Phantom
4. [ ] Compile everything and polish
5. [ ] TODO : What we want to show with our protype of Phantom on Genode [1]
> - Review old concepts with fresh and modern look and ideas
> - Phantom is changing direction towards IoT instead of general purpose
> - Make Phantom more suitable for real life applications
> - Enhance security, stability
> - Adjust old ideas to the new software requirements and hardware
1. [ ] What is the purpose of Phantom
2. [ ] What can we gain by porting to Genode
3. [ ] It is possible and what changes to Genode are required (persistent on transient kernel)
5. [ ] Intro
1. TODO : Notes in notebook
## Side tasks
1. [ ] Architecture review [2]
1. [x] Derive QAS
2. [x] Build schemes
3. [ ] Compile and polish
4. [ ] Close all TODOs
5. [ ] Present to Zavalishin
2. [ ] WebAssembly
1. [x] Produce a proposal
2. [x] Send a proposal
3. [ ] Analyze and compare bytecodes of WASM and PVM [2]