<?xml version="1.0" encoding="UTF-8"?>
<!-- generator="FeedCreator 1.8" -->
<?xml-stylesheet href="https://wiki.minix3.org/lib/exe/css.php?s=feed" type="text/css"?>
<rdf:RDF
    xmlns="http://purl.org/rss/1.0/"
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
    xmlns:dc="http://purl.org/dc/elements/1.1/">
    <channel rdf:about="https://wiki.minix3.org/feed.php">
        <title>Wiki developersguide</title>
        <description></description>
        <link>https://wiki.minix3.org/</link>
        <image rdf:resource="https://wiki.minix3.org/lib/tpl/minix3d/images/favicon.ico" />
       <dc:date>2026-04-30T11:08:00+0200</dc:date>
        <items>
            <rdf:Seq>
                <rdf:li rdf:resource="https://wiki.minix3.org/doku.php?id=developersguide:assemblylanguageprogramming&amp;rev=1416226933&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.minix3.org/doku.php?id=developersguide:bbcapes&amp;rev=1416226913&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.minix3.org/doku.php?id=developersguide:blockprotocol&amp;rev=1460978790&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.minix3.org/doku.php?id=developersguide:bulkpkgsrc&amp;rev=1415713928&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.minix3.org/doku.php?id=developersguide:codingstyle&amp;rev=1415809075&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.minix3.org/doku.php?id=developersguide:commitmessages&amp;rev=1426674617&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.minix3.org/doku.php?id=developersguide:contributions&amp;rev=1415713928&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.minix3.org/doku.php?id=developersguide:cpureferencemanuals&amp;rev=1477504807&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.minix3.org/doku.php?id=developersguide:crosscompiling&amp;rev=1618202589&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.minix3.org/doku.php?id=developersguide:datalinkprotocol&amp;rev=1415713928&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.minix3.org/doku.php?id=developersguide:datastore&amp;rev=1415744105&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.minix3.org/doku.php?id=developersguide:debugging&amp;rev=1415888431&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.minix3.org/doku.php?id=developersguide:driverprogramming&amp;rev=1644501496&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.minix3.org/doku.php?id=developersguide:earlyboot&amp;rev=1415897045&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.minix3.org/doku.php?id=developersguide:eclipsetutorial&amp;rev=1436164272&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.minix3.org/doku.php?id=developersguide:edidreading&amp;rev=1415888742&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.minix3.org/doku.php?id=developersguide:frompowerontologinprompt&amp;rev=1415713928&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.minix3.org/doku.php?id=developersguide:gcov&amp;rev=1474807684&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.minix3.org/doku.php?id=developersguide:i2cdevinterface&amp;rev=1415713928&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.minix3.org/doku.php?id=developersguide:i2cdriverprogramming&amp;rev=1625929277&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.minix3.org/doku.php?id=developersguide:i2cinternals&amp;rev=1415895618&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.minix3.org/doku.php?id=developersguide:i2cprotocol&amp;rev=1415713928&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.minix3.org/doku.php?id=developersguide:kernelapi&amp;rev=1467978643&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.minix3.org/doku.php?id=developersguide:learningassemblyinminix&amp;rev=1416226924&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.minix3.org/doku.php?id=developersguide:libblockdriver&amp;rev=1415803819&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.minix3.org/doku.php?id=developersguide:liveupdate&amp;rev=1644702172&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.minix3.org/doku.php?id=developersguide:llvmbitcode&amp;rev=1418306238&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.minix3.org/doku.php?id=developersguide:magicdebugkeys&amp;rev=1437254221&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.minix3.org/doku.php?id=developersguide:memorygrants&amp;rev=1453729951&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.minix3.org/doku.php?id=developersguide:messagepassing&amp;rev=1453928590&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.minix3.org/doku.php?id=developersguide:minixapi&amp;rev=1415812069&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.minix3.org/doku.php?id=developersguide:minixonarm&amp;rev=1625923794&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.minix3.org/doku.php?id=developersguide:minixonlinaroqemuarm&amp;rev=1460287386&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.minix3.org/doku.php?id=developersguide:netbooting&amp;rev=1415713928&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.minix3.org/doku.php?id=developersguide:netbootingarm&amp;rev=1415713928&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.minix3.org/doku.php?id=developersguide:newkernelcall&amp;rev=1739557898&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.minix3.org/doku.php?id=developersguide:obsoletetools&amp;rev=1415811554&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.minix3.org/doku.php?id=developersguide:overviewofminixarchitecture&amp;rev=1430164721&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.minix3.org/doku.php?id=developersguide:overviewofminixdrivers&amp;rev=1429909890&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.minix3.org/doku.php?id=developersguide:overviewofminixservers&amp;rev=1490182504&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.minix3.org/doku.php?id=developersguide:overviewofminixuserland&amp;rev=1429999583&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.minix3.org/doku.php?id=developersguide:packagingreleases&amp;rev=1415804606&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.minix3.org/doku.php?id=developersguide:performancemeasurement&amp;rev=1415713928&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.minix3.org/doku.php?id=developersguide:pkgsrcguide&amp;rev=1625923577&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.minix3.org/doku.php?id=developersguide:pkgsrconarm&amp;rev=1455043781&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.minix3.org/doku.php?id=developersguide:pkgsrcstatus&amp;rev=1490537623&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.minix3.org/doku.php?id=developersguide:pkgsrcupstreaming&amp;rev=1515467647&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.minix3.org/doku.php?id=developersguide:portingguide&amp;rev=1425836584&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.minix3.org/doku.php?id=developersguide:portingnetbsdstepbystep&amp;rev=1455289572&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.minix3.org/doku.php?id=developersguide:portingnetbsduserland&amp;rev=1540763559&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.minix3.org/doku.php?id=developersguide:posixandminix&amp;rev=1415807737&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.minix3.org/doku.php?id=developersguide:programmingminix&amp;rev=1437251143&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.minix3.org/doku.php?id=developersguide:rebuildingsystem&amp;rev=1495200025&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.minix3.org/doku.php?id=developersguide:rtcprotocol&amp;rev=1415713928&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.minix3.org/doku.php?id=developersguide:sef&amp;rev=1415713928&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.minix3.org/doku.php?id=developersguide:serialout&amp;rev=1431368210&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.minix3.org/doku.php?id=developersguide:start&amp;rev=1495198010&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.minix3.org/doku.php?id=developersguide:statisticalprofiling&amp;rev=1453979810&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.minix3.org/doku.php?id=developersguide:syncpkgsrc&amp;rev=1515467721&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.minix3.org/doku.php?id=developersguide:testingminixarm&amp;rev=1415892663&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.minix3.org/doku.php?id=developersguide:testsuite&amp;rev=1437255664&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.minix3.org/doku.php?id=developersguide:trackingcurrent&amp;rev=1532804915&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.minix3.org/doku.php?id=developersguide:usefultools&amp;rev=1415713928&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.minix3.org/doku.php?id=developersguide:userspacescheduling&amp;rev=1496413917&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.minix3.org/doku.php?id=developersguide:usinggit&amp;rev=1437255921&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.minix3.org/doku.php?id=developersguide:vfsfsprotocol&amp;rev=1432716022&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.minix3.org/doku.php?id=developersguide:vfsfsprotocolv2&amp;rev=1416226943&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.minix3.org/doku.php?id=developersguide:vfsinternals&amp;rev=1415808630&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.minix3.org/doku.php?id=developersguide:vmcalls&amp;rev=1442673983&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.minix3.org/doku.php?id=developersguide:vminternals&amp;rev=1417177494&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.minix3.org/doku.php?id=developersguide:vtreefs&amp;rev=1425910599&amp;do=diff"/>
            </rdf:Seq>
        </items>
    </channel>
    <image rdf:about="https://wiki.minix3.org/lib/tpl/minix3d/images/favicon.ico">
        <title>Wiki</title>
        <link>https://wiki.minix3.org/</link>
        <url>https://wiki.minix3.org/lib/tpl/minix3d/images/favicon.ico</url>
    </image>
    <item rdf:about="https://wiki.minix3.org/doku.php?id=developersguide:assemblylanguageprogramming&amp;rev=1416226933&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2014-11-17T13:22:13+0200</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>developersguide:assemblylanguageprogramming</title>
        <link>https://wiki.minix3.org/doku.php?id=developersguide:assemblylanguageprogramming&amp;rev=1416226933&amp;do=diff</link>
        <description>Assembly Language Programming

Assembly can be a frightening experience, even for well-seasoned C coders.  These resources are here to be of use to anyone wanting to work with assembly in Minix.

Learning Assembly Language

Main Page: Learning Assembly in MINIX

These are resources to aid users in learning assembler as it relates to Minix.  Note: the prerequisite for this is knowing C.  If you do not already know C, you'll save yourself many headaches by doing this first.</description>
    </item>
    <item rdf:about="https://wiki.minix3.org/doku.php?id=developersguide:bbcapes&amp;rev=1416226913&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2014-11-17T13:21:53+0200</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>developersguide:bbcapes</title>
        <link>https://wiki.minix3.org/doku.php?id=developersguide:bbcapes&amp;rev=1416226913&amp;do=diff</link>
        <description>BeagleBone

This guide walks you through the steps of developing support for a new BeagleBone Capes (expansion board). The current version of this guide documents the features used in git commit 60a61df and later. If you update this document because of changes to MINIX 3, please mention the commit ID of the change in the wiki comment.</description>
    </item>
    <item rdf:about="https://wiki.minix3.org/doku.php?id=developersguide:blockprotocol&amp;rev=1460978790&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2016-04-18T13:26:30+0200</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>developersguide:blockprotocol</title>
        <link>https://wiki.minix3.org/doku.php?id=developersguide:blockprotocol&amp;rev=1460978790&amp;do=diff</link>
        <description>The Block Device protocol

This page provides the official documentation of the block device driver protocol of MINIX 3. It describes the protocol used between VFS and file system servers on one side, and block drivers on the other. The current version documents the protocol used in git commit</description>
    </item>
    <item rdf:about="https://wiki.minix3.org/doku.php?id=developersguide:bulkpkgsrc&amp;rev=1415713928&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2014-11-11T14:52:08+0200</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>developersguide:bulkpkgsrc</title>
        <link>https://wiki.minix3.org/doku.php?id=developersguide:bulkpkgsrc&amp;rev=1415713928&amp;do=diff</link>
        <description>Minix and Pkgsrc

pkgsrc has an advanced system to build each package in isolation of the world except for its stated dependencies. This is a good thing and helps package maintenance tremendously. It makes bulk building a little harder. In keeping with its philosophy, the new style (pbulk style building) requires bootstrapping a new pkgsrc instance (i.e. new prefix that is normally /usr/pkg), e.g. /usr/pbulk. The bulk build process needs to work in /usr/pkg, but that's where your currently insta…</description>
    </item>
    <item rdf:about="https://wiki.minix3.org/doku.php?id=developersguide:codingstyle&amp;rev=1415809075&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2014-11-12T17:17:55+0200</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>developersguide:codingstyle</title>
        <link>https://wiki.minix3.org/doku.php?id=developersguide:codingstyle&amp;rev=1415809075&amp;do=diff</link>
        <description>Coding Style

Minix is standardizing on the netbsd coding style (based on KNF (Kernel Normal Form)) for new code. Mostly because the NetBSD import trend makes this the logical choice for a standard.

The canonical reference is in the //git// tree, also available as  /usr/share/misc/style in your MINIX machine, and</description>
    </item>
    <item rdf:about="https://wiki.minix3.org/doku.php?id=developersguide:commitmessages&amp;rev=1426674617&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2015-03-18T11:30:17+0200</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>developersguide:commitmessages</title>
        <link>https://wiki.minix3.org/doku.php?id=developersguide:commitmessages&amp;rev=1426674617&amp;do=diff</link>
        <description>Formatting of Commit Messages

	*  One title line, of maximum 52 characters

The following lines are optional, if the title is complete enough.

	*  One blank line
	*  Please wrap your commits at 72 characters. You may use fmt(1) to do this for you.</description>
    </item>
    <item rdf:about="https://wiki.minix3.org/doku.php?id=developersguide:contributions&amp;rev=1415713928&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2014-11-11T14:52:08+0200</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>developersguide:contributions</title>
        <link>https://wiki.minix3.org/doku.php?id=developersguide:contributions&amp;rev=1415713928&amp;do=diff</link>
        <description>Contributions

This page keeps track of new patches.

/!\ This is probably temporary.

From the Mailing List

Please link to posts about patches below. Accepted ones can be deleted.
 Where &amp; What  release.sh configuration and options makeover  Dialog package and graphic installer using dialog  patch to solve server/apfs/buffer.c put_block function  patch for tildes in Spanish keymap, also asked for in Spanish keymap  Question regarding VM</description>
    </item>
    <item rdf:about="https://wiki.minix3.org/doku.php?id=developersguide:cpureferencemanuals&amp;rev=1477504807&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2016-10-26T20:00:07+0200</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>developersguide:cpureferencemanuals</title>
        <link>https://wiki.minix3.org/doku.php?id=developersguide:cpureferencemanuals&amp;rev=1477504807&amp;do=diff</link>
        <description>CPU Manuals

INTEL Manuals

The Intel Corporation provides many useful documents on the

Pentium 4 Processor Technical Documentation page. 

Especially useful for helping you to understand the machine dependent
code of MINIX 3 on an IBM-PC compatible machine will be the
Manuals
section.  As of October 2016 the following manuals are available as PDF files
(read with Adobe Acrobat or Ghostview):</description>
    </item>
    <item rdf:about="https://wiki.minix3.org/doku.php?id=developersguide:crosscompiling&amp;rev=1618202589&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-04-12T06:43:09+0200</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>developersguide:crosscompiling</title>
        <link>https://wiki.minix3.org/doku.php?id=developersguide:crosscompiling&amp;rev=1618202589&amp;do=diff</link>
        <description>Cross-compiling MINIX 3

Note:

This is for cross-compiling MINIX from another Unix-like system. To build MINIX from within MINIX, check this page instead.

Cross-compilation is the act of building MINIX from another operating system. Since MINIX now uses the build.sh framework from NetBSD, cross-compilation should work on most mainstream UNIX-compatible systems. A build compatibility table is available at the end of this document.</description>
    </item>
    <item rdf:about="https://wiki.minix3.org/doku.php?id=developersguide:datalinkprotocol&amp;rev=1415713928&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2014-11-11T14:52:08+0200</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>developersguide:datalinkprotocol</title>
        <link>https://wiki.minix3.org/doku.php?id=developersguide:datalinkprotocol&amp;rev=1415713928&amp;do=diff</link>
        <description>The Data Link protocol

This page provides the official documentation of the Data Link protocol of MINIX 3. It describes the protocol used between the inet server, and ethernet drivers that control network interface card (NIC) hardware. The current version documents the protocol used in SVN revisions</description>
    </item>
    <item rdf:about="https://wiki.minix3.org/doku.php?id=developersguide:datastore&amp;rev=1415744105&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2014-11-11T23:15:05+0200</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>developersguide:datastore</title>
        <link>https://wiki.minix3.org/doku.php?id=developersguide:datastore&amp;rev=1415744105&amp;do=diff</link>
        <description>DataStore

Stale page

The contents of this page must be revised to reflect the current state of MINIX3.

The MINIX 3 DataStore (DS) server allows components to back up data and
retrieve it after a restart and allows them to exchange data indirectly. 
For each publish request, an entry is stored in DS.</description>
    </item>
    <item rdf:about="https://wiki.minix3.org/doku.php?id=developersguide:debugging&amp;rev=1415888431&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2014-11-13T15:20:31+0200</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>developersguide:debugging</title>
        <link>https://wiki.minix3.org/doku.php?id=developersguide:debugging&amp;rev=1415888431&amp;do=diff</link>
        <description>Debugging code in Minix

Unfortunately that is a lot of what you do while programming. This page collects some tips.

Serial in/out

For debugging and diagnostics, it is smart to always have serial out enabled to another machine (whether in a VM or not). It becomes easy to log your own in-kernel/-driver/-server printf()s, and to interrogate the system about its state. See</description>
    </item>
    <item rdf:about="https://wiki.minix3.org/doku.php?id=developersguide:driverprogramming&amp;rev=1644501496&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2022-02-10T14:58:16+0200</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>developersguide:driverprogramming</title>
        <link>https://wiki.minix3.org/doku.php?id=developersguide:driverprogramming&amp;rev=1644501496&amp;do=diff</link>
        <description>Programming Device Drivers in Minix

Introduction

This tutorial helps you to get started with programming device drivers on Minix in C. A device driver is a computer program which interacts with real hardware components. For example, the computer which you use now to read this web page has a device driver for the display monitor. Another example is the disk driver, which reads and writes raw data from disk(s) in your computer. Clearly, computer systems would be useless without good device drive…</description>
    </item>
    <item rdf:about="https://wiki.minix3.org/doku.php?id=developersguide:earlyboot&amp;rev=1415897045&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2014-11-13T17:44:05+0200</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>developersguide:earlyboot</title>
        <link>https://wiki.minix3.org/doku.php?id=developersguide:earlyboot&amp;rev=1415897045&amp;do=diff</link>
        <description>This page details several crucial aspects of the Minix kernel booting.

Outside Minix itself: multiboot setup procedure

Minix assumes a Multiboot-compliant boot loader has loaded its components into memory. This means the kernel and executables of boot-time processes are loaded somewhere in memory. The kernel is loaded at a location specified in its ELF header, the other executables are loaded at arbitrary locations. The bootloader passes control to the kernel at its entry point specified in it…</description>
    </item>
    <item rdf:about="https://wiki.minix3.org/doku.php?id=developersguide:eclipsetutorial&amp;rev=1436164272&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2015-07-06T08:31:12+0200</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>developersguide:eclipsetutorial</title>
        <link>https://wiki.minix3.org/doku.php?id=developersguide:eclipsetutorial&amp;rev=1436164272&amp;do=diff</link>
        <description>Using Eclipse in MINIX3 with Remote Explorer

The current support of MINIX3 toward other GNU software is still in progress, therefore coding with an IDE on the MINIX3 system is not yet possible. However, most of the programmers would prefer having their favorite IDE as a working and programming environment. One solution to that problem is the Remote System Explorer available for Eclipse. The plug-in has a lot of options targeted on Linux, Windows, and Unix boxes, including process control and re…</description>
    </item>
    <item rdf:about="https://wiki.minix3.org/doku.php?id=developersguide:edidreading&amp;rev=1415888742&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2014-11-13T15:25:42+0200</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>developersguide:edidreading</title>
        <link>https://wiki.minix3.org/doku.php?id=developersguide:edidreading&amp;rev=1415888742&amp;do=diff</link>
        <description>EDID Reading Internals

This page provides the official documentation for EDID reading in MINIX 3. It describes how EDID is read by the frame buffer driver from various sources. The current version documents code in git commit 26f14d6b and later. If you update this document because of changes to MINIX 3, please mention the commit ID of the change in the wiki comment.</description>
    </item>
    <item rdf:about="https://wiki.minix3.org/doku.php?id=developersguide:frompowerontologinprompt&amp;rev=1415713928&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2014-11-11T14:52:08+0200</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>developersguide:frompowerontologinprompt</title>
        <link>https://wiki.minix3.org/doku.php?id=developersguide:frompowerontologinprompt&amp;rev=1415713928&amp;do=diff</link>
        <description>From power-on to the login prompt

Boot monitor

When the power is turned on, the typical PC will try to read the first sector from the BIOS's boot device, such as the first floppy disk or the first hard disk, into memory, and execute it. The code obtained from the hard disk (from the so-called master boot sector) immediately will replace itself by the code found in the first sector of the active partition. Thus, the PC now is executing the bootstrap code found in the first sector of</description>
    </item>
    <item rdf:about="https://wiki.minix3.org/doku.php?id=developersguide:gcov&amp;rev=1474807684&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2016-09-25T14:48:04+0200</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>developersguide:gcov</title>
        <link>https://wiki.minix3.org/doku.php?id=developersguide:gcov&amp;rev=1474807684&amp;do=diff</link>
        <description>GCOV (code coverage) support

Introduction

Code coverage testing is a powerful development aid, predominantly to verify the completeness of test sets. A program that has been compiled with code coverage support will keep track of how many times each of its basic blocks is invoked. This information can be extracted at run time, and mapped back to the program's source code in order to the programmer an idea how many times each line of source code has been triggered at run time.</description>
    </item>
    <item rdf:about="https://wiki.minix3.org/doku.php?id=developersguide:i2cdevinterface&amp;rev=1415713928&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2014-11-11T14:52:08+0200</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>developersguide:i2cdevinterface</title>
        <link>https://wiki.minix3.org/doku.php?id=developersguide:i2cdevinterface&amp;rev=1415713928&amp;do=diff</link>
        <description>I2C /dev Interface

This guide walks you through the steps of creating a user program that accesses the i2c bus via the /dev/i2c interface. The current version of this guide documents the features used in git commit 8a643e5 and later. If you update this document because of changes to MINIX 3, please mention the commit ID of the change in the wiki comment.</description>
    </item>
    <item rdf:about="https://wiki.minix3.org/doku.php?id=developersguide:i2cdriverprogramming&amp;rev=1625929277&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-07-10T17:01:17+0200</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>developersguide:i2cdriverprogramming</title>
        <link>https://wiki.minix3.org/doku.php?id=developersguide:i2cdriverprogramming&amp;rev=1625929277&amp;do=diff</link>
        <description>I2C Device Driver Programming

This guide walks you through the steps of creating your own device driver for an I2C device in C on Minix3 using the i2cdriver library. The current version of this guide documents the features used in git commit 75bd300</description>
    </item>
    <item rdf:about="https://wiki.minix3.org/doku.php?id=developersguide:i2cinternals&amp;rev=1415895618&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2014-11-13T17:20:18+0200</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>developersguide:i2cinternals</title>
        <link>https://wiki.minix3.org/doku.php?id=developersguide:i2cinternals&amp;rev=1415895618&amp;do=diff</link>
        <description>I2C Subsystem Internals

This page provides the official documentation of the I2C internals of MINIX 3. It describes the overarching design themes used in the I2C subsystem as well as the I2C bus driver itself. The current version documents I2C in git commit</description>
    </item>
    <item rdf:about="https://wiki.minix3.org/doku.php?id=developersguide:i2cprotocol&amp;rev=1415713928&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2014-11-11T14:52:08+0200</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>developersguide:i2cprotocol</title>
        <link>https://wiki.minix3.org/doku.php?id=developersguide:i2cprotocol&amp;rev=1415713928&amp;do=diff</link>
        <description>The I2C protocol

This page provides the official documentation of the I2C protocol of MINIX 3. It describes the protocol used between the I2C device drivers and the I2C bus driver. The current version documents the protocol used in git commit 550fdfb</description>
    </item>
    <item rdf:about="https://wiki.minix3.org/doku.php?id=developersguide:kernelapi&amp;rev=1467978643&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2016-07-08T13:50:43+0200</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>developersguide:kernelapi</title>
        <link>https://wiki.minix3.org/doku.php?id=developersguide:kernelapi&amp;rev=1467978643&amp;do=diff</link>
        <description>MINIX 3 Kernel API

Stale page

The contents of this page must be revised to reflect the current state of MINIX3.

2012-03-31 note: with sys_vumap, the first step has been made to start documenting API calls rather than the protocol.

In general, kernel calls allows system processes to request kernel services, for example to perform privileged operations. This document briefly discusses the organization of kernel calls in MINIX 3 and provides an overview of all kernel calls.</description>
    </item>
    <item rdf:about="https://wiki.minix3.org/doku.php?id=developersguide:learningassemblyinminix&amp;rev=1416226924&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2014-11-17T13:22:04+0200</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>developersguide:learningassemblyinminix</title>
        <link>https://wiki.minix3.org/doku.php?id=developersguide:learningassemblyinminix&amp;rev=1416226924&amp;do=diff</link>
        <description>Learning Assembly Language

These are resources to aid users in learning assembler as it relates to Minix.  Note: the prerequisite for this is knowing C.  If you do not already know C, you'll save yourself many headaches by doing this first.

Use the compiler</description>
    </item>
    <item rdf:about="https://wiki.minix3.org/doku.php?id=developersguide:libblockdriver&amp;rev=1415803819&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2014-11-12T15:50:19+0200</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>developersguide:libblockdriver</title>
        <link>https://wiki.minix3.org/doku.php?id=developersguide:libblockdriver&amp;rev=1415803819&amp;do=diff</link>
        <description>Work in progress

This page is not complete or even accurate yet. In fact, it describes a version of libblockdriver that is not yet in minix-current.

The block driver library

The block driver library is a support library for block device drivers. Its primary function is to abstract away many details that are common across all block drivers, mainly with respect to processing incoming requests. On MINIX3, all block drivers are expected to make use of the block driver library.</description>
    </item>
    <item rdf:about="https://wiki.minix3.org/doku.php?id=developersguide:liveupdate&amp;rev=1644702172&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2022-02-12T22:42:52+0200</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>developersguide:liveupdate</title>
        <link>https://wiki.minix3.org/doku.php?id=developersguide:liveupdate&amp;rev=1644702172&amp;do=diff</link>
        <description>Live update and rerandomization

MINIX3 now has support for live update and rerandomization of its system services. These features are based on LLVM bitcode compilation and instrumentation in combination with various run-time extensions. Live update and rerandomization support is currently fully functional, although still in an experimental state, not enabled by default, and available for x86 only. This document describes the basic idea, provides instructions on how to enable and use the functio…</description>
    </item>
    <item rdf:about="https://wiki.minix3.org/doku.php?id=developersguide:llvmbitcode&amp;rev=1418306238&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2014-12-11T14:57:18+0200</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>developersguide:llvmbitcode</title>
        <link>https://wiki.minix3.org/doku.php?id=developersguide:llvmbitcode&amp;rev=1418306238&amp;do=diff</link>
        <description>This page will contain information on how to compile minix in LLVM with bitcode-based linking. 

This allows LTO and instrumentation/analysis of the system.

Quick start


 1. git clone git@git.minix3.org:minix
 2. cd minix
 3. git remote add minix-llvm git@git.minix3.org:minix-llvm
 4. git fetch minix-llvm
 5. git checkout -t minix-llvm/master-llvm
 6. [JOBS=1] ./minix/llvm/generate_gold_plugin.sh
 7. [JOBS=1] BUILDVARS='-V MKBITCODE=yes' ./releasetools/x86_hdimage.sh</description>
    </item>
    <item rdf:about="https://wiki.minix3.org/doku.php?id=developersguide:magicdebugkeys&amp;rev=1437254221&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2015-07-18T23:17:01+0200</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>developersguide:magicdebugkeys</title>
        <link>https://wiki.minix3.org/doku.php?id=developersguide:magicdebugkeys&amp;rev=1437254221&amp;do=diff</link>
        <description>Magic Debugging Keys

These keys trigger diverse low-level information dumps. They are handled by the information server (is) and contains mostly kernel and core services state dumps.

Due to the copious amount of text triggered by the magic debugging keys, most of them only outputs a screen's worth of contents at a time. If you see</description>
    </item>
    <item rdf:about="https://wiki.minix3.org/doku.php?id=developersguide:memorygrants&amp;rev=1453729951&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2016-01-25T14:52:31+0200</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>developersguide:memorygrants</title>
        <link>https://wiki.minix3.org/doku.php?id=developersguide:memorygrants&amp;rev=1453729951&amp;do=diff</link>
        <description>Memory grants

Memory grants is a inter-procedure communication mechanism to allow processes to transfer large amounts of data. An alternative name of this IPC mechanism is safecopies, as the low-kernel kernel system calls related to using memory grants all contain</description>
    </item>
    <item rdf:about="https://wiki.minix3.org/doku.php?id=developersguide:messagepassing&amp;rev=1453928590&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2016-01-27T22:03:10+0200</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>developersguide:messagepassing</title>
        <link>https://wiki.minix3.org/doku.php?id=developersguide:messagepassing&amp;rev=1453928590&amp;do=diff</link>
        <description>Message Passing

Message passing is Minix's native form of IPC. Together with memory grants, they are the only low-level IPC directly understood by the micro-kernel. POSIX-style IPC is implemented on top of them at a higher level of abstraction.

Message

The messages are fixed-length 64 bytes of data. To transfer more effectively bigger amounts of data</description>
    </item>
    <item rdf:about="https://wiki.minix3.org/doku.php?id=developersguide:minixapi&amp;rev=1415812069&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2014-11-12T18:07:49+0200</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>developersguide:minixapi</title>
        <link>https://wiki.minix3.org/doku.php?id=developersguide:minixapi&amp;rev=1415812069&amp;do=diff</link>
        <description>APIs

Stale page

The contents of this page must be revised to reflect the current state of MINIX3.

Introduction

MINIX 3 is highly modular. The system consists of components, some of which offer services to
other components, some of which use services offered by other components, and some of which do both.
A component offering services does so through its Application Programming Interface (</description>
    </item>
    <item rdf:about="https://wiki.minix3.org/doku.php?id=developersguide:minixonarm&amp;rev=1625923794&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-07-10T15:29:54+0200</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>developersguide:minixonarm</title>
        <link>https://wiki.minix3.org/doku.php?id=developersguide:minixonarm&amp;rev=1625923794&amp;do=diff</link>
        <description>This page describes how to build and run Minix/ARM.

Target

The Minix ARM port targets the
BeagleBoard-xM and its QEMU based emulator, 
the BeagleBone
and the BeagleBone Black products from the BeagleBoard community. These are all based on system on chip designs from TI and all contain a Cortex-A8 ARM core.</description>
    </item>
    <item rdf:about="https://wiki.minix3.org/doku.php?id=developersguide:minixonlinaroqemuarm&amp;rev=1460287386&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2016-04-10T13:23:06+0200</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>developersguide:minixonlinaroqemuarm</title>
        <link>https://wiki.minix3.org/doku.php?id=developersguide:minixonlinaroqemuarm&amp;rev=1460287386&amp;do=diff</link>
        <description>Running the MINIX port on Linaro's QEMU

Building Linaro Qemu

Linaro provides open source software for ARM SoCs. Linaro Qemu is a custom version of Qemu that supports the BeagleBoard-xM. Linaro Qemu currently only supports python 2. If you have both python 2 and 3 installed, you may have to specify the path to python by adding the</description>
    </item>
    <item rdf:about="https://wiki.minix3.org/doku.php?id=developersguide:netbooting&amp;rev=1415713928&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2014-11-11T14:52:08+0200</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>developersguide:netbooting</title>
        <link>https://wiki.minix3.org/doku.php?id=developersguide:netbooting&amp;rev=1415713928&amp;do=diff</link>
        <description>warning: code to do this actually isn't merged with master yet

This page describes creating a minix system on ramdisk, capable of being netbooted.

There are two parts. One, creating the hierarchy you want to have on the ramdisk, i.e. your eventual system. Two, creating the boot-time modules, containing the ramdisk with the full filesystem.</description>
    </item>
    <item rdf:about="https://wiki.minix3.org/doku.php?id=developersguide:netbootingarm&amp;rev=1415713928&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2014-11-11T14:52:08+0200</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>developersguide:netbootingarm</title>
        <link>https://wiki.minix3.org/doku.php?id=developersguide:netbootingarm&amp;rev=1415713928&amp;do=diff</link>
        <description>Netbooting Minix on ARM

This page describes how to boot Minix on an ARM-based computer over the network. In other words, when the ARM based computer is powered on, it will download the kernel and servers and use them to boot.

Network Setup

Hardware</description>
    </item>
    <item rdf:about="https://wiki.minix3.org/doku.php?id=developersguide:newkernelcall&amp;rev=1739557898&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-02-14T19:31:38+0200</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>developersguide:newkernelcall</title>
        <link>https://wiki.minix3.org/doku.php?id=developersguide:newkernelcall&amp;rev=1739557898&amp;do=diff</link>
        <description>Adding a new Kernel Call in MINIX

(Working Draft)

This tutorial helps you to add a new kernel call in MINIX. Let's say your new kernel call is called sample.

	*  Add the prototype of your kernel function do_sample() in the file: /usr/src/minix/kernel/system.h</description>
    </item>
    <item rdf:about="https://wiki.minix3.org/doku.php?id=developersguide:obsoletetools&amp;rev=1415811554&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2014-11-12T17:59:14+0200</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>developersguide:obsoletetools</title>
        <link>https://wiki.minix3.org/doku.php?id=developersguide:obsoletetools&amp;rev=1415811554&amp;do=diff</link>
        <description>Obsolete tools

In addition to a number of still useful tools, MINIX also comes
with several tools that were created to ease configuration 
and development on MINIX without being part of any standard and are therefore
unlikely to be known to people familiar with other POSIX systems. Such tools
are now obsolete, but you may encounter them, perhaps when browsing history.
This page describes these tools. For more in-depth information consult their man pages.</description>
    </item>
    <item rdf:about="https://wiki.minix3.org/doku.php?id=developersguide:overviewofminixarchitecture&amp;rev=1430164721&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2015-04-27T21:58:41+0200</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>developersguide:overviewofminixarchitecture</title>
        <link>https://wiki.minix3.org/doku.php?id=developersguide:overviewofminixarchitecture&amp;rev=1430164721&amp;do=diff</link>
        <description>Overview of Minix 3 architecture

Minix 3 is a POSIX-compatible operating system. It is a micro-kernel running a collection of multiple user-mode server processes providing services to user-land programs and users.

The goal of its architecture is to achieve</description>
    </item>
    <item rdf:about="https://wiki.minix3.org/doku.php?id=developersguide:overviewofminixdrivers&amp;rev=1429909890&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2015-04-24T23:11:30+0200</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>developersguide:overviewofminixdrivers</title>
        <link>https://wiki.minix3.org/doku.php?id=developersguide:overviewofminixdrivers&amp;rev=1429909890&amp;do=diff</link>
        <description>Overview of Minix 3 drivers

Drivers are software components used to manage hardware peripherals. In Minix, drivers are implemented as user-mode processes, and they use the micro-kernel to manage the hardware through it.

The drivers source code are located under the minix/drivers/ directory in the Minix source tree. The binary executables are located under the /service/ directory.</description>
    </item>
    <item rdf:about="https://wiki.minix3.org/doku.php?id=developersguide:overviewofminixservers&amp;rev=1490182504&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2017-03-22T12:35:04+0200</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>developersguide:overviewofminixservers</title>
        <link>https://wiki.minix3.org/doku.php?id=developersguide:overviewofminixservers&amp;rev=1490182504&amp;do=diff</link>
        <description>Overview of MINIX3 servers and drivers

System components loaded in boot image:

	*  kernel: Kernel + clock + system (+ idle + asyncm) + IPC
	*  pm: Process manager
	*  vfs: Virtual File system
	*  rs: Reincarnation Server - (re)starts servers and drivers</description>
    </item>
    <item rdf:about="https://wiki.minix3.org/doku.php?id=developersguide:overviewofminixuserland&amp;rev=1429999583&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2015-04-26T00:06:23+0200</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>developersguide:overviewofminixuserland</title>
        <link>https://wiki.minix3.org/doku.php?id=developersguide:overviewofminixuserland&amp;rev=1429999583&amp;do=diff</link>
        <description>Overview of Minix 3 userland

The userland is the collection of libraries and executables that users of the operating system use to get work done. They range from basic system utilities (cat, ls, sed, shell...) all the way to desktop environments, office suites, web browsers and video games.</description>
    </item>
    <item rdf:about="https://wiki.minix3.org/doku.php?id=developersguide:packagingreleases&amp;rev=1415804606&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2014-11-12T16:03:26+0200</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>developersguide:packagingreleases</title>
        <link>https://wiki.minix3.org/doku.php?id=developersguide:packagingreleases&amp;rev=1415804606&amp;do=diff</link>
        <description>Overview of release.sh

/usr/src/tools/release.sh generates an .iso image, a livecd and installer cd for minix, a.k.a., a Release.

It has two major modes: full release with binary packages and package sources; and 'quick cd' which does
nothing with the packages, is faster to make and results in a smaller image.</description>
    </item>
    <item rdf:about="https://wiki.minix3.org/doku.php?id=developersguide:performancemeasurement&amp;rev=1415713928&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2014-11-11T14:52:08+0200</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>developersguide:performancemeasurement</title>
        <link>https://wiki.minix3.org/doku.php?id=developersguide:performancemeasurement&amp;rev=1415713928&amp;do=diff</link>
        <description>Measuring Performance in Minix

This page documents some features in Minix for measuring where the system is spending its time. If you are interested in optimising the system, this is the first thing to do.

top

First question is: is the time i/o time or cpu time? A simple way to see whether the system is working as hard as it can is 'top.' Then look at the 'idle' time. Example:</description>
    </item>
    <item rdf:about="https://wiki.minix3.org/doku.php?id=developersguide:pkgsrcguide&amp;rev=1625923577&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-07-10T15:26:17+0200</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>developersguide:pkgsrcguide</title>
        <link>https://wiki.minix3.org/doku.php?id=developersguide:pkgsrcguide&amp;rev=1625923577&amp;do=diff</link>
        <description>Pkgsrc Guide

Stale page

This guide refers to an unofficial pkgsrc mirror on github which appears to have fallen out of date. The official git.minix3.org repositories should be used instead. The instructions need to be updated.

About

MINIX uses pkgsrc to</description>
    </item>
    <item rdf:about="https://wiki.minix3.org/doku.php?id=developersguide:pkgsrconarm&amp;rev=1455043781&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2016-02-09T19:49:41+0200</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>developersguide:pkgsrconarm</title>
        <link>https://wiki.minix3.org/doku.php?id=developersguide:pkgsrconarm&amp;rev=1455043781&amp;do=diff</link>
        <description>Pkgsrc on ARM

Overview

Right now, no pkgsrc packages are available on the ARM port for MINIX3. Of course we would love to have pkgsrc on ARM - in fact, it will be a necessity for many real-world uses of MINIX3 on the Beagle platforms. However, current technical shortcomings prevent this.</description>
    </item>
    <item rdf:about="https://wiki.minix3.org/doku.php?id=developersguide:pkgsrcstatus&amp;rev=1490537623&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2017-03-26T16:13:43+0200</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>developersguide:pkgsrcstatus</title>
        <link>https://wiki.minix3.org/doku.php?id=developersguide:pkgsrcstatus&amp;rev=1490537623&amp;do=diff</link>
        <description>Pkgsrc Packages Status

The following table presents the last known status of the packages available in the repository.

A few notes on how to fill in the table:

	*  Package name: fill in the full package name as reported by pkgin (example: zsh-5.0.2nb1).</description>
    </item>
    <item rdf:about="https://wiki.minix3.org/doku.php?id=developersguide:pkgsrcupstreaming&amp;rev=1515467647&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-01-09T04:14:07+0200</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>developersguide:pkgsrcupstreaming</title>
        <link>https://wiki.minix3.org/doku.php?id=developersguide:pkgsrcupstreaming&amp;rev=1515467647&amp;do=diff</link>
        <description>pkgsrc upstreaming

Overview

Minix uses pkgsrc as its primary package manager. The master branch of Minix's pkgsrc.git repository contains a pristine copy of the official pkgsrc repository. The minix-master branch contains a copy of the master branch with the Minix specific changes applied. The goal is to get all of the Minix specific changes into the official upstream pkgsrc repository which is developed and maintained by the NetBSD project. However, there is some work to be done to get the ch…</description>
    </item>
    <item rdf:about="https://wiki.minix3.org/doku.php?id=developersguide:portingguide&amp;rev=1425836584&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2015-03-08T18:43:04+0200</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>developersguide:portingguide</title>
        <link>https://wiki.minix3.org/doku.php?id=developersguide:portingguide&amp;rev=1425836584&amp;do=diff</link>
        <description>Porting Guide

Porting Guide Introduction

Porting software to MINIX from Linux or FreeBSD is non-trivial in most cases, but not exactly rocket science either. A major part of the work often has to do with altering/extending makefiles or build scripts. Recoding major parts of a piece of software generally is required for only software that does some or all of its work in kernel space. You can help MINIX by porting packages!</description>
    </item>
    <item rdf:about="https://wiki.minix3.org/doku.php?id=developersguide:portingnetbsdstepbystep&amp;rev=1455289572&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2016-02-12T16:06:12+0200</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>developersguide:portingnetbsdstepbystep</title>
        <link>https://wiki.minix3.org/doku.php?id=developersguide:portingnetbsdstepbystep&amp;rev=1455289572&amp;do=diff</link>
        <description>Step by Step porting Guide for NetBSD userland

Step by Step porting Guide for NetBSD userland written by zacts.

Note: This tutorial assumes familiarity with the UNIX command line, git,
email, and how to install an OS into a virtual machine. Also, I may
update my blog entries from time to time for updates.</description>
    </item>
    <item rdf:about="https://wiki.minix3.org/doku.php?id=developersguide:portingnetbsduserland&amp;rev=1540763559&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-10-28T22:52:39+0200</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>developersguide:portingnetbsduserland</title>
        <link>https://wiki.minix3.org/doku.php?id=developersguide:portingnetbsduserland&amp;rev=1540763559&amp;do=diff</link>
        <description>Porting NetBSD Userland to MINIX 3

Introduction

Porting of NetBSD userland to MINIX 3 started with libc, and since then many libraries and utilities have been added to the system. The goal is to remove the utilities in /usr/src/commands and replace them with NetBSD's, and port additional utilities at the same time. Similarly, libraries from NetBSD will replace the MINIX libraries in /usr/src/lib and additional libraries from NetBSD will be added. This page is intended to organize and coordinat…</description>
    </item>
    <item rdf:about="https://wiki.minix3.org/doku.php?id=developersguide:posixandminix&amp;rev=1415807737&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2014-11-12T16:55:37+0200</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>developersguide:posixandminix</title>
        <link>https://wiki.minix3.org/doku.php?id=developersguide:posixandminix&amp;rev=1415807737&amp;do=diff</link>
        <description>POSIX and MINIX 3

MINIX 3 is POSIX conformant. This document discusses what that means.

What is POSIX?

 
&quot;To make it possible to write programs that could run on any UNIX
system, IEEE developed a standard for UNIX, called POSIX, that most
versions of UNIX now support.  POSIX defines a minimal system call
interface that conformant UNIX systems must support.  In fact, some
other operating systems now also support the POSIX interface.&quot;
    -- Operating Systems Design and Implementation, 2nd ed.,…</description>
    </item>
    <item rdf:about="https://wiki.minix3.org/doku.php?id=developersguide:programmingminix&amp;rev=1437251143&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2015-07-18T22:25:43+0200</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>developersguide:programmingminix</title>
        <link>https://wiki.minix3.org/doku.php?id=developersguide:programmingminix&amp;rev=1437251143&amp;do=diff</link>
        <description>Programming in MINIX 3

This document covers some of the technical issues about using MINIX 3 and writing
code for it.

How can I learn to program in C?

The first edition of Andy Tanenbaum's 'Operating Systems Design
and Implementation included an Introduction to C</description>
    </item>
    <item rdf:about="https://wiki.minix3.org/doku.php?id=developersguide:rebuildingsystem&amp;rev=1495200025&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2017-05-19T15:20:25+0200</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>developersguide:rebuildingsystem</title>
        <link>https://wiki.minix3.org/doku.php?id=developersguide:rebuildingsystem&amp;rev=1495200025&amp;do=diff</link>
        <description>Rebuilding the System

Note:

This is for building MINIX from within MINIX. To cross-compile MINIX from another Unix-like system, check this page instead.

Rebuilding World

The easiest way is to execute make build. It will rebuild and install the operating system, as well as all the utilities.</description>
    </item>
    <item rdf:about="https://wiki.minix3.org/doku.php?id=developersguide:rtcprotocol&amp;rev=1415713928&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2014-11-11T14:52:08+0200</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>developersguide:rtcprotocol</title>
        <link>https://wiki.minix3.org/doku.php?id=developersguide:rtcprotocol&amp;rev=1415713928&amp;do=diff</link>
        <description>The RTC protocol

This page provides the official documentation of the RTC device protocol of MINIX 3. It describes the protocol used between the readclock command and the readclock driver as well as the protocol used between readclock and other drivers. The current version documents the protocol used in git commit</description>
    </item>
    <item rdf:about="https://wiki.minix3.org/doku.php?id=developersguide:sef&amp;rev=1415713928&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2014-11-11T14:52:08+0200</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>developersguide:sef</title>
        <link>https://wiki.minix3.org/doku.php?id=developersguide:sef&amp;rev=1415713928&amp;do=diff</link>
        <description>The System Event Framework (SEF)

Stale page

The contents of this page must be revised to reflect the current state of MINIX3.

Introduction

This is a stub for the System Event Framework (SEF), a component of the system library that deals with system events in a centralized and convenient way.</description>
    </item>
    <item rdf:about="https://wiki.minix3.org/doku.php?id=developersguide:serialout&amp;rev=1431368210&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2015-05-11T20:16:50+0200</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>developersguide:serialout</title>
        <link>https://wiki.minix3.org/doku.php?id=developersguide:serialout&amp;rev=1431368210&amp;do=diff</link>
        <description>Introduction

It's sometimes useful to add debugging prints to servers or drivers and have the output not show up on your screen, but redirected to serial. This way, you can log the prints to a text file or terminal on another box.

Things you can do with serial</description>
    </item>
    <item rdf:about="https://wiki.minix3.org/doku.php?id=developersguide:start&amp;rev=1495198010&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2017-05-19T14:46:50+0200</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>developersguide:start</title>
        <link>https://wiki.minix3.org/doku.php?id=developersguide:start&amp;rev=1495198010&amp;do=diff</link>
        <description>MINIX 3 Developers Guide Table of Contents

The Developers Guide provides information on how to hack on MINIX 3. If you're new to MINIX 3 development, you should start here.

Newcomers/beginners

	*   Introduction 
		*  Cross-compiling MINIX 3
		*  Compiling MINIX 3

	*   Developing MINIX 3</description>
    </item>
    <item rdf:about="https://wiki.minix3.org/doku.php?id=developersguide:statisticalprofiling&amp;rev=1453979810&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2016-01-28T12:16:50+0200</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>developersguide:statisticalprofiling</title>
        <link>https://wiki.minix3.org/doku.php?id=developersguide:statisticalprofiling&amp;rev=1453979810&amp;do=diff</link>
        <description>Statistical profiling

Minix 3 supports statistical profiling. It is available in two versions. The basic one is based on BIOS RTC interrupts. This is available on any x86 machine and in virtual machines. As interrupts are not enabled in kernel this method does not make kernel profiling possible. The second method is using non-maskable interrupts (NMI) which also interrupt the kernel. This requires APIC mode. The NMIs are generated using performance counters. Each platform provides different cou…</description>
    </item>
    <item rdf:about="https://wiki.minix3.org/doku.php?id=developersguide:syncpkgsrc&amp;rev=1515467721&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-01-09T04:15:21+0200</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>developersguide:syncpkgsrc</title>
        <link>https://wiki.minix3.org/doku.php?id=developersguide:syncpkgsrc&amp;rev=1515467721&amp;do=diff</link>
        <description>Syncing the Minix pkgsrc Repository with Upstream

This is a guide intended for Minix developers. If you just want to install software on Minix and you ended up on this page, you might want to look at the Installing Binary Packages and Installing Source Packages  user guides.

Overview

Minix uses pkgsrc as its primary package manager, and pkgsrc is generally distributed in source form via a version control system. Most people on non-Minix systems use CVS to checkout the latest copy from the Net…</description>
    </item>
    <item rdf:about="https://wiki.minix3.org/doku.php?id=developersguide:testingminixarm&amp;rev=1415892663&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2014-11-13T16:31:03+0200</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>developersguide:testingminixarm</title>
        <link>https://wiki.minix3.org/doku.php?id=developersguide:testingminixarm&amp;rev=1415892663&amp;do=diff</link>
        <description>Unofficial Minix/arm Test Plan

This page provides a list of actionable items to perform a thorough set of tests on Minix/arm to validate the functionality of various device drivers. It's designed to be manually executed by a person when major changes are made and before releases to ensure that everything still functions as expected. The majority of tests included here are tests that cannot easily be automated; for example, testing the response of a light sensor (TSL2550) to a lamp turning on in…</description>
    </item>
    <item rdf:about="https://wiki.minix3.org/doku.php?id=developersguide:testsuite&amp;rev=1437255664&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2015-07-18T23:41:04+0200</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>developersguide:testsuite</title>
        <link>https://wiki.minix3.org/doku.php?id=developersguide:testsuite&amp;rev=1437255664&amp;do=diff</link>
        <description>The MINIX 3 Test Suite

The MINIX 3 sources include a test suite in minix/tests. Primarily, it tests POSIX conformance. This page describes how to run the test suite.

Compile the test suite within MINIX 3

Supposing you have cloned the Minix source code in /usr/src, type at the command prompt (#)</description>
    </item>
    <item rdf:about="https://wiki.minix3.org/doku.php?id=developersguide:trackingcurrent&amp;rev=1532804915&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-07-28T21:08:35+0200</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>developersguide:trackingcurrent</title>
        <link>https://wiki.minix3.org/doku.php?id=developersguide:trackingcurrent&amp;rev=1532804915&amp;do=diff</link>
        <description>Tracking Current

What does it mean?

Public releases are done at certain milestones; but development is continuous. Currently, all MINIX 3 sources are kept in a Git repository. A GitHub mirror is also available.

The state of all of the newest versions of the files in the master Git repository (called 'minix', branch 'master') is called 'current', after a BSD convention. You can update your own MINIX 3 installation with those sources; and get a 'current' system. Doing that regularly in the cont…</description>
    </item>
    <item rdf:about="https://wiki.minix3.org/doku.php?id=developersguide:usefultools&amp;rev=1415713928&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2014-11-11T14:52:08+0200</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>developersguide:usefultools</title>
        <link>https://wiki.minix3.org/doku.php?id=developersguide:usefultools&amp;rev=1415713928&amp;do=diff</link>
        <description>Useful tools

MINIX comes with several tools that were created to ease configuration 
and development on MINIX that are not part of any standard and are therefore
unlikely to be known to people familiar with other POSIX systems. This page
describes these tools. For more in-depth information consult their man pages.</description>
    </item>
    <item rdf:about="https://wiki.minix3.org/doku.php?id=developersguide:userspacescheduling&amp;rev=1496413917&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2017-06-02T16:31:57+0200</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>developersguide:userspacescheduling</title>
        <link>https://wiki.minix3.org/doku.php?id=developersguide:userspacescheduling&amp;rev=1496413917&amp;do=diff</link>
        <description>Userspace scheduling

How does it work?

Scheduling in Minix is simple multi-priority round robin. Each runnable process is in a priority queue and has a quantum assigned. The assigned quantum of each process is periodically decreased. Each process is associated with a scheduler, e.g. a process that is responsible for making scheduling decisions for such a process.</description>
    </item>
    <item rdf:about="https://wiki.minix3.org/doku.php?id=developersguide:usinggit&amp;rev=1437255921&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2015-07-18T23:45:21+0200</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>developersguide:usinggit</title>
        <link>https://wiki.minix3.org/doku.php?id=developersguide:usinggit&amp;rev=1437255921&amp;do=diff</link>
        <description>This page will give you a quickstart guide to git and the MINIX 3 git workflow.

A general Git quickstart site: gitready.com.

Git Basics

Git is a distributed version control system. As such, you don't just checkout a specific revision of your project as in subversion. Instead, you make a clone of the entire repository, including all history. You can 'commit' changes locally to your repository, but will need to 'push' them if you want your changes into a remote repository or, in our case, the m…</description>
    </item>
    <item rdf:about="https://wiki.minix3.org/doku.php?id=developersguide:vfsfsprotocol&amp;rev=1432716022&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2015-05-27T10:40:22+0200</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>developersguide:vfsfsprotocol</title>
        <link>https://wiki.minix3.org/doku.php?id=developersguide:vfsfsprotocol&amp;rev=1432716022&amp;do=diff</link>
        <description>As of git commit 89c9de7, file system services should be written against the fsdriver library rather than the protocol as described here. Documentation describing this library will follow shortly. For now, the best resource for information is the combination of this page and the source code of libfsdriver.</description>
    </item>
    <item rdf:about="https://wiki.minix3.org/doku.php?id=developersguide:vfsfsprotocolv2&amp;rev=1416226943&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2014-11-17T13:22:23+0200</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>developersguide:vfsfsprotocolv2</title>
        <link>https://wiki.minix3.org/doku.php?id=developersguide:vfsfsprotocolv2&amp;rev=1416226943&amp;do=diff</link>
        <description>Stale page

All the changes listed on this page, except for the dynamic updates and failure resilience support, have been merged into the VFS-FS protocol. The VFS-FS protocol documentation has been updated accordingly. Further changes to the protocol are being documented on that page</description>
    </item>
    <item rdf:about="https://wiki.minix3.org/doku.php?id=developersguide:vfsinternals&amp;rev=1415808630&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2014-11-12T17:10:30+0200</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>developersguide:vfsinternals</title>
        <link>https://wiki.minix3.org/doku.php?id=developersguide:vfsinternals&amp;rev=1415808630&amp;do=diff</link>
        <description>VFS internals

General description of responsibilities

VFS implements the file system in cooperation with one or more File Servers
(FS). The File Servers take care of the actual file system on a partition. That
is, they interpret the data structure on disk, write and read data to/from
disk, etc. VFS sits on top of those File Servers and communicates with
them. Looking inside VFS, we can identify several roles. First, a role of VFS
is to handle most POSIX system calls that are supported by Minix…</description>
    </item>
    <item rdf:about="https://wiki.minix3.org/doku.php?id=developersguide:vmcalls&amp;rev=1442673983&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2015-09-19T16:46:23+0200</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>developersguide:vmcalls</title>
        <link>https://wiki.minix3.org/doku.php?id=developersguide:vmcalls&amp;rev=1442673983&amp;do=diff</link>
        <description>Some basic VM call documentation

Secondary cache

The secondary block cache is a mechanism to utilize all available system memory as a disk cache. This functionality has to be in VM because it must be able to free the cache blocks if memory is needed for anything else, without blocking on it. I.e. it cannot rely on any other process to first free memory.</description>
    </item>
    <item rdf:about="https://wiki.minix3.org/doku.php?id=developersguide:vminternals&amp;rev=1417177494&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2014-11-28T13:24:54+0200</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>developersguide:vminternals</title>
        <link>https://wiki.minix3.org/doku.php?id=developersguide:vminternals&amp;rev=1417177494&amp;do=diff</link>
        <description>VM internals

General

In order to encapsulate VM functionality, PM is split in process
management and memory management. The memory management task is called
VM and implements the memory part of the fork, exec, exit, etc calls,
by being called synchronously by PM when those calls are done.  This has
made PM architecture independent.</description>
    </item>
    <item rdf:about="https://wiki.minix3.org/doku.php?id=developersguide:vtreefs&amp;rev=1425910599&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2015-03-09T15:16:39+0200</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>developersguide:vtreefs</title>
        <link>https://wiki.minix3.org/doku.php?id=developersguide:vtreefs&amp;rev=1425910599&amp;do=diff</link>
        <description>VTreeFS

The VTreeFS library provides a common base that allows the rapid development of read-only, in-memory, hierarchical file systems. Originally designed to form the basis of both DevFS and ProcFS (still ongoing efforts), it is both flexible and easy to use. The library provides the following functionality:</description>
    </item>
</rdf:RDF>
