User Tools

Site Tools


developersguide:start

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
developersguide:start [2015/07/18 23:28]
jeanbaptisteboric splitting development from within Minix topics
developersguide:start [2017/05/19 14:46]
jeanbaptisteboric move things around a bit
Line 1: Line 1:
 +====== 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 **
 +    - [[.:​crosscompiling|Cross-compiling MINIX 3]]
 +    - [[.:​rebuildingsystem|Compiling MINIX 3]]
 +  - ** Developing MINIX 3 **
 +    - [[.:​overviewofminixarchitecture|Overview of MINIX 3 architecture]]
 +    - [[.:​programmingminix|Programming in MINIX 3]]
 +    - [[.:​trackingcurrent|Tracking Current]]
 +    - [[.:​testsuite|Test Suite]]
 +  - ** Contributing **
 +    - [[.:​usinggit|Using Git]]
 +    - [[.:​codingstyle|Coding Style]]
 +    - [[.:​commitmessages|Commit Message Format]]
 +    - [[:​wishlist:​|Ideas for volunteers to work on]]
 +
 +===== Tutorials =====
 +
 +  - [[.:​liveupdate|Live update and rerandomization]]
 +  - [[.:​driverprogramming|Device Driver Programming in MINIX 3]]
 +  - [[.:​debugging|Debugging tips - Serial out, GDB]]
 +  - [[.:​newkernelcall|Adding a new Kernel Call]]
 +  - [[.:​performancemeasurement|Performance measurement]]
 +  - [[.:​eclipsetutorial|Using Eclipse in MINIX 3 with Remote Explorer]]
 +  - [[.:​gcov|Using GCOV to gather service code coverage info]]
 +===== Reference documentation =====
 +
 +  - ** Micro-kernel **
 +    - [[.:​overviewofminixkernel|Overview of MINIX 3 micro-kernel]]
 +    - [[.:​kernelapi|Kernel system calls API]]
 +    - [[.:​memorygrants|Memory grants]]
 +    - [[.:​messagepassing|Message passing]]
 +  - ** Drivers **
 +    - [[.:​overviewofminixdrivers|Overview of MINIX 3 drivers]]
 +    - [[.:​blockprotocol|The Block Device protocol]]
 +    - [[.:​datalinkprotocol|The Data Link (inet-ethernet) protocol]]
 +    - [[.:​i2cprotocol|The I2C Device Protocol]]
 +    - [[.:​rtcprotocol|The RTC Protocol]]
 +  - ** Servers **
 +    - [[.:​overviewofminixservers|Overview of MINIX 3 servers]]
 +    - [[.:​vminternals|VM Internals]]
 +    - [[.:​vfsinternals|VFS Internals]]
 +  - ** Userland **
 +    - [[.:​overviewofminixuserland|Overview of Minix userland]]
 +    - [[.:​portingguide|Guide to Porting Software]]
 +    - ** Minix-specific **
 +      - [[.:​usefultools|Useful tools specific to MINIX 3]]
 +    - ** NetBSD **
 +      - [[.:​portingnetbsduserland|Porting NetBSD Userland]]
 +      - [[.:​portingnetbsdstepbystep|Step by Step porting Guide for NetBSD userland]]
 +    - ** pkgsrc**
 +        - [[.:​pkgsrcguide|Pkgsrc Guide]]
 +        - [[.:​bulkpkgsrc|Bootstrapping and bulk-building with Pkgsrc]]
 +        - [[.:​syncpkgsrc|Syncing the MINIX 3 pkgsrc Repository with Upstream]]
 +        - [[.:​pkgsrcupstreaming|Pkgsrc Upstreaming]]
 +        - [[.:​pkgsrconarm|Pkgsrc on ARM (not yet working)]]
 +  - ** Machine-dependent **
 +    - ** i386 **
 +      - [[.:​cpureferencemanuals|X86 CPU Reference Manuals]]
 +    - ** ARM **
 +      - [[.:​minixonarm|Building MINIX 3 for ARM]]
 +      - [[.:​testsuite|Test Suite]]
 +      - [[.:​testingminixarm|Testing Minix/arm]]
 +  - ** Miscellaneous **
 +    - [[.:​earlyboot|Early Boot]] - technical details of kernel getting loaded and its memory layout
 +    - [[.:​frompowerontologinprompt|From power-on to the login prompt...]]
 +    - [[.:​magicdebugkeys|Magic debugging keys]]
 +
 +====== MINIX 3 Old Developers Guide Table of Contents ======
 +
 +As discussed on [[https://​groups.google.com/​forum/#​!topic/​minix3/​3Pe2KYxfqHE|minix3]],​ here is the old developers guide table of contents:
 +
 +  - **Programming**
 +    - [[.:​usefultools|Useful tools specific to MINIX 3]]
 +    - [[.:​driverprogramming|Device Driver Programming in MINIX 3]]
 +    - [[.:​i2cdriverprogramming|I2C Device Driver Programming in MINIX 3]]
 +    - [[.:​i2cdevinterface|I2C /dev Interface]]
 +    - [[.:​bbcapes|Adding support for new BeagleBone Capes]]
 +    - [[.:​eclipsetutorial|Using Eclipse in MINIX3 with Remote Explorer]]
 +    - [[.:​posixandminix|POSIX and MINIX 3]]
 +    - [[.:​programmingminix|Programming in MINIX 3]]
 +    - [[.:​cpureferencemanuals|X86 CPU Reference Manuals]]
 +    - [[.:​performancemeasurement|Performance measurement]]
 +    - [[.:​newkernelcall|Adding a new Kernel Call]]
 +    - [[.:​debugging|Debugging tips - Serial out, GDB]]
 +    - [[.:​gcov|Using GCOV to gather servers code coverage info]]
 +  - **Rebuilding the System**
 +    - [[.:​trackingcurrent|Tracking Current]]
 +    - [[.:​rebuildingsystem|Rebuilding the System]]
 +    - [[.:​crosscompiling|Crosscompile MINIX]]
 +    - [[.:​minixonarm|Building MINIX for ARM]]
 +    - [[.:​testsuite|Test Suite]]
 +    - [[.:​testingminixarm|Testing Minix/arm]]
 +  - **API Documentation**
 +    - [[.:​minixapi|The MINIX 3 API]]
 +    - [[.:​kernelapi|The Kernel API]]
 +    - [[.:​vfsfsprotocol|The VFS-FS protocol]]
 +    - [[.:​datalinkprotocol|The Data Link (inet-ethernet) protocol]]
 +    - [[.:​blockprotocol|The Block Device protocol]]
 +    - [[.:​i2cprotocol|The I2C Device Protocol]]
 +    - [[.:​rtcprotocol|The RTC Protocol]]
 +    - [[.:​datastore|The DataStore API]]
 +    - [[.:sef|The System Event Framework (SEF)]]
 +    - [[.:​vtreefs|The VTreeFS library]]
 +    - [[.:​vmcalls|VM calls]]
 +  - **Internals**
 +    - [[.:​frompowerontologinprompt|From power-on to the login prompt...]]
 +    - [[.:​earlyboot|Early Boot]] - technical details of kernel getting loaded and its memory layout
 +    - [[.:​vminternals|VM Internals]]
 +    - [[.:​vfsinternals|VFS Internals]]
 +    - [[.:​i2cinternals|I2C Internals]]
 +    - [[.:​edidreading|EDID Reading]]
 +    - [[.:​userspacescheduling|Userspace scheduling]]
 +  - **Writing or Porting Software**
 +    - [[.:​portingguide|Guide to Porting Software]]
 +    - [[.:​portingnetbsduserland|Porting NetBSD Userland]]
 +    - [[.:​pkgsrcguide|Pkgsrc Guide]]
 +    - [[.:​bulkpkgsrc|Bootstrapping and bulk-building with Pkgsrc]]
 +    - [[.:​syncpkgsrc|Syncing the Minix pkgsrc Repository with Upstream]]
 +    - [[.:​pkgsrcupstreaming|Pkgsrc Upstreaming]]
 +  - **Source Code**
 +    - [[.:​usinggit|Using Git]]
 +    - [[.:​codingstyle|Coding Style]]
 +    - [[.:​commitmessages|Commit Message Format]]
 +  - **TODO**
 +    - [[:​wishlist:​|Ideas for volunteers to work on]]
  
developersguide/start.txt · Last modified: 2017/05/19 14:46 by jeanbaptisteboric