Skip to main content
Plan 9
 Web

                        oraccha
  Plan9           http://d.hatena.ne.jp/oraccha/

2009   12   10   Mitaka.rb
Plan 9
• UNIX                                          OS

• Google Go
                    Phil Winterbottom




                    Dave Presotto
       Dennis Ritchie               Rob Pike




                                         1995
Plan 9
• UNIX                                            OS

• Google Go
                     Phil Winterbottom                 Plan 10

                                     Plan 9
                                                      Plan 11?
Google OS            Dave Presotto
        Dennis Ritchie               Rob Pike



                  http://undergoogle.com/tools/GoogleMasterPlanEN.html
                                          1995
Go

• Robert Griesemer    Ken Thompson
    Rob Pike   Russ Cox



•

• CSP→NewSqueak→Alef→Limbo
Gopher
Glen and Glenda




           Illustrated by Renée French
Plan 9

•
• 9P
•
UNIX
•   9P

•   proc

•
•   rfork clone

•
•   UTF-8
Pegasus Web
•                         Plan 9
             Web

•
             CGI

    •

    •   cf. chroot jail
Rit
     •   PHP JSP eRuby       ebash

     •                  Rc

My name is $user.   ${
                    if (~ $REQUEST_METHOD POST) {
                       ifs=’&’ for (kv in `{cat}) {
                         ifs=’=’ kv=`{echo -n $kv}
Date: ${date}            ‘QS_’^$kv(1)=$kv(2)
                     }
                    }$
#!/bin/rit -s
${
	 . ./cgilib.rc	 for urldecode
                 #
	 logfile=test.log
	 if (~ $REQUEST_METHOD POST) {
	 	 ifs='&' for (kv in `{cat}) {
	 	 	 ifs='=' kv=`{echo -n $kv}
	 	 	 'QS_'^$kv(1)=$kv(2)
	 	 }
	 	 echo `{date}: $QS_input | urldecode >> $logfile
	 	 echo >> $logfile
	 }
}$
<html><body>
<form method="POST" action="/index.cgi">
<input type="text" size="60" name="input" value="">
<input type="submit" value="post">
${
	 tail -10 -r $logfile | awk '{ print $0 "</br>" }'
}$
<hr><a href="http://plan9.bell-labs.com/plan9/"><img src="image/
power36.gif"></a></body></html>
Reference

•   Plan 9: http://plan9.bell-labs.com/plan9/
•   Pegasus: http://plan9.aichi-u.ac.jp/pegasus/
•   Rit: http://plan9.aichi-u.ac.jp/rit/


•   Plan 9      : http://d.hatena.ne.jp/oraccha/