FAQïŒ OS Infernoãšã¯äœã§ããããªãå¿
èŠãªã®ã§ããïŒåã®æçš¿ã®æ
å ±ã¯ã»ãŒ4幎éå€ããªã£ãŠãããããæŽæ°ããããã«æ±ããããŸããã ãŸãã1ã€ã®ãã¹ãã§ã€ã³ã¹ããŒã«ãšã»ããã¢ãããæ··åšãããªãã§ãã ããããããã£ãŠãã€ã³ã¹ããŒã«ã®ã¿ãè¡ããã 
ã»ããã¢ããã¯å¥ã®ãã¹ãã®å¥ã®ãã¹ãã§èª¬æãã
ãŸã ã 
æŽæ°ïŒ Windowsã®ã€ã³ã¹ããŒã«ã®èª¬æã¯2014幎6æã«æŽæ°ãããŸããã
ãã®ããã 
忣Inferno OSãã€ã³ã¹ããŒã«ããŸãã 
å
¬åŒWebãµã€ã ã«ã¯
ã€ã³ã¹ããŒã«æé ããã
ãŸãããå®å
šã«æ£ããããã§ã¯ãªããå°ãå€ããªã£ãŠããŸãã Infernoã¯2ã€ã®ã¢ãŒãã§åäœã§ããŸã- 
ãã€ãã£ã ïŒãã¢ã¡ã¿ã«ãŸãã¯qemu /ãªã©ããã¹ãŠã®éåžžã®OSãšåæ§ïŒãš
ãã¹ã ïŒ* NIX / Winã®äžã®éåžžã®ã¢ããªã±ãŒã·ã§ã³ïŒã 
ãã€ãã£ãInfernoã®ã€ã³ã¹ããŒã«æé ã¯ ã 
ãã·ã¢ã®wikiã«ãããŸã ã ããã«ãä»ã®ãªãã·ã§ã³ããããŸã-ããšãã°ã 
Androidã«Infernoãã€ã³ã¹ããŒã«ãã ã å人çã«ã¯ãéåžžã®ã³ã³ãã¥ãŒã¿ãŒã§ãã€ãã£ãã®Infernoã䜿çšããæå³ãããããªããããGentooãUbuntuãFreeBSDãMacOSXãWindowsã§ã®ãã¹ããããInfernoã®ã€ã³ã¹ããŒã«ã«ã€ããŠèª¬æããŸãã
å
容
ã€ã³ã¹ããŒã«æ©èœ
OS InfernoããŒãžã§ã³
çè«çã«ã¯ã第4çã®ææ°ã®å
¬åŒããŒãžã§ã³ã¯2004幎é ã«ãªãªãŒã¹ãããŸããã çŸåšã®ããŒãžã§ã³ã¯Google Codeã®Mercurialãªããžããªã«ããããNew EditionããšåŒã°ããŠããŸãã å®éã«ã¯ããªããžããªã®çŸåšã®ããŒãžã§ã³ä»¥å€ã®ãã®ã䜿çšããããšã¯æå³ããããŸãããå®å
šã«å®å®ããŠãããåžžã«å®å®ããŠããŸãã å
¥ããŸãã
1人ãŸãã¯è€æ°ãŠãŒã¶ãŒã®ã€ã³ã¹ããŒã«ã¹ã¿ã€ã«
Infernoã¯ã·ã¹ãã å
šäœã«ã€ã³ã¹ããŒã«ããããšãã§ãïŒããšãã°
/usr/inferno/ ïŒããã¹ãŠã®ãŠãŒã¶ãŒã䜿çšã§ããŸãã Infernoã¯ãããã«å¿
èŠãªãã¹ãŠããµããŒãããŸã-ãŠãŒã¶ãŒæš©éãåå¥ã®ããŒã ãã£ã¬ã¯ããªãªã©ã§ã®äœæ¥ã äžæ¹ãã€ã³ãã§ã«ãã¯ããŒã ãã£ã¬ã¯ããªã«ç°¡åã«é
眮ã§ããŸãïŒäŸïŒ 
~/inferno/ ïŒãããã¯ããã«äŸ¿å©ã§ãã äž¡æ¹ã®æ¹æ³ãåæã«èª¬æããããšã§ååã®èšäºãè€éã«ããŸããããã·ã³ã°ã«ãŠãŒã¶ãŒããŒãžã§ã³ã®ã€ã³ã¹ããŒã«ã®ã¿ã説æããæ¹ãç°¡åã ãšå€æããŸããã ãã®èšäºã®èªè
ã®1人ã«è€æ°ã®ã€ã³ãã§ã«ããŠãŒã¶ãŒããããµãŒããŒãããå Žåãã€ã³ãã§ã«ããã€ã³ã¹ããŒã«ããããã®ç§ã®æç€ºã¯ã»ãšãã©å¿
èŠãããŸããã ;-)ãããã£ãŠãNIXã·ã¹ãã ã§ã¯
~/inferno/ã«ãWindowsã§ã¯
C:\inferno\ã«ã€ã³ã¹ããŒã«ããŸãã
32/64ããã
OS Inferno 32ãããã ãããã£ãŠã64ãããOSã«ã€ã³ã¹ããŒã«ããŠå®è¡ããã«ã¯ããããã®OSã§ã®32ãããã¢ããªã±ãŒã·ã§ã³ã®ãµããŒããå¿
èŠã§ãã æ®å¿µãªããã64ãããFreeBSD-9.0ã§ã¯ãinfernoãèµ·åã§ããŸããã§ããã
Hardened / PaX / SeLinux /ãªã©
Infernoã¯ä»®æ³ãã·ã³ã§ã³ãŒããå®è¡ããããã«JITããµããŒããããããJavaãªã©ã®ããŸããŸãªä¿è·ãšåãåé¡ãæ±ããŠããŸãã ååã®èšäºã§ããã®ãããã¯ã«ãã£ãšæ³šæãæããŸããã質åãããå Žåã¯ããã¡ããã芧ãã ããã
æéãšå Žæ
ã€ã³ã¹ããŒã«ãããã€ã³ãã§ã«ãã¯çŽ200MBããããŸãã ãã ããã³ã³ãã€ã©ã®ã€ã³ã¹ããŒã«ã«ã¯æå€§3奿°ã®ã¬ãã€ããå¿
èŠã«ãªãå ŽåããããŸãïŒXcodeãVisual Studioãªã©ïŒã Infernoã¯ãå¹³åçãªã·ã¹ãã ã§æåéãæ°åã§ã³ã³ãã€ã«ããŸãã
å Žæ
ããŒã ãã£ã¬ã¯ããªã«ã€ã³ãã§ã«ããã€ã³ã¹ããŒã«ãããšããã€ã³ãã§ã«ãã¯ã¹ãã·ã£ã«ã奜ãã§ã¯ãªãããšã«æ³šæããŠãã ããã ãã¡ã€ã«/ãã£ã¬ã¯ããªã®ååã«æåãå«ãŸããŠãããããããŒã ãã£ã¬ã¯ããªãžã®ãã¹ã«ã¹ããŒã¹ãå«ãŸããŠããå Žåã¯ãèæ
®ããªãã£ãåé¡ãããå¯èœæ§ããããŸãã
èšçœ®
ïŒããŒããã³ã°ãããïŒGentoo Linux 32/64ãããã§ã¯ãã¹ãŠãç°¡åã§ã- 
/usr/inferno/ã·ã¹ãã å
šäœã«infernoãã€ã³ã¹ããŒã«ããããã±ãŒãžããããŸãïŒ
 layman -a powerman emerge inferno 
ãããŠä»ãç§ãã¡ã¯ä»ã®OSã«å¯ŸåŠããŸãã
Mercurialãã³ã³ãã€ã©ããã¹ãŠãã¹ãŠ
... Ubuntu 12.04 32ããã
 sudo apt-get install -y mercurial sudo apt-get install -y libxext-dev 
... Ubuntu 12.04 64ããã
 sudo apt-get install -y mercurial sudo apt-get install -y libc6-dev-i386 sudo apt-get install -y libxext-dev:i386 
... FreeBSD 8.0 32ããã
 pkg_add -r mercurial 
... Mac OS X 10.6.8 Snow Leopard 32-ããã
XcodeïŒ3.2.2ïŒãšMercurialïŒ1.7.1ïŒããã§ã«ã€ã³ã¹ããŒã«ããŠããŸãã
... Mac OS X 10.7.4 Lion 64ããã
App StoreããXcodeïŒ4.3.2ïŒãã€ã³ã¹ããŒã«ããŸãã
Xcodeãèµ·åããXcode-ç°å¢èšå®-ããŠã³ããŒãã¡ãã¥ãŒã«ç§»åããã³ãã³ãã©ã€ã³ããŒã«ã®ã€ã³ã¹ããŒã«ãã¯ãªãã¯ããŸãã
mercurial.berkwood.comã«ã¢ã¯ã»ã¹ããŠãçŸåšã®ããŒãžã§ã³ïŒOS X 10.7ã®Mercurial 2.2.2ïŒãããŠã³ããŒã/ã€ã³ã¹ããŒã«ããŸãã
... WindowsïŒXP 32ãããã7ã€ã®32ãããã7ã€ã®64ãããïŒ
mercurial.selenic.com/downloadsã«ã¢ã¯ã»ã¹ããçŸåšã®ããŒãžã§ã³ïŒ3.0.1ïŒãããŠã³ããŒã/ã€ã³ã¹ããŒã«ããŸãã
ããããã³ã³ãã€ã©ã«ã¯ãªãã·ã§ã³ããããŸãã Visual Studio Expressãã€ã³ã¹ããŒã«ããæçœãªãªãã·ã§ã³ã¯ãããžããšã«3ã®ã¬ä»¥äžããããŸãã å¥ã®æ¹æ³-WinSDKã®ã€ã³ã¹ããŒã«-ã«ã¯çŽ800ã¡ã¬ãã€ãããããŸãã äž¡æ¹ã®ãªãã·ã§ã³ã«ã€ããŠèª¬æããŸããèªåã§éžæããŠãã ããã
æåã®ãªãã·ã§ã³ã 
www.microsoft.com/visualstudio/en-us/products/2010-editions/visual-cpp-expressã«ã¢ã¯ã»ã¹ããããŠã³ããŒã/ã€ã³ã¹ããŒã«/æŽæ°ïŒãã·ã¢ã®ã«ã¹ã¿ã ã«å¿ããŠ-3å:)ãã以å€ã®å Žåããã¹ãŠã®æŽæ°ãã€ã³ã¹ããŒã«ãããããã§ã¯ãããŸããïŒ "Visual C ++ 2010 Express ãã
2çªç®ã®ãªãã·ã§ã³ã ãŸãã 
go.microsoft.com / 
fwlink / 
ïŒLinkId = 187668ã«ã¢ã¯ã»ã¹ããŠãå®å
šãªã.NET Framework 4ããããŠã³ããŒã/ã€ã³ã¹ããŒã«ããŸãã æ¬¡ã«ã 
www.microsoft.com / 
en-us / download / 
details.aspxïŒid = 8279ã«ã¢ã¯ã»ã¹ããŠããWindows SDK 7.1ããããŠã³ããŒã/ã€ã³ã¹ããŒã«ããŸãã ã€ã³ã¹ããŒã«ãããšãã¯ã次ã®ç¹ã«å¶éããã ãã§ååã§ãã
 
ïŒ2014幎ããã¹ãŠã®Visual C ++ 2010 Redistributableãç Žå£ãããŸã§ãç§ã®SDKã¯ã€ã³ã¹ããŒã«ãæåŠããŸãããããã¯
ãæ°ããŒãžã§ã³ã§ããããšã倿ããŸãããïŒãã®åŸãæŽæ°ããŸãã å®éãæŽæ°ã¯ããããå¿
èŠã§ã¯ãªããç¿æ
£ã«ãªã£ãŠããŸãã
ã€ã³ãã§ã«ããœãŒã¹ãããŠã³ããŒãããŠæŽæ°ãã
å
¬åŒãŠã§ããµã€ãã¯Windowsçšã®åå¥ã®ã¢ãŒã«ã€ããšãããŒçšã®åå¥ã®ãã€ããªãæäŸããŠãããšããäºå®ã«ãããããããç§ãã¡ã¯ããããã¹ãŠå¿
èŠãšãããããã«æå®³ã§ãïŒWindowsã®ã¢ãŒã«ã€ãã¯ãªããžããªããæ£åžžã«æŽæ°ãããŸãã-ç«¶åããããŸãïŒã ãããã£ãŠããã¹ãŠã®OSã®äžã§ãinferno-20100120.tgzããã€ã³ã¹ããŒã«ããŸãã åã«ãªããžããªãè€è£œããã®ã§ã¯ãªãããã®ã¢ãŒã«ã€ãã䜿çšããçç±ã¯ãã¢ãŒã«ã€ãã«ã©ã€ã»ã³ã¹ãGoogle Codeãžã®ã¢ããããŒããçŠæ¢ããŠããããã€ãã®ãã¡ã€ã«ïŒäž»ã«ãã©ã³ãïŒãå«ãŸããŠããããã§ãã
... * NIX
 wget http://www.vitanuova.com/dist/4e/inferno-20100120.tgz tar xzf inferno-20100120.tgz cd inferno/ hg pull -uv 
...åã€
www.vitanuova.com/dist/4e/inferno.zipãããŠã³ããŒãã
ãŸã ïŒãµã€ãã§æšå¥šãããŠããŸããã.tgzãå
¥æããããšãã§ããŸããäž¡æ¹ãšãåé¡ãªãå®è¡ã§ããŸãïŒã
C:\inferno\ã§è§£åããŸãã Windowsã§.tgzãè§£åããã®ã«äœãå¿
èŠãããããŸãã-Farãš7ZipããããFarãè§£åããŸããã
cmdå®è¡ããŸãã
 cd \inferno hg pull -uv  
cmdçµäºããŸãã
ç°å¢å€æ°ãæ§æãã
æ¬åœã«å¿
èŠãªå€æ°ã¯
PATHã ãã§ãã 
EMUã¯ãinfernoãå®è¡ããããã®ããã©ã«ããã©ã¡ãŒã¿ãèšå®ããŸãããããã¯äŸ¿å®äžã®ã¿å¿
èŠã§ãã 
INFERNO_ROOT ãinfernoã¯ããã«ã€ããŠãŸã£ããç¥ããŸããã䟿å®äžãã®å€æ°ãå¿
èŠã§ãã çŸåšã®ã»ãã·ã§ã³ã§å€æ°ãèšå®ããããšã«å ããŠãéå§ã¹ã¯ãªããã«å€æ°ãæžã蟌ã¿ãŸãã
... Ubuntu
 export INFERNO_ROOT=$(pwd) export PATH=$INFERNO_ROOT/Linux/386/bin:$PATH export EMU=-r$INFERNO_ROOT echo "export INFERNO_ROOT=$INFERNO_ROOT" >> ~/.bashrc echo "export PATH=\$INFERNO_ROOT/Linux/386/bin:\$PATH" >> ~/.bashrc echo "export EMU=-r\$INFERNO_ROOT" >> ~/.bashrc 
... FreeBSD
 export INFERNO_ROOT=$(pwd) export PATH=$INFERNO_ROOT/FreeBSD/386/bin:$PATH export EMU=-r$INFERNO_ROOT echo "export INFERNO_ROOT=$INFERNO_ROOT" >> ~/.bash_profile echo "export PATH=\$INFERNO_ROOT/FreeBSD/386/bin:\$PATH" >> ~/.bash_profile echo "export EMU=-r\$INFERNO_ROOT" >> ~/.bash_profile 
... Mac OS X
 export INFERNO_ROOT=$(pwd) export PATH=$INFERNO_ROOT/MacOSX/386/bin:$PATH export EMU=-r$INFERNO_ROOT echo "export INFERNO_ROOT=$INFERNO_ROOT" >> ~/.bash_profile echo "export PATH=\$INFERNO_ROOT/MacOSX/386/bin:\$PATH" >> ~/.bash_profile echo "export EMU=-r\$INFERNO_ROOT" >> ~/.bash_profile 
...åã€
ã³ã³ãããŒã«ããã«->ã·ã¹ãã ->远å ã®ã·ã¹ãã ãã©ã¡ãŒã¿ãŒïŒXPã§ã¯åã«ã詳现ãïŒ->ç°å¢å€æ°ã«ç§»åããŸãã
ãã¹ã远å ïŒ; 
;C:\inferno\Nt\386\binãæåŸã«
æ°ãã倿°ãäœæããŸãïŒINFERNO_ROOTïŒ 
C:\infernoæ°ãã倿°ãäœæããŸãïŒEMUïŒ 
-rC:\infernoãã«ããªãã·ã§ã³ãæ§æãã
ãã¹ãŠã®OSã§
mkconfigãã¡ã€ã«ãæåã§ç·šéã§ããŸãããç°¡åã«ããããã«ãå¯èœãªéãæ§æãèªåçã«å€æŽããã³ãã³ããæäŸããŸãã
... Ubuntu
 perl -i -pe 's/^ROOT=.*/ROOT=$ENV{INFERNO_ROOT}/m' mkconfig perl -i -pe 's/^SYSHOST=.*/SYSHOST=Linux/m' mkconfig perl -i -pe 's/^OBJTYPE=.*/OBJTYPE=386/m' mkconfig 
linukhaã§ã¯ãinfernoã¯IPv6ããµããŒãããŠããŸãã ããã«ããã®IPv6ã¯ããã©ã«ãã§äœ¿çšãããŸãã ãããããªãã«åã£ãŠãããã©ãã-èªåã§æ±ºããŠãã ããã ç§ã¯å人çã«ããããªãã«ããŸãïŒ
 perl -i -pe 's/ipif6/ipif/g' emu/Linux/emu emu/Linux/emu-g 
... FreeBSD
 perl -i -pe 's/^ROOT=.*/ROOT=$ENV{INFERNO_ROOT}/m' mkconfig perl -i -pe 's/^SYSHOST=.*/SYSHOST=FreeBSD/m' mkconfig perl -i -pe 's/^OBJTYPE=.*/OBJTYPE=386/m' mkconfig 
... Mac OS X
 perl -i -pe 's/^ROOT=.*/ROOT=$ENV{INFERNO_ROOT}/m' mkconfig perl -i -pe 's/^SYSHOST=.*/SYSHOST=MacOSX/m' mkconfig perl -i -pe 's/^OBJTYPE=.*/OBJTYPE=386/m' mkconfig 
...åã€
mkconfigç·šéïŒ
 ROOT=c:/inferno SYSHOST=Nt OBJTYPE=386 
çµç«
... * NIX
 sh makemk.sh mk nuke mk install  
... 7ã€ã®64ãããã«åã€
WinSDKãã€ã³ã¹ããŒã«ããå Žåã¯ããWindows SDK 7.1ã³ãã³ãããã³ãããã«æ°ããã·ã§ãŒãã«ãããäœæãããã®ããããã£ã«ç§»åããŠ
/x86ãªãã·ã§ã³ã远å ããŠãããååŸããå¿
èŠããããŸãã
C:\Windows\System32\cmd.exe /E:ON /V:ON /T:0E /K "C:\Program Files\Microsoft SDKs\Windows\v7.1\Bin\SetEnv.cmd" /x86Visual C ++ 2010ãã€ã³ã¹ããŒã«ããå Žåã32ãããã³ã³ãã€ã©ã®å®è¡æ¹æ³ãããããŸããïŒãã ããããã¯ã»ãŒåãæ¹æ³ã§å®è¡ãããå¯èœæ§ããããŸãïŒã
次ã®äœæ¥ã¯ããã¹ãŠã®ããŒãžã§ã³ã®Windowsã®æ¬¡ã®æ®µèœã§èª¬æãããŠããŸãã
...åã€
ãWindows SDK 7.1ã³ãã³ãããã³ãããïŒãŸãããŸãã¯ãVisual Studioã³ãã³ãããã³ããïŒ2010ïŒã-ã€ã³ã¹ããŒã«ããå
容ã«å¿ããŠïŒãèµ·åããŸãã
 cd \inferno mk nuke mk install 
æã¡äžã
å®éãããã ãã§ãã 
emuãŸãã¯
emu-gã³ãã³ãã§ã€ã³ãã§ã«ããéå§ã§ããããã«ãªããŸããïŒ2ã€ç®ã¯ã°ã©ãã£ã«ã«ã¢ãŒãããµããŒãããªããšããç¹ã§ç°ãªããŸãããXã®ãªããµãŒããŒã§åäœããããŸããŸãªãããã¯ãŒã¯ãµãŒãã¹ã®èµ·åã«éåžžã«äŸ¿å©ã§ãïŒã emuå
ã§
wm/wmã³ãã³ããå®è¡ãããšãã°ã©ãã£ã«ã«ç°å¢ã衚瀺ã§ããŸãã
 $ emu ; wm/wm 

䟿å©ãªãªã³ã¯
ã·ã¹ãã ã®ã€ã³ã¹ããŒã«ã«æ¢ãŸããªã人ã¯
ããã·ã¢èªã®Limboã®èª¬æ ãhtmlã®
ææ°ããŒãžã§ã³ã®ããã¥ã¢ã«ã ç§ã®ã€ã³ãã§ã«ãã¢ãžã¥ãŒã«ãšã¢ããªã±ãŒã·ã§ã³ ãããã³
mjlããã®ã€ã³ãã§ã«ãã¢ããªã±ãŒã·ã§ã³ã®å€§èŠæš¡ãªã¢ãŒã«ã€ããèªãããšã«èå³ããããããããŸããã è±èªåã®ã³ãã¥ããã£ã¯ã 
#infernoãšfreenodeãããã¯ãŒã¯ã®IRC 
#infernoã§ããŸãã
PS
ã誰ã«ããªãããããã¹ãŠå¿
èŠãªã®ãããšããäŒçµ±çãªè³ªåã«äºåã«çããŸãã ãã¹ãã¢ãŒãã§ã¯ãinfernoã¯ErlangãJavaããŸãã¯Goãšã»ãŒåãæ¹æ³ã§äœ¿çšãããŸããã·ã³ãã«ã§å¿«é©ãªèšè¿°ç°å¢ã§å®è¡ãããã¯ãŒã«ãªããã°ã©ãã³ã°èšèªã§ã¢ããªã±ãŒã·ã§ã³ãéçºããå°ãªããšãä»ã®èšèªã®åæ§ã®ã¢ããªã±ãŒã·ã§ã³ãšåæ§ã«åäœããŸãã Erlangãšã¯ç°ãªããInfernoã«ã¯ããã«äœ¿çšã§ãããã®ã¯ããŸããããŸããïŒãã ããå¿
èŠã«å¿ããŠãã³ãã«ã§ç°¡åã«å®è£
ã§ããŸãïŒããåé¡ã解決ããã®ã«é©ããæ±çšã·ã¹ãã ã§ãïŒéåžžãäœã¬ãã«ãã©ã€ããŒãªã©ãé€ãïŒã Javaãšã¯ç°ãªããå®å
šãªè»œéã¹ã¬ãããšãã·ã³ãã«ãªãã«ãã¹ã¬ããã¢ããªã±ãŒã·ã§ã³ãCSPã¹ã¿ã€ã«ã§äœæããæ©èœããããŸãã Goãšã¯ç°ãªããä»®æ³åããã³åçŽåãããç°å¢ã¯ã©ã®OSã§ãåãã§ãã äžè¬ã«ãã€ã³ãã§ã«ãã¯ãåçšãããžã§ã¯ãã§ã®éçšã§äœ¿çšããæºåãé·ã玠æŽãããã·ã¹ãã ã§ããïŒããã§äœ¿çšããŠããŸãïŒããããããã¯ããã«äººæ°ããããŸãã