Index: doc/theses/thierry_delisle_PhD/thesis/text/core.tex
===================================================================
--- doc/theses/thierry_delisle_PhD/thesis/text/core.tex	(revision 86c1f1c39dec46dad2d3904ab9144ce3de4805ab)
+++ doc/theses/thierry_delisle_PhD/thesis/text/core.tex	(revision 86c1f1c39dec46dad2d3904ab9144ce3de4805ab)
@@ -0,0 +1,46 @@
+\chapter{Scheduling Core}\label{core}
+
+This chapter addresses the need of scheduling on a somewhat ideal scenario
+
+\section{Existing Schedulers}
+\subsection{Feedback Scheduling}
+
+\subsection{Priority Scheduling}\label{priority}
+
+\subsection{Work Stealing}
+
+\section{Design}
+While avoiding the pitfalls of Feedback Scheduling is fairly easy, scheduling does not innately require feedback, avoiding prioritization of \glspl{thrd} is more difficult because of implicitly priorities, see Subsection~\ref{priority}.
+
+\subsection{Sharding}
+
+\begin{figure}
+	\begin{center}
+		\input{base.pstex_t}
+	\end{center}
+	\caption{Relaxed FIFO list at the base of the scheduler: an array of strictly FIFO lists.
+	The timestamp is in all nodes and cell arrays.}
+	\label{fig:base}
+\end{figure}
+
+\subsection{Finding threads}
+Once threads have been distributed onto multiple queues, indentifying which queues are empty and which aren't can become a problem.
+Indeed, if the number of \glspl{thrd} does not far exceed the number of queues, it is probable that several of these queues are empty.
+Figure~\ref{fig:empty} shows an example with 2 \glspl{thrd} running on 8 queues, where the chances of getting an empty queue is 75\% per pick, meaning two random picks yield a \gls{thrd} only half the time.
+This can lead to performance problems since picks that do not yield a \gls{thrd} are not useful and do not necessarily help make more informed guesses.
+
+Solutions to this problem can take many forms, but they ultimately all have to encode where the threads are in some form. My results show that the density and locality of this encoding is generally the dominating factor in these scheme.
+
+\paragraph{Dense Information}
+
+
+
+
+
+\begin{figure}
+	\begin{center}
+		\input{empty.pstex_t}
+	\end{center}
+	\caption{``More empty'' state of the queue: the array contains many empty cells.}
+	\label{fig:empty}
+\end{figure}
Index: doc/theses/thierry_delisle_PhD/thesis/text/front.tex
===================================================================
--- doc/theses/thierry_delisle_PhD/thesis/text/front.tex	(revision 86c1f1c39dec46dad2d3904ab9144ce3de4805ab)
+++ doc/theses/thierry_delisle_PhD/thesis/text/front.tex	(revision 86c1f1c39dec46dad2d3904ab9144ce3de4805ab)
@@ -0,0 +1,93 @@
+\frontmatter
+
+%======================================================================
+%   Title (required)
+%======================================================================
+\title{Title}
+\begin{titlepage}
+	\clearpage\maketitle
+\end{titlepage}
+
+\addtocounter{page}{1}
+
+%======================================================================
+%  Examining commitee membership (required)
+%======================================================================
+\clearpage
+I hereby declare that I am the sole author of this thesis. This is a true copy of the thesis, including any required final revisions, as accepted by my examiners.
+
+I understand that my thesis may be made electronically available to the public.
+
+%======================================================================
+%  Statement of contributions (if applicable)
+%======================================================================
+% For a thesis that is not a sole-authored document, the University requires that the student has made the major contribution to the work, to the satisfaction of the examination committee. The student will include a Statement of contributions in the thesis.
+
+% Not applicable
+
+
+%======================================================================
+%   Abstract (required)
+%======================================================================
+\clearpage
+\begin{center}\textbf{Abstract}\end{center}
+% \begin{abstract}
+	Abstract
+% \end{abstract}
+
+%======================================================================
+%  Acknowledgements (required)
+%======================================================================
+\clearpage
+\begin{center}\textbf{Acknowledgements}\end{center}
+
+
+%======================================================================
+%  Dedication (optional)
+%======================================================================
+% Not dedicated
+
+%======================================================================
+%  Table of contents (required)
+%======================================================================
+\tableofcontents
+
+%======================================================================
+%  List of figures (if applicable)
+%======================================================================
+% Each figure in the text must be numbered; if the title/caption of the figure cannot fit on the same page as the figure, the title/caption may appear on the previous page facing the figure.
+
+% applicable
+
+%======================================================================
+%  List of tables	(if applicable)
+%======================================================================
+% Each table in the text must be numbered; if the title/caption of the table cannot fit on the same page as the table, the title/caption may appear on the previous page facing the table.
+
+% applicable
+
+%======================================================================
+%  List of illustrations (if applicable)
+%======================================================================
+% Each illustration in the text must be numbered; if the title/caption of the illustration cannot fit on the same page as the illustration, the title/caption may appear on the previous page facing the illustration.
+
+% applicable
+
+%======================================================================
+%  List of abbreviations (if applicable)
+%======================================================================
+% not applicable
+
+%======================================================================
+%  List of symbols (if applicable)
+%======================================================================
+% not applicable
+
+%======================================================================
+%  Graphic or quote (if applicable)
+%======================================================================
+% Students may wish to enhance their thesis with either a graphic or meaningful quote.  These pages, if applicable, must appear as the last page of the front matter, immediately before the main body of the thesis.
+
+% not applicable
+
+\mainmatter
Index: doc/theses/thierry_delisle_PhD/thesis/text/intro.tex
===================================================================
--- doc/theses/thierry_delisle_PhD/thesis/text/intro.tex	(revision 86c1f1c39dec46dad2d3904ab9144ce3de4805ab)
+++ doc/theses/thierry_delisle_PhD/thesis/text/intro.tex	(revision 86c1f1c39dec46dad2d3904ab9144ce3de4805ab)
@@ -0,0 +1,1 @@
+\chapter{Introduction}
Index: doc/theses/thierry_delisle_PhD/thesis/text/io.tex
===================================================================
--- doc/theses/thierry_delisle_PhD/thesis/text/io.tex	(revision 86c1f1c39dec46dad2d3904ab9144ce3de4805ab)
+++ doc/theses/thierry_delisle_PhD/thesis/text/io.tex	(revision 86c1f1c39dec46dad2d3904ab9144ce3de4805ab)
@@ -0,0 +1,19 @@
+\chapter{I/O}
+
+\section{Existing options}
+
+\subsection{\texttt{epoll}, \texttt{poll} and \texttt{select}}
+
+\subsection{Linux's AIO}
+
+\subsection{\texttt{io\_uring}}
+
+\subsection{Extra Kernel Threads}
+
+\subsection{Discussion}
+
+
+\section{Event-Engine}
+
+
+\section{Interface}
Index: doc/theses/thierry_delisle_PhD/thesis/text/practice.tex
===================================================================
--- doc/theses/thierry_delisle_PhD/thesis/text/practice.tex	(revision 86c1f1c39dec46dad2d3904ab9144ce3de4805ab)
+++ doc/theses/thierry_delisle_PhD/thesis/text/practice.tex	(revision 86c1f1c39dec46dad2d3904ab9144ce3de4805ab)
@@ -0,0 +1,13 @@
+\chapter{Scheduling in practice}\label{practice}
+The scheduling algorithm discribed in Chapter~\ref{core} addresses scheduling in a stable state.
+However, it does not address problems that occur when the system changes state.
+Indeed the \CFA runtime, supports expanding and shrinking
+
+the number of KTHREAD\_place
+
+, both manually and, to some extent automatically.
+This entails that the scheduling algorithm must support these transitions.
+
+\section{Resizing}
+
+\section{Idle-Sleep}
Index: doc/theses/thierry_delisle_PhD/thesis/text/runtime.tex
===================================================================
--- doc/theses/thierry_delisle_PhD/thesis/text/runtime.tex	(revision 86c1f1c39dec46dad2d3904ab9144ce3de4805ab)
+++ doc/theses/thierry_delisle_PhD/thesis/text/runtime.tex	(revision 86c1f1c39dec46dad2d3904ab9144ce3de4805ab)
@@ -0,0 +1,7 @@
+\chapter{\CFA Runtime}
+
+\section{M:N Threading}
+
+\section{Clusters}
+
+\section{Interoperating with \texttt{C}}
