README TOC updates

This commit is contained in:
Gaetan Longree 2018-05-16 08:39:58 +02:00
parent 55120ca8e0
commit e7b612825d

104
README.md
View File

@ -2,56 +2,56 @@
## Table of Contents ## Table of Contents
* [Introduction]() * [Introduction](https://github.com/cetic/unikernels#introduction)
* [Theoretical Concepts]() * [Theoretical Concepts](https://github.com/cetic/unikernels#theoretical-concepts)
* [Unikernel]() * [Unikernel](https://github.com/cetic/unikernels#unikernel)
* [Microkernel]() * [Microkernel](https://github.com/cetic/unikernels#microkernel)
* [Monolithic vs Microkernel]() * [Monolithic vs Microkernel](https://github.com/cetic/unikernels#monolithic-vs-microkernel)
* [Library Operating Systems]() * [Library Operating Systems](https://github.com/cetic/unikernels#library-operating-systems)
* [Unikernel]() * [Unikernel](https://github.com/cetic/unikernels#unikernel-1)
* [Hypervisors VS Linux Containers VS Unikernel]() * [Hypervisors VS Linux Containers VS Unikernel](https://github.com/cetic/unikernels#hypervisors-vs-linux-containers-vs-unikernel)
* [Security in Unikernel]() * [Security in Unikernel](https://github.com/cetic/unikernels#security-in-unikernel)
* [Immutable Infrastructures]() * [Immutable Infrastructures](https://github.com/cetic/unikernels#immutable-infrastructures)
* [State of the Art]() * [State of the Art](https://github.com/cetic/unikernels#state-of-the-art)
* [Existing Projects]() * [Existing Projects](https://github.com/cetic/unikernels#existing-projects)
* [MiniOS]() * [MiniOS](https://github.com/cetic/unikernels#minios)
* [ClickOS]() * [ClickOS](https://github.com/cetic/unikernels#clickos)
* [HalVM]() * [HalVM](https://github.com/cetic/unikernels#halvm)
* [IncludeOS]() * [IncludeOS](https://github.com/cetic/unikernels#includeos)
* [MirageOS]() * [MirageOS](https://github.com/cetic/unikernels#mirageos)
* [OSv]() * [OSv](https://github.com/cetic/unikernels#osv)
* [Rumprun]() * [Rumprun](https://github.com/cetic/unikernels#rumprun)
* [Unik]() * [Unik](https://github.com/cetic/unikernels#unik)
* [Clive]() * [Clive](https://github.com/cetic/unikernels#clive)
* [Drawbridge]() * [Drawbridge](https://github.com/cetic/unikernels#drawbridge)
* [GUK]() * [GUK](https://github.com/cetic/unikernels#guk)
* [LING]() * [LING](https://github.com/cetic/unikernels#ling)
* [Runtime.js]() * [Runtime.js](https://github.com/cetic/unikernels#runtimejs)
* [Comparing Solutions]() * [Comparing Solutions](https://github.com/cetic/unikernels#comparing-solutions)
* [Use Case]() * [Use Case](https://github.com/cetic/unikernels#use-case)
* [Proof of Concept]() * [Proof of Concept](https://github.com/cetic/unikernels#proof-of-concept)
* [Choice of Unikernel Solution]() * [Choice of Unikernel Solution](https://github.com/cetic/unikernels#choice-of-unikernel-solution)
* [Architecture of the Proof of Concept]() * [Architecture of the Proof of Concept](https://github.com/cetic/unikernels#architecture-of-the-proof-of-concept)
* [Creating the Unikernel Proof of Concept]() * [Creating the Unikernel Proof of Concept](https://github.com/cetic/unikernels#creating-the-unikernel-proof-of-concept)
* [IncludeOS build files in more details]() * [IncludeOS build files in more details](https://github.com/cetic/unikernels#includeos-build-files-in-more-details)
* [Creating the Container Counterpart]() * [Creating the Container Counterpart](https://github.com/cetic/unikernels#creating-the-container-counterpart)
* [Early Comparison]() * [Early Comparison](https://github.com/cetic/unikernels#early-comparison)
* [Resource Minimization]() * [Resource Minimization](https://github.com/cetic/unikernels#resource-minimization)
* [Benchmark & Results]() * [Benchmark & Results](https://github.com/cetic/unikernels#benchmarking--results)
* [Benchmark Environment]() * [Benchmark Environment](https://github.com/cetic/unikernels#benchmark-environment)
* [Benchmarking Methodology]() * [Benchmarking Methodology](https://github.com/cetic/unikernels#benchmarking-methodology)
* [Benchmarking tools used]() * [Benchmarking tools used](https://github.com/cetic/unikernels#benchmarking-tools-used)
* [Benchmark Results]() * [Benchmark Results](https://github.com/cetic/unikernels#benchmark-results)
* [DNS Server]() * [DNS Server](https://github.com/cetic/unikernels#dns-server)
* [Web Server]() * [Web Server](https://github.com/cetic/unikernels#web-server)
* [Boot Time]() * [Boot Time](https://github.com/cetic/unikernels#boot-time)
* [Benchmark Analysis]() * [Benchmark Analysis](https://github.com/cetic/unikernels#benchmark-analysis)
* [Project's Reproducibility]() * [Project's Reproducibility](https://github.com/cetic/unikernels#projects-reproducibility)
* [Deployment Scripts]() * [Deployment Scripts](https://github.com/cetic/unikernels#deployment-scripts)
* [Benchmarking Scripts]() * [Benchmarking Scripts](https://github.com/cetic/unikernels#benchmarking-scripts)
* [Improvements]() * [Improvements](https://github.com/cetic/unikernels#improvements)
* [Conclusion]() * [Conclusion](https://github.com/cetic/unikernels#conclusion)
* [Bibliography]() * [Bibliography](https://github.com/cetic/unikernels#bibliography)
## Introduction ## Introduction
@ -114,7 +114,7 @@ The application code in the user space relies on the operating system code in th
Unikernel applications, however, present a very different structure. As indicated by Figure 2, an application running in a unikernel does not present any division in its address space, which holds both the high-level application code and the lower level operating system routines. Unikernel applications, however, present a very different structure. As indicated by Figure 2, an application running in a unikernel does not present any division in its address space, which holds both the high-level application code and the lower level operating system routines.
![Application stack on a unikernel application](hhttps://raw.githubusercontent.com/cetic/unikernels/master/MEDIA/unikernel_application_stack.PNG "Application stack on a unikernel application. Source: (Pavlicek, 2017)") ![Application stack on a unikernel application](https://raw.githubusercontent.com/cetic/unikernels/master/MEDIA/unikernel_application_stack.PNG "Application stack on a unikernel application. Source: (Pavlicek, 2017)")
*Figure 2 Application stack on a unikernel application. Source: (Pavlicek, 2017)* *Figure 2 Application stack on a unikernel application. Source: (Pavlicek, 2017)*
@ -274,7 +274,7 @@ Once both infrastructures have been developed and are stable, a benchmark will b
## Proof of Concept ## Proof of Concept
As highlighted by the table in [Comparing Solutions](), numerous options are available depending on the programming language used for an application as well as the desired supporting platforms. Unfortunately, not all platforms are supported for all languages. As highlighted by the table in [Comparing Solutions](https://github.com/cetic/unikernels#comparing-solutions), numerous options are available depending on the programming language used for an application as well as the desired supporting platforms. Unfortunately, not all platforms are supported for all languages.
### Choice of Unikernel Solution ### Choice of Unikernel Solution