msc-thesis/src/docs/parts/research/research.tex

51 lines
1.4 KiB
TeX

% // vim: set ft=tex:
\chapter{Topic Refinement}
\section{Static Checks}
* TODO: Difference between static- and runtime checks
\subsection{Define Additional Anlyse Rules}
* Example: TLB needs to be reset on Task Change
\subsection{Static Variable Declaration}
\section{Virtual Memory Management In Hard- and Software}
* Architecture choice: x86\_64
* CPU supports
* TODO: Is the static analysis of hardware specific assembly code possible and useful at all?
* LLVM knows about the target and can potentially give hints about hardware specific instructions
* TODO: On which level can abstraction in Rust code start?
\subsection{Interrupts}
* https://software.intel.com/sites/default/files/managed/39/c5/325462-sdm-vol-1-2abcd-3abcd.pdf p. 2848
\section{Testing}
* How effective are tests?
* Are they necessary in addition to static checks?
\chapter{Using Rust Within Non-Rust Operating Systems}
\section{Linux Kernel Modules}
* TODO: describe Difficulties with Macros used Within Kernel
\chapter{OS Designs Based On Rust}
Thread Libraries:
* https://github.com/edef1c/libfringe
\section{Blog OS}
\section{intermezzOS}
\subsection{Memory Management}
* Which language items help with managing memory?
* How generic can the memory allocators be written?
Guarantees to be statically checked:
* Prevent access to unmapped physical memory
* Prevent duplicates in page tables
\section{Reddox}
\section{Tock}