Latest News
Plan 9 Authentication in Linux ( By uriel Last mod: Oct 4 01:14 )
Ashwin Ganti has continued the great work he started as unofficial participant at the 2007 Google Summer of Code, and recently he published an excellent paper describing his efforts to bring the Plan 9 cap device and auth model to Linux.
See the project homepage to get the source code.
We also have learned that Ashwin Ganti has joined the ever growing gang of 9fans that have infiltrated the Google ranks, congratulations Ashwin!
The Trace Device lost on its way to Greece ( By uriel Last mod: Sep 30 11:07 )
In an unplanned preview of IWP9, Ron Minnich has released a paper on a new kernel trace device for Plan 9; unfortunately he and his coauthors John Floren and Aki Nyrhinen could not attend IWP9 this year so they decided to post their paper early.
The source code for the modified 8l linker can be found in /n/sources/contrib/rminnich/tracepaper/, and the trace device itself should be released shortly. You can download the full paper in PDF format at the newly opened 2008 section of the IWP9 papers archive. And here is the Abstract to open your appetite:
Abstract
We describe a Plan 9 trace device, devtrace, its uses and its implemen-
tations. The trace device can be used to selectively trace functions and
processes in Plan 9. Users can enable a range of functions to be traced,
observe which of the functions are called, in what order, what their pa-
rameters are, and the time spent (in CPU ticks) in each function. We
have developed a set of tools for plotting this data to make the progres-
sion and timing of function calls clear. Since all Plan 9 file systems are
user level processes, it is possible to trace a single process file I/O as it
progresses from the process, through the file server processes, and to disk.
This measurement, in turn, allows us to propose changes in the Plan 9
kernel design and implementation to improve performance.
The implementation of the trace device went through several distinct
phases. In the end, we arrived at a device with a textual interface. Users
need not write programs to use the trace facility. The trace device does
not rewrite kernel code and hence does not require privileged access (as
in Linux or Solaris). Any user of a Plan 9 terminal can measure their
system’s performance.
The trace device was designed to help us with performance evaluation
of Plan 9 on two supercomputers, the Cray XT4 and the IBM BG/P.
Roundup of 9P library updates ( By uriel Last mod: Sep 30 11:40 )
Various 9P implementations have seen recent updates.
- Libixp continues its yearly release schedule ;) and sqweek has announced the release of libixp 0.5 with many improvements and usability, complicance and portability fixes.
- The recently released Duat portable 9P200/9P2000.u implementation in C has been updated with some minor fixes and improvements (and I'm told more comprehensive updates are on its way)>
- No new versions of npfs have been released, but various updates have been committed to the svn tree, including Infiniband RDMA transport support by Tom Tucker.
- V9fs got some bug fixing to be included with the Linux kernel release 2.6.27, and ericvh has posted a big refactoring and reorganization that he hopes will be included in 2.6.28.
Registration for IWP9 opens ( By uriel Last mod: Sep 23 18:49 )
The registration period for the Third International Workshop for Plan 9 and Inferno has opened.
To register send an e-mail with your name, affiliation and email address (in one line each) to iwp9@inf.uth.gr and Cc iwplan9@gmail.com; registration is free and includes entry to the talks and panels.
The registration deadline has changed and is now Oct 5th 2008, so hurry up!
Inferno ported to the OpenMoko ( By uriel Last mod: Sep 23 12:50 )
Masha Rabinovich has got hosted Inferno to run on the OpenMoko cellphone platform. There is a google code inferno-openmoko project with the source code for the port.
So far the port even has the JIT working!
Duat A new 9P library in C ( By uriel Last mod: Sep 21 18:44 )
Jyujin, from the Kyuba project, has released a new 9P implementation in C called duat under a BSD license.
It includes both client and server implementations and has support for the .u extension.
Duat has been added to the list of existing 9P implementations.
Inferno-ds updates ( By uriel Last mod: Sep 21 18:33 )
There has been lots of progress in the inferno-ds project to port Inferno to the Nintendo DS.
Support for both screens, audio playback and recording, and sd storage (for some adaptors) are all working now, and the wifi code just needs some more testing and fixing.
Salva Peiró has written a paper describing the project, including technical details and plans for the future.
He has also called for contributors that are interested in improving and expanding the current code and experimenting with possible apps for the system.
Glendix status update ( By uriel Last mod: Sep 7 21:12 )
Glendix implements the Plan 9 syscalls in the Linux kernel to allow running unmodified Plan 9 binaries on Linux (a sort of kernel-level reverse linuxemu).
Some weeks ago Anant posted a status update in the official Glendix web site announcing that 13 syscalls had been implemented, enough to run cat(1), sed(1), 8c(1), grep(1) and others.
Extended deadline for IWP9 paper submission ( By uriel Last mod: Sep 4 18:24 )
Spyros Lalis has posted to 9fans to announce that the deadline for submitting papers to the third International Workshops for Plan 9 and Inferno has been extended to Monday September the Eigth.
If your paper is still in progress and you need some extra time, you can contact Program Committee chair, Richard Miller, miller at hamnavoe dot com.
New rc shell feature ( By uriel Last mod: Aug 8 03:06 )
Based on an original idea and initial code by Erik Quanstrom, Russ Cox has implemented a new feature in the rc shell to allow subscripts that select a sequence (ie., range) of items.
The extended syntax for subscript notation is like this:
; foo = (a b c d)
; echo $foo(2-3)
b c
echo $foo(2-)
b c d
Russ points out in the patch(1) he submitted to sources that this allows to replace the old idiom:
; *=($x); shift; x=($*)
with the much cleaner:
; x=$x(2-)
This change was committed a few weeks ago to both the main (native) Plan 9 tree and the Plan 9 from User Space tree.
Sources downtime ( By uriel Last mod: Aug 7 22:55 )
Geoff Collyer posted a note in 9fans saying that sources.cs.bell-labs.com venti arenas partition has run out of space and will be down for a couple of days until more disk space can be added. He plans to fix this on Wednesday and things should be back to normal by Thursday.
Update: Sources has been back up and running for almost a day on new hardware and using a much bigger venti. Thanks Geoff!
New 9mount release ( By uriel Last mod: Aug 5 22:06 )
Sqweek announced in the 9p-hackers mailinglist the release of version 1.3 of his 9mount helper utilities to mount (unmount and bind) 9P file systems in Linux systems with v9fs.
Changes in this release include support for most v9fs options, including virtio and fd transports, setting of msize and exclusive attach/access mode.
9umount can now unmount non-9p filesystems (if they were mounted in your home directory), which should make 9bind more usable.
Also the license has been set to the very simple and clean MIT/BSD-like ISC license.
Links:
- Home page: http://sqweek.dnsdojo.org/code/9mount/
- Manual page: http://sqweek.dnsdojo.org/code/9mount/docs
- Download: http://sqweek.dnsdojo.org/code/9mount/download
IWP9 08 CFP reminder and other conference news ( By uriel Last mod: Jul 12 16:56 )
Richard Miller posted to 9fans and Inferno list reminding of the end of August deadline to submit papers for the Third International Workshop for Plan 9 and Inferno.
In other conference news, Eric Van Hensbergen of IBM research gave a talk about using 9P in paravirtualized environments during the KVM Forum 2008, you can read a pdf with the slides from his presentation.
And finally Ron Minnich of Sandia National Labs will be at Argonne National Laboratory speaking the 13th of August about Plan 9 in the BlueGene as part of the Blue Gene Consortium Open Source Workshop.
New lguest release ( By uriel Last mod: Jul 11 21:42 )
To keep up with the vx9 competition ;) Ron Minnich has updated lguest to work with the latest Plan 9 and Linux kernels, it can be found on /n/sources/contrib/rminnich/lguest/, 9lguestcpu.elf is the ready to run binary and lguest.tgz has all the source.
Send any comments and improvements to ron at: rminnich-gmail.com
P9p native UI for OS X ( By uriel Last mod: Jul 11 21:36 )
Among many other improvements, the latest Plan 9 from User Space (aka plan9port) has support for native OS X graphics so you don't need to install X11 anymore.
All you need to do is do an hg pull (and update) and re-run the ./INSTALL script. If for some reason you want to use X11 graphics (for example if you want to do ssh/X forwarding) create the file $PLAN9/LOCAL.config with the contents:
WSYSTYPE=x11
And rebuild your p9p tree.
As usual, all credit goes to the tireless Russ Cox.
New 9vx version ( By uriel Last mod: Jul 5 04:34 )
Fast as the heels of the first public release comes version 0.11 with a bunch of bug fixes and some extra features.
On MacOS X it includes experimental native GUI support and fixes the cpu-hogging bug.
To download the the binary distribution go to the 9vx home and to the vx32 home for the source code.
Announcing 9vx ( By uriel Last mod: Jun 27 17:56 )
Russ Cox announced in 9fans 9vx, a port of the Plan 9 kernel to run as a user space process on *nix systems (including OS X, and a win32 port is apparently feasible) using the vx32 sandboxing framework he developed with Bryan Ford at MIT.
It can execute unmodified Plan 9 i386 binaries, and includes all the standard file servers like networking, graphics and audio.
It is still experimental, and people have reported some issues with the OS X version, but seems to work fairly well under Linux.
For more information see:
- http://swtch.com/9vx/ - 9vx homepage
- http://pdos.csail.mit.edu/~baford/vm/ - vx32 homepage
- Vx32: Lightweight User-level Sandboxing on the x86 - Paper presented at Usenix 2008 about vx32 and 9vx.
Update: Andrey Mirtchovski reports that using the -F flag so 9vx doesn't fork into the background solves the issues with OS X (a proper fix will come soon).
Venti servers survey ( By uriel Last mod: Jun 27 15:54 )
Russ Cox has posted to 9fans asking for people who run venti servers to send him some stats to survey for usage patterns.
If you want to contribute all you have to do is run the following commands:
hget http://localhost:8000/storage >/tmp/vstats
hget http://localhost:8000/index >>/tmp/vstats
mail -s 'venti survey' rsc@swtch.com </tmp/vstats
(Obviously replace 'localhost:8000' with the the address of the http interface for your venti server if needed.)
Inferno DS gets a x6 perf boost ( By uriel Last mod: Jun 10 16:44 )
Salva Peiró continues his amazing work on Inferno port to the Nintendo DS and has announced in the inferno-ds google group that after enabling the MPU (ARM CP15 Protection Unit) and caches, he measured a six fold performance improvement.
His perception is "that it's similar in speed [to] launching emu on a standard pc (2 or 3 years old)."
And this is all without JIT, which gives extra margin for improvement in case it is ever needed.
He finishes mentioning "I was worried about the performance one could achieve running Inferno on the DS, needless to say now all my worries about that have disappeared."
Shortly afterwards he posted a reply to his announcement saying that he still want to test the changes a bit more before committing them to the official repo, but he attached a patch for everyone interested to test.
New releases of acme-sac for OSX ( By uriel Last mod: Jun 10 16:44 )
Eric Nichols (aka underspecified) has released acme-sac 0.30 and 0.31 for Mac OS X. It fixes a bug in 0.29 where double characters were added to the buffer for every keystroke and 0.31 finally resolves crashes on older versions of Mac OS X (before Leopard).
Other changes included:
- Esc key now selects and deletes previously entered text
- SVN revision and build date now included in /dev/sysctl
He also clarifies that support for pre-10.4 machines has not been discontinued. Requirements are as follows:
- Native Carbon version: OS X 10.4 and later
- X11 version: verified back as far OS X 10.3
Download: AcmeSAC-0.31.dmg
Dis on a Chip Update ( By uriel Last mod: Jun 10 16:44 )
Bruce Ellis has been busy but managed to put some more of his magic into Dis on a Chip and he posted an update about what has been going on lately*.
He has been playing with small designs to do specialized high performance busses.
And he mentions that Xilinx Web Ise 10.1 is now available for free. "It saves me code and thought as it infers dual port rams now."
He also would like to hear from people with opencores experience.
* Note: The post was to the Dis on a Chip Google Group, which is not public but anyone can apply for membership and as the group description mentions: "Please don't hesitate to tell your esteemed friends about this group. Nobody has been denied admission (yet). It is restricted to stop noise."
Chicken Scheme 9p ( By uriel Last mod: Jun 10 16:44 )
Peter Bex (aka Sjaaman) has released his finished implementation of 9P2000 in Chicken Scheme. A corresponding new entry has been added to the list of 9P implementations.
- Download: 9p.egg.
- Documentation: http://chicken.wiki.br/9p.
Thanks Sqweek for letting us know.
New acme-sac for Mac OS X release ( By uriel Last mod: Jun 10 16:44 )
Underspecified has released version 0.29 of acme-sac for Mac OS X. Changes include:
- Added a proper quit apple event handler to prevent Acme SAC from not responding to quit requests from logout and the task switcher.
- Updated version.h and Acme SAC's "Get Info" version string to include the SVN revision number as per suggestions by Caerwyn and Axel Belinfante.
Launching ( By uriel Last mod: Jun 28 01:13 )
NineTimes will be a site for all news and stories about Plan 9, Inferno, 9P, and any related technologies.
We are slowly getting started, but news items and ideas are welcome.
Some things that might be nice but are not implemented are: categories/tags and comments. (Anyone interested in implementing this feel free to submit patches for werc ;))