Moved operating systems into introduction.
[cascardo/kernel/old_slides/.git] / 00.intro / 00.intro.xml
index d479935..4aa5ff2 100644 (file)
@@ -73,4 +73,78 @@ license and send it to mainline. And maintain it even after it's there.
 </para>
 </foil>
 
+<!--
+<foil>
+TODO: talk about linux versions, we have a very good odt for that
+</foil>
+-->
+
+<foil>
+<title>Outdated book</title>
+<para>
+Since Linux is in constant change, the book is already outdated. It's almost
+five years old.
+</para>
+<para>
+One example of outdated interface is the workqueue, whose updated functions we
+will see later.
+</para>
+</foil>
+
+<foil>
+<title>Modules</title>
+<para>
+Linux is modular. Its modules may be inserted and removed at will, making it
+very flexible. Modules may be device drivers and may work as many other
+funciotns as well, like filesystems, network protocols, power management
+policies, etc.
+</para>
+</foil>
+
+<foil>
+<title>Mechanism and Policy</title>
+<para>
+Drivers should provide mechanism. As in many other cases, splitting mechanism
+and policy is desirable. In the case of kernel code, this is no exception.
+Kernel space code and user space code are good split points to provide that
+separation.
+</para>
+</foil>
+
+<foil>
+<title>Recommendations</title>
+<itemizedlist>
+<listitem>
+Check every possible error.
+</listitem>
+<listitem>
+Do not trust received data nor do send unzeroed data.
+</listitem>
+<listitem>
+Use a machine you can spare.
+</listitem>
+</itemizedlist>
+</foil>
+
+<foil>
+<title>Operating Systems</title>
+<itemizedlist>
+<listitem>
+<emphasis>Process</emphasis>Management
+</listitem>
+<listitem>
+<emphasis>Memory</emphasis>Management
+</listitem>
+<listitem>
+Input/Output/Hardware Management
+</listitem>
+<listitem>
+Filesystems
+</listitem>
+<listitem>
+Network
+</listitem>
+</itemizedlist>
+</foil>
+
 </slides>