User Tools

Site Tools


faq

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
faq [2016/12/14 15:02]
stefanschroeder [Will MINIX be ported to ARM/MIPS/SPARC/x86-64/Raspberry Pi?]
faq [2020/07/07 23:11]
lionelsambuc [What is the MINIX 3 license?]
Line 3: Line 3:
 ===== General Questions ===== ===== General Questions =====
 ==== What is MINIX 3? ==== ==== What is MINIX 3? ====
-MINIX 3 is a small free UNIX clone designed for very high reliability. It is especially well-suited for low-end PCs, resource-constrained ​ systems, and embedded applications. It is available with all the source code, which makes it well-suited to classroom or self study by people wanting to learn how an operating system works.+MINIX 3 is a small and free UNIX clone designed for very high reliability. It is especially well-suited for low-end PCs, resource-constrained systems, and embedded applications. It is available with all the source code, which makes it well-suited to classroom or self-study by people wanting to learn how an operating system works.
  
 ==== What hardware do I need to run MINIX 3? ==== ==== What hardware do I need to run MINIX 3? ====
Line 9: Line 9:
  
 ==== Where can I get MINIX 3? ==== ==== Where can I get MINIX 3? ====
-MINIX 3 can be downloaded from the MINIX 3 [[http://​www.minix3.org/​download/​|download page]]. MINIX 3.1.0 is also distributed on a CD-ROM included with the text [[http://​vig.prenhall.com/​catalog/​academic/​product/​0,​1144,​0131429388,​00.html|Operating Systems Design and Implementation,​ 3/e]] by Andrew S. Tanenbaum and Albert S. Woodhull.+MINIX 3 can be downloaded from the MINIX 3 [[http://​www.minix3.org/​download/​|download page]]. MINIX 3.1.0 is also distributed on a CD-ROM included with the book [[http://​vig.prenhall.com/​catalog/​academic/​product/​0,​1144,​0131429388,​00.html|Operating Systems Design and Implementation,​ 3/e]] by Andrew S. Tanenbaum and Albert S. Woodhull.
  
 ==== Where can I get the MINIX 3 source code? ==== ==== Where can I get the MINIX 3 source code? ====
  
-You can find the MINIX 3 source code in the /usr/src directory of your MINIX installation. You can also grab the code from our authoritative [[http://​git.minix3.org?​p=minix.git|git repository]]. ​mirror is available on [[https://​github.com/​minix3/minix|Github]]+You can find the MINIX 3 source code in the /usr/src directory of your MINIX installation. You can also grab the code from our authoritative [[http://​git.minix3.org?​p=minix.git|git repository]]. ​An official ​mirror is available on [[https://​github.com/​Stichting-MINIX-Research-Foundation/minix|GitHub]].
  
 ==== Where can I get help with MINIX 3? ==== ==== Where can I get help with MINIX 3? ====
Line 21: Line 21:
 See the [[:​DevelopersGuide:​]] as a start. See the [[:​DevelopersGuide:​]] as a start.
  
-You can also buy the MINIX3 book, which covers quite an old Minix version, 3.1.0. Architecturally speaking, several things have changed since then -+You can also buy the MINIX3 book, which covers quite an old MINIX version, 3.1.0. Architecturally speaking, several things have changed since then -
 but it's much easier to understand those changes once you know the basics, and the book covers all that. but it's much easier to understand those changes once you know the basics, and the book covers all that.
  
Line 39: Line 39:
 ==== Can I become a MINIX 3 developer? ==== ==== Can I become a MINIX 3 developer? ====
 If you have the requisite time, interest, and knowledge, you are welcome to join the MINIX 3 community. See the [[:​DevelopersGuide:​]] for some starting points. If you have the requisite time, interest, and knowledge, you are welcome to join the MINIX 3 community. See the [[:​DevelopersGuide:​]] for some starting points.
- 
  
 ==== How do I submit a patch? ==== ==== How do I submit a patch? ====
Line 48: Line 47:
  
  
-==== Can you help me with my Minix homework / lab assignment / I need to implement lottery scheduling / how do I add a system call? ====+==== Can you help me with my MINIX homework / lab assignment / I need to implement lottery scheduling / how do I add a system call? ====
 Probably not. You're supposed to do it yourself, that's why it's homework / an assignment. Think about talking to your supervisor or classmates first. If you suspect a MINIX bug, verify it's present in the latest version and post details on how to reproduce it. Probably not. You're supposed to do it yourself, that's why it's homework / an assignment. Think about talking to your supervisor or classmates first. If you suspect a MINIX bug, verify it's present in the latest version and post details on how to reproduce it.
  
Line 55: Line 54:
 ===== Legal Questions ===== ===== Legal Questions =====
 ==== What is the MINIX 3 license? ==== ==== What is the MINIX 3 license? ====
-The MINIX 3 [[http://www.minix3.org/​license.html|license]] is a clone of the Berkeley (BSD) license. In plain English, it says you can do whatever you like with the system provided that (1) you agree not to sue us under any conditions, and (2) you keep the credit lines in the source, documentation,​ and publicity unless other arrangements have been made. Specifically,​ you are free to modify the source code, redistribute it, incorporate it into commercial products with only the above restrictions.+The MINIX 3 [[https://git.minix3.org/​index.cgi?​p=minix.git;​a=blob_plain;​f=LICENSE;​hb=HEAD|license]] is a clone of the Berkeley (BSD) license. In plain English, it says you can do whatever you like with the system provided that (1) you agree not to sue us under any conditions, and (2) you keep the credit lines in the source, documentation,​ and publicity unless other arrangements have been made. Specifically,​ you are free to modify the source code, redistribute it, incorporate it into commercial products with only the above restrictions.
  
 ==== Why didn't you use the GPL? ==== ==== Why didn't you use the GPL? ====
Line 72: Line 71:
 ===== Technical Questions ===== ===== Technical Questions =====
 ==== How do I boot the USB image? ==== ==== How do I boot the USB image? ====
-First, USB images are a legacy offer which was hacked ​specifically for MINIX 3.1.x. They do not work with the more recent 3.2.x releases, and are futile with 3.3.0 which does support native USB peripherals.+First, USB images are a legacy offer which was provided ​specifically for MINIX 3.1.x. They do not work with the more recent 3.2.x releases, and are futile with 3.3.0 which does support native USB peripherals.
  
 Write the USB image file to the USB device sector-by-sector (e.g. with //dd//). In other words, don't write it to a FAT filesystem on the USB device, but write the file to it starting at the first sector (Sector 0). This will, of course, effectively wipe all other information that was stored on the USB device. Write the USB image file to the USB device sector-by-sector (e.g. with //dd//). In other words, don't write it to a FAT filesystem on the USB device, but write the file to it starting at the first sector (Sector 0). This will, of course, effectively wipe all other information that was stored on the USB device.
  
-Then you can boot from the USB device if your BIOS supports that.+Then you can boot from the USB deviceif your BIOS supports that.
  
-==== Can I crosscompile ​it? ====+==== Can I cross-compile ​it? ====
 Of course! See [[DevelopersGuide:​Crosscompiling]]. Of course! See [[DevelopersGuide:​Crosscompiling]].
  
Line 85: Line 84:
 By default clang is used as the compiler on native MINIX installs because of its BSD license. GCC is available (install it with pkgin) and you can build the base system with it by setting CC=gcc. ​ By default clang is used as the compiler on native MINIX installs because of its BSD license. GCC is available (install it with pkgin) and you can build the base system with it by setting CC=gcc. ​
  
-For crossbuilds ​GCC is the default.+For cross-builds ​GCC is the default.
  
 ==== How do I change the network configuration after an install? ==== ==== How do I change the network configuration after an install? ====
Line 112: Line 111:
 ==== I can not get the Network to work using VMware, what should I do? ==== ==== I can not get the Network to work using VMware, what should I do? ====
  
-So how do they differ, the old version has NO network Driver specified in it's "​.vmx"​ file so Minix must try everything and chooses Lance. It would be better if [8] worked but I found that a Bug causes panics with the IRQs to be printed to the Console ​every few seconds.+So how do they differ, the old version has NO network Driver specified in it's "​.vmx"​ file so MINIX must try everything and chooses ​the Lance driver. It would be better if [8] worked but I found that a bug causes panics with the IRQs to be printed to the console ​every few seconds.
  
 To get things working with VMware do this: To get things working with VMware do this:
  
-1. Download the latest ​iso image from the download page, and use 7Zip (or other) to produce ​the "​.iso"​.+1. Download the latest ​ISO image from the download page, and use 7Zip (or other) to extract ​the "​.iso"​.
  
-2. Fire up VMware and create a new Machine ​("​other"​ and "other 64 bit" DO work on 32-Bit WinXP).+2. Fire up VMware and create a new machine ​("​other"​ and "other 64 bit" DO work on 32-Bit WinXP).
  
-3. Create one 16GB Disk and populate it so it won't have to grow (and wreck havoc with defragmentors).+3. Create one 16GB disk and populate it so it won't have to grow (and wreck havoc with defragmentation).
  
-4. You can specify 1024 MB of memory (older versions of Minix only use 880+kb).+4. You can specify 1024 MB of memory (older versions of MINIX only use +880KB).
  
-5. You can choose more than one Processor (handy if you rebuild using gcc and "CONFIG_SMP=y CONFIG_MAX_CPUS=8" ​).+5. You can choose more than one processor; ​handy if you rebuild using gcc and  
 + 
 +<​code>​ 
 +CONFIG_SMP=y ​ 
 +CONFIG_MAX_CPUS=8"​ 
 +</​code>​
  
-6. Might as well add USB, a floppy, and Parallel ​Serial Ports.+6. You might as well add USB, a floppy, and parallel ​serial ports.
  
 7. Choose "​NAT"​. 7. Choose "​NAT"​.
  
-8. Boot your "​Virtual Machine"​ to the "​.iso"​ (or the BIOS if you want to change things), install ​Minix by typing "setup /​usr"​. ​+8. Boot your "​Virtual Machine"​ to the "​.iso"​ (or the BIOS if you want to make changes), install ​MINIX by typing "setup /​usr"​. ​
  
 9. Use "​non-expert Partitioning"​ (default) and set "/​home"​ to 512K, that makes the last Partition within Minix'​s limits. 9. Use "​non-expert Partitioning"​ (default) and set "/​home"​ to 512K, that makes the last Partition within Minix'​s limits.
faq.txt · Last modified: 2020/07/07 23:11 by lionelsambuc