
File indexing and searching for Plan 9 [pdf] - vezzy-fnord
http://lsub.org/ls/export/tags.pdf
======
mycroftiv
lsub has done so many interesting Plan 9 projects which are so little known
(and used). I have tried to read most of nemo's papers, but I admit I haven't
actually used much of his software. Nowadays it seems that his projects are
all self-contained rather than being userspace software for traditional Plan
9. There is still a lot of exploration to be done in the best semantics for
implementing 9p servers for various purposes.

~~~
jd3
I'm just glad that there are still people (prmiarily nemo/francisco
ballesteros/9front team/cat-v) hacking away at
Plan9/Inferno/[nix/octopus/planb]/etc. In a world where corporate OS research
is all but dead, it's definitely nice to see.

~~~
dmytrish
Is corporate OS research really dead? We have L4, seL4, Xen, Mirage OS,
Singularity nowadays.

It's more like the focus has shifted from traditional OS kernels into
virtualization, distributed systems and verification.

~~~
iheartmemcache
Other than formal verification of your Ring 0 and Ring 1 kernel components,
(L4 not withstanding- there seems like genuinely interesting innovation coming
out of that project), it seems like the rest of those are re-implementations
of concepts that have been around for decades. We've gone full circle back
into virtualization that IBM System 360 -> z-Series and VAX/VMScluster had.
The difference is now you have all this tech that used to cost millions of
dollars, available for a few hundred thousand dollars, making it way more
accessible to the "non-SAP/Oracle/IBM" demographic.

RE: seL4 borrows a lot of TrustedBSD (and to some extent Trusted Solaris). I
don't know what the technical implementation details of Xen/XenServer are but
once you add all the doo-dads, you've basically got VMware ESX with
VMotion/HA/VSan in terms of functionality. I'll give VMware credit because
VSan appliances are an easy-to-configure-and-deploy HA fairly-high-IOPS
component of the VMware suite that's going to be a EMC SAN killer. The
innovation there is how well it's integrated into the rest of the VMware
virtual networking/vMotion/HA/disaster recovery suite, though, and not
anything you could present at a conference.

I haven't looked at Mirage recently but I don't think they're doing anything
really groundbreaking (i.e. academically; you won't see papers being presented
on it)- a clever unikernel and useful tool but certainly not research. Read
the old IBM Redbooks for z/OS and there's are numerous common components
between the 1980s implementation of a System/390 running a hypervisor and and
the Xen/ESX internals. I can only comment on IBM's stuff with confidence as a
former IBMer, but VAX/VMS' clustering probably shares a lot of of what ESX is
doing.

Other than IBM and MSR, a heavy funder of SPJ at Haskell and F# support as a
primary language, definitely paid for itself many times over w/r/t language
research the Python 3.5 async await syntax-sugar and, to some extent
semantics, which was influenced by C# clearly, derived from F#2. Apple has a
few people working on Clang (though not LLVM IIRC, so eh). Facebook has a
really interesting language agnostic suite of analysis (primarily static)
which I'm tracking carefully because it looks like it has a boatload of
interesting capabilities.

There's a lot of interesting research going on, but not much of it is done by
corporations, Microsoft Research notwithstanding.

~~~
vezzy-fnord
Mirage seems like the continuation of exokernels, except designed to run under
a bare metal hypervisor instead of a raw microarchitecture. I suppose being
OCaml is a nice perk, though ultimately their scope is very limited (deploying
applications).

------
madawan
I love reading these little blurbs about Plan9. I haven't played around with
it too much but it feels very "modern" (I know it's old).

What are some of the ways a beginner can get into Plan9? Can I use it as a
Desktop Operating System on my old Thinkpad? What can I do with it? Does it
run a modern browser? Could it run QEMU?

~~~
dmytrish
I tried to run an original Plan 9 image, it is quite outdated (Ethernet
configuration in QEMU silently fails, for example; half of its internet
resources are either vanished or temporarily unavailable). Maybe, it's just
not for beginners.

I've had much more luck with 9front distribution, it seems maintained at
least.

A desktop OS is a vague term, but you have to be super undemanding to use Plan
9 in the modern environment. If you plan to develop on it, be aware: it's
quite possible, but it is not POSIX-compatible, it has its own, often quite
opinionated tools (Acme editor with its obsessive three-button mouse usage is
something I could not get used to), it is often a world-in-itself. It has C,
Go, Mercurial, Python though. Don't expect many opensource projects we take
for granted to be available (databases, servers, etc). However, 9front has its
own "repository" [0] that has ssh, vim, ghc and other basic Unix tools.

No, neither Plan 9 nor 9front run a modern internet browser. A modern browser
is a complex, non-portable, monolithic, demanding beast. It just does not fit
the Plan 9 vision, so the common piece of advice is to run a VNC session to a
mainstream OS to browse the internet. `elinks` is "a graphical browser"
according to Plan 9 people (and I rather agree).

This is impression of a beginner, so feel free to correct me.

[0] [http://www.plan9.bell-
labs.com/wiki/plan9/Contrib_Index](http://www.plan9.bell-
labs.com/wiki/plan9/Contrib_Index) (oops, it is offline at the moment).

~~~
iheartmemcache
"Opinionated" yes, but entirely consistent with the UNIX mentality. One tool,
to do one thing, done well, chained together.

I love emacs so, so much (I'm the nerd who has foot pedals, and I've spent at
least 1k hours perfecting my .emacs.d over the last 10 years). It's ability to
meta-modify itself is incredible.

Editor rant for nerds who have spent at least 100 hours on .vimrc or emacs.d:

But ACME takes it to the next level. It feels like Smalltalk. It exposes all
buffers via a FUSE block device you can mount, and all of a sudden you can
feed buffers or sub-selections of buffers to standard UNIX utils. Literally
everything that takes input from STDIN you can pipe to, and optionally return
to the same buffer via STDOUT. You're no tied to languages. Hating Vimscript
or Elisp becomes irrelevant because as long as you can run the binary and pipe
to/from it, you can manipulate your data.

It's fantastic for exploratory scripting, literate programming and my only
qualm with it is I'm a home-rower. (That is, all of my interfacing revolves
around keeping my wrists and about 1/4" of my lower palm. My wrists are
planted in that specific position 98% of the time, with movement primarily
centered around pivoting my wrists about those two radial points).

My idea is to use Caps as a meta-key, then have s,d,f act as 1,2,3 on the
mouse. Even with chording, it doesn't impose a stretch.

If you are passionate about editors, watch Russ Cox's talk on ACME.
[https://www.youtube.com/watch?v=dP1xVpMPn8M](https://www.youtube.com/watch?v=dP1xVpMPn8M).

