Subversion Repositories HelenOS-doc

Compare Revisions

Ignore whitespace Rev 8 → Rev 9

/design/trunk/src/ch_userspace.xml
0,0 → 1,7
<?xml version="1.0" encoding="UTF-8"?>
 
<chapter>
<title>User-space</title>
 
<para></para>
</chapter>
/design/trunk/src/ch_intro.xml
0,0 → 1,27
<?xml version="1.0" encoding="UTF-8"?>
 
 
<chapter id="intro">
 
<title>Introduction</title>
<graphic align="center" fileref="images/helenos.gif" />
 
<para>The HelenOS project is an effort to develop an easily portable,
light but durable operating system. HelenOS supports SMP, multitasking
and multithreading on both 32-bit and 64-bit, little-endian and
big-endian, processor architectures, among wich are AMD64/EM64T
(x86-64), IA-32, IA-64 (Itanium), 32-bit MIPS, 32-bit PowerPC and SPARC
V9.</para>
 
<para>This manual should help you understanding design concepts of
different part of the operating system.</para>
 
<para>In case you are interested in our project or have any questions
about it, feel free to subscribe to our <ulink
url="http://www.helenos.eu/?reason=list">mailing list</ulink>. We are
looking for people to join our team or to merely try out our system and
become our beta testers.</para>
</chapter>
 
 
/design/trunk/src/ch_ipc.xml
0,0 → 1,8
<?xml version="1.0" encoding="UTF-8"?>
 
<chapter>
<title>IPC</title>
 
<para></para>
</chapter>
 
/design/trunk/src/index.xml
1,177 → 1,40
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN"
"http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd">
"http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd" [
<!ENTITY chintro SYSTEM "ch_intro.xml">
<!ENTITY charcho SYSTEM "ch_arch_overview.xml">
<!ENTITY chsched SYSTEM "ch_scheduling.xml">
<!ENTITY chsynch SYSTEM "ch_synchronization.xml">
<!ENTITY chmemmg SYSTEM "ch_memory_management.xml">
<!ENTITY chipcom SYSTEM "ch_ipc.xml">
<!ENTITY chhware SYSTEM "ch_hardware.xml">
<!ENTITY chuspac SYSTEM "ch_userspace.xml">
]>
 
<book>
<title>HelenOS Design Documentation</title>
<bookinfo>
<title>HelenOS Design Documentation</title>
</bookinfo>
 
<chapter>
<!-- Infroduction -->
&chintro;
<title>Introduction</title>
<graphic align="center" fileref="images/helenos.gif" />
 
<para>The HelenOS project is an effort to develop an easily portable,
light but durable operating system. HelenOS supports SMP, multitasking
and multithreading on both 32-bit and 64-bit, little-endian and
big-endian, processor architectures, among wich are AMD64/EM64T
(x86-64), IA-32, IA-64 (Itanium), 32-bit MIPS, 32-bit PowerPC and SPARC
V9.</para>
 
<para>This manual should help you understanding design concepts of
different part of the operating system.</para>
 
<para>In case you are interested in our project or have any questions
about it, feel free to subscribe to our <ulink
url="http://www.helenos.eu/?reason=list">mailing list</ulink>. We are
looking for people to join our team or to merely try out our system and
become our beta testers.</para>
</chapter>
 
<chapter>
<title>Architecture overview</title>
<para>Couple of words about microkernel concept etc </para>
</chapter>
 
<chapter>
<title>Scheduling</title>
<section>
<title>Basic terms</title>
<para>Explain Task, Thread etc</para>
</section>
 
<section>
<title>Context switching</title>
 
<para>Something about context. Probably arch specific context notes.</para>
</section>
<section>
<title>Kernel clock</title>
<para>timer interrupt handling, slices, timeouts, delays</para>
</section>
 
<section>
<title>Scheduler</title>
<para>How scheduler designed and how it works.</para>
</section>
</chapter>
 
<chapter>
<title>Synchronization</title>
 
<section>
<title>Introduction. Concept.</title>
 
<para>Couple of words about global conception of sychronization</para>
</section>
<section>
<title>Active kernel synchronization. Spinlock.</title>
<para>Spinlocks explanation. Arch specific notes.</para>
</section>
<section>
<title>Passive kernel synchronization</title>
 
<section>
<title>Mutex</title>
 
<para>Mutex explanations</para>
</section>
<section>
<title>Semaphore</title>
 
<para>Semaphore explanations</para>
</section>
 
<section>
<title>Read/Write Locks</title>
 
<para>RWLocks explanation</para>
</section>
<section>
<title>Wait queues</title>
<para>Wait queue explanation</para>
</section>
<section>
<title>Conditional variables</title>
<para>Condvars explanation</para>
</section>
</section>
<section>
<title>Userspace synchronization. Futex.</title>
 
<para>Idea. Futex explanation.</para>
</section>
</chapter>
 
<chapter>
<title>Memory management</title>
 
<section>
<title>Virtual memory management</title>
 
<para></para>
</section>
 
<section>
<title>Physical memory management</title>
 
<para></para>
</section>
 
<section>
<title>Kernel allocators</title>
 
<section>
<title>Buddy allocator</title>
 
<para>Physical memory allocation is handled by buddy allocator.</para>
</section>
 
<section>
<title>Slab allocator</title>
 
<para></para>
</section>
</section>
 
<section>
<title>Memory sharing</title>
 
<para></para>
</section>
</chapter>
 
<chapter>
<title>Hardware handling. Device drivers.</title>
 
<para></para>
</chapter>
 
<chapter>
<title>IPC</title>
 
<para></para>
</chapter>
 
<chapter>
<title>User-space</title>
 
<para></para>
</chapter>
<!-- Arch overview -->
&charcho;
<!-- Scheduling -->
&chsched;
<!-- Synchronization -->
&chsynch;
<!-- Memory management -->
&chmemmg;
<!-- Hardware handling -->
&chhware;
<!-- User space -->
&chuspac;
</book>
/design/trunk/src/ch_hardware.xml
0,0 → 1,8
<?xml version="1.0" encoding="UTF-8"?>
 
 
<chapter>
<title>Hardware handling. Device drivers.</title>
 
<para></para>
</chapter>
/design/trunk/src/ch_synchronization.xml
0,0 → 1,64
<?xml version="1.0" encoding="UTF-8"?>
 
 
<chapter>
<title>Synchronization</title>
 
<section>
<title>Introduction. Concept.</title>
 
<para>Couple of words about global conception of sychronization</para>
</section>
 
 
<section>
<title>Active kernel synchronization. Spinlock.</title>
<para>Spinlocks explanation. Arch specific notes.</para>
</section>
 
 
 
<section>
<title>Passive kernel synchronization</title>
 
<section>
<title>Mutex</title>
 
<para>Mutex explanations</para>
</section>
 
<section>
<title>Semaphore</title>
 
<para>Semaphore explanations</para>
</section>
 
<section>
<title>Read/Write Locks</title>
 
<para>RWLocks explanation</para>
</section>
 
<section>
<title>Wait queues</title>
 
<para>Wait queue explanation</para>
</section>
 
 
<section>
<title>Conditional variables</title>
 
<para>Condvars explanation</para>
</section>
</section>
 
 
<section>
<title>Userspace synchronization. Futex.</title>
 
<para>Idea. Futex explanation.</para>
</section>
 
</chapter>
 
/design/trunk/src/ch_arch_overview.xml
0,0 → 1,7
<?xml version="1.0" encoding="UTF-8"?>
 
<chapter id="arch_overview">
<title>Architecture overview</title>
<para>Couple of words about microkernel concept etc </para>
</chapter>
 
/design/trunk/src/ch_memory_management.xml
0,0 → 1,48
<?xml version="1.0" encoding="UTF-8"?>
 
 
<chapter>
<title>Memory management</title>
 
<section>
<title>Virtual memory management</title>
 
<para></para>
</section>
 
<section>
<title>Physical memory management</title>
 
<para></para>
</section>
 
<section>
<title>Kernel allocators</title>
 
 
 
<section>
<title>Buddy allocator</title>
 
<para>Physical memory allocation is handled by buddy allocator.</para>
</section>
 
<section>
<title>Slab allocator</title>
</section>
</section>
 
 
<section>
<title>Memory sharing</title>
 
<para></para>
</section>
 
 
 
 
</chapter>
 
 
 
/design/trunk/src/ch_scheduling.xml
0,0 → 1,27
<?xml version="1.0" encoding="UTF-8"?>
 
<chapter>
<title>Scheduling</title>
<section>
<title>Basic terms</title>
<para>Explain Task, Thread etc</para>
</section>
 
<section>
<title>Context switching</title>
 
<para>Something about context. Probably arch specific context notes.</para>
</section>
 
<section>
<title>Kernel clock</title>
<para>timer interrupt handling, slices, timeouts, delays</para>
</section>
 
<section>
<title>Scheduler</title>
<para>How scheduler designed and how it works.</para>
</section>
 
 
</chapter>