FAQ (Plan 9 wiki)
FAQ
(we<br>also<br>have<br>lfaq<br>(less<br>frequently<br>asked<br>questions),<br>which<br>has<br>more<br>in<br>it<br>but<br>is<br>less<br>well<br>organized.)
About<br>Plan
What<br>is<br>Plan<br>9?
What<br>is<br>Inferno?
Why<br>do<br>people<br>use<br>it?
Why<br>don't<br>more<br>people<br>use<br>it?
Is<br>there<br>much<br>of<br>community?<br>Where?
Where<br>can<br>get<br>more<br>information<br>on<br>the<br>system?
Getting<br>Started<br>with<br>Plan
Sounds<br>Interesting.<br>Now<br>What?
Can<br>use<br>this<br>particular<br>application<br>I've<br>got?
Can<br>run<br>KDE/GNOME/fvwm/&c?
Can<br>run<br>Mozilla/Firefox/Opera/&c?
Do<br>need<br>three<br>computers<br>to<br>use<br>Plan<br>9?
Great,<br>so<br>how<br>do<br>install<br>the<br>thing?
Using<br>Plan
Okay,<br>it's<br>installed.<br>Now<br>what?
So<br>now<br>let's<br>say<br>do<br>want<br>fuller<br>network;<br>how?
Are<br>there<br>public<br>resources<br>to<br>import<br>or<br>play<br>with?
Where<br>can<br>get<br>more<br>software<br>for<br>Plan<br>9?
Can<br>get<br>Plan<br>account<br>somewhere<br>to<br>play<br>around?
How<br>can<br>help?
Not<br>Using<br>Plan
It's<br>really<br>interesting,<br>but<br>don't<br>have<br>supported<br>hardware.<br>Options?
The<br>ideas<br>sound<br>great,<br>but<br>don't<br>want<br>whole<br>new<br>OS.<br>Options?
How<br>can<br>help,<br>anyway?
About<br>Plan
ABOUT PLAN 9
What<br>is<br>Plan<br>9?
Plan<br>is<br>(relatively)<br>new<br>computer<br>operating<br>system<br>and<br>associated<br>utilities.<br>It<br>was<br>built<br>by<br>the<br>Computing<br>Science<br>Research<br>Center<br>of<br>Bell<br>Laboratories<br>(now<br>part<br>of<br>Alcatel-Lucent),<br>the<br>same<br>group<br>that<br>developed<br>Unix,<br>C,<br>and<br>C++.
Plan<br>is<br>distributed<br>system,<br>able<br>to<br>make<br>use<br>of<br>different<br>kinds<br>of<br>resources<br>and<br>servers<br>spread<br>across<br>almost<br>any<br>network.<br>It<br>has<br>very<br>low<br>resource<br>requirement<br>compared<br>to<br>most<br>systems,<br>has<br>very<br>consistent,<br>simple<br>design,<br>and<br>performs<br>very<br>well.
What<br>is<br>Inferno?
Inferno<br>is<br>spin-off<br>of<br>Plan<br>using<br>many<br>of<br>the<br>same<br>ideas<br>(and<br>much<br>of<br>the<br>same<br>code).<br>Inferno<br>has<br>several<br>additional<br>benefits;<br>even<br>lighter<br>resource<br>requirements,<br>virtual<br>machine<br>(Dis),<br>new<br>language<br>for<br>concurrent<br>programming<br>(Limbo),<br>and<br>the<br>ability<br>to<br>run<br>as<br>an<br>application<br>on<br>top<br>of<br>an<br>existing<br>Operating<br>System<br>(including<br>Plan<br>9,<br>Windows,<br>and<br>variety<br>of<br>Unixes).
This<br>FAQ<br>mostly<br>talks<br>about<br>Plan<br>9,<br>but<br>the<br>ideas<br>largely<br>translate<br>to<br>Inferno.<br>See<br>the<br>last<br>few<br>questions<br>for<br>some<br>Inferno-specific<br>information.
Why<br>do<br>people<br>use<br>it?
The<br>answer<br>to<br>this<br>question<br>varies<br>by<br>user;<br>Plan<br>shows<br>up<br>in<br>lots<br>of<br>different<br>types<br>of<br>applications,<br>making<br>use<br>of<br>different<br>benefits.<br>It<br>is<br>used<br>in<br>embedded<br>systems,<br>where<br>the<br>low<br>overhead<br>is<br>important.<br>It<br>is<br>used<br>in<br>commercial<br>products<br>where<br>the<br>reliability<br>and<br>performance<br>are<br>important.<br>It's<br>used<br>in<br>massive<br>supercomputers<br>where<br>the<br>novel<br>interconnections<br>and<br>low<br>"system<br>noise"<br>are<br>needed.<br>What<br>you<br>get<br>out<br>of<br>it<br>largely<br>depends<br>on<br>what<br>you're<br>looking<br>for<br>from<br>it.
Most<br>frequently,<br>people<br>using<br>Plan<br>seem<br>to<br>focus<br>on<br>the<br>simplicity<br>of<br>the<br>system<br>and<br>the<br>great<br>distribution<br>mechanism.<br>This<br>later<br>idea,<br>in<br>particular,<br>is<br>very<br>central<br>to<br>Plan<br>9:<br>all<br>resources<br>are<br>represented<br>as<br>normal<br>files<br>(as<br>opposed<br>to<br>Unix,<br>where<br>most<br>things<br>are<br>files,<br>but<br>not<br>all<br>files<br>are<br>"real"<br>files),<br>and<br>the<br>system<br>uses<br>common<br>method<br>to<br>talk<br>to<br>them<br>all<br>(9P,<br>a.k.a.<br>Styx).<br>This,<br>and<br>related<br>points<br>like<br>the<br>fact<br>that<br>the<br>namespace<br>is<br>per-process,<br>affects<br>the<br>organization<br>of<br>the<br>entire<br>system,<br>leading<br>to<br>all<br>sorts<br>of<br>interesting,<br>novel<br>uses.<br>This<br>is<br>the<br>key<br>point<br>to<br>understand<br>in<br>Plan<br>9,<br>and<br>also<br>the<br>biggest<br>mental<br>jump<br>from<br>Unix<br>or<br>other<br>systems.
Why<br>don't<br>more<br>people<br>use<br>it?
Plan<br>is<br>not<br>Unix<br>(or<br>anything<br>else<br>you're<br>likely<br>familiar<br>with).<br>While<br>the<br>command<br>set<br>is<br>superficially<br>similar,<br>it's<br>most<br>certainly<br>not<br>the<br>same<br>(cat<br>on<br>Unix<br>has<br>dozen<br>or<br>so<br>options;<br>on<br>Plan<br>9,<br>it<br>has<br>zero).<br>Many<br>people<br>come<br>to<br>Plan<br>expecting<br>unix++<br>or<br>similar,<br>and<br>are<br>disappointed<br>when<br>they<br>find<br>something<br>much<br>more<br>different<br>than<br>that.<br>Even<br>the<br>development<br>environment<br>is<br>similar<br>but<br>entirely<br>distinct:<br>we<br>use<br>mk,<br>not<br>make;<br>we<br>use<br>C,<br>but<br>the<br>library<br>isn't<br>ANSI<br>and<br>our<br>compilers<br>understand<br>some<br>extensions<br>that<br>aren't<br>in<br>GCC<br>(and<br>not<br>most<br>of<br>the<br>non-standard<br>ones<br>that<br>GCC<br>made<br>up);<br>the<br>default<br>preprocessor<br>is<br>much<br>simpler<br>than<br>ANSI's.
There<br>are<br>also<br>some<br>very<br>specific<br>issues<br>with<br>using<br>Plan<br>as<br>your<br>primary<br>OS,<br>mostly<br>relating<br>to<br>application<br>support.<br>We<br>don't<br>have<br>GUI<br>word<br>processor,<br>spreadsheet<br>program,<br>or<br>popular<br>games.<br>Most<br>notably,<br>we<br>don't<br>have<br>"modern"<br>web<br>browser<br>with<br>CSS<br>and<br>JavaScript<br>support<br>(but<br>see<br>the<br>question<br>about<br>some<br>of<br>those<br>below).<br>Plan<br>does<br>not<br>aim<br>to<br>replace<br>any<br>existing<br>desktop<br>system,<br>and<br>thus<br>using<br>it<br>has<br>higher<br>initial<br>bar<br>than<br>using<br>systems<br>which<br>do<br>try<br>to<br>fill<br>such<br>roll.
Is<br>there<br>much<br>of<br>community?<br>Where?
The<br>Plan<br>community<br>is<br>small<br>but<br>active.<br>The<br>best<br>places<br>to<br>find<br>it<br>are<br>the<br>9fans<br>mailing<br>list<br>and<br>in<br>#plan9<br>on<br>Freenode.<br>Several<br>people<br>in<br>both<br>places<br>have<br>been<br>using<br>Plan<br>for<br>decade<br>or<br>more,<br>and<br>the<br>mailing<br>list<br>in<br>particular<br>gets<br>occasional<br>traffic<br>from<br>the<br>original<br>authors.
Where<br>can<br>get<br>more<br>information<br>on<br>the<br>system?
The<br>man<br>pages<br>and<br>papers<br>for<br>the<br>system<br>are<br>available<br>online.<br>The<br>wiki<br>has<br>lot<br>of<br>good<br>information,<br>although<br>the<br>organization<br>is<br>not<br>always<br>as<br>good<br>as<br>it<br>could<br>be.
GETTING STARTED WITH PLAN...