[CS] Intro to OS

This commit is contained in:
janishutz committed 2026-09-20 16:08:49 +02:00
1 parent 5cf2a63e73
commit 6e464edd36
4 files changed
+16

No files matched your search

+6
View File
@@ -0,0 +1,6 @@
\subsection{Introduction}
This course uses the xv6 operating system, developed at MIT, for teaching how operating systems work.
This is a cleaned up, simplified version of UNIX v6. Since it is a very simple, yet (basic) feature-complete operating system,
reading its source code is much more straight forward than reading say Linux's source code, which at the time of writing is approximately 40 million lines of code.
You can find the entire source code of the operating system \hlurl{https://github.com}{here} % TODO: Input link here
+7
View File
@@ -0,0 +1,7 @@
\subsection{Bootstrapping}
Bootstrapping is the first operation any operating system performs.
This typically involves setting up the stack in assembly for the respective language, then intializing devices, etc. in a higher level language, such as \texttt{C} or \texttt{Rust}.
Contrary to popular believe, setting up the stack can be achieved in just a few instructions and the rest is mostly ``box-standard'' \texttt{C} code.
Of course, you still have to read lots of manuals to figure out how each device needs to be initialized.
At this point, you also set up Virtual Memory and all the memory structures needed to operate.
+2
View File
@@ -0,0 +1,2 @@
\section{Operating Systems}
\input{parts/00_os/00_intro.tex}