<?xml version="1.0" encoding="UTF-8"?>
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns="http://purl.org/rss/1.0/" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:syn="http://purl.org/rss/1.0/modules/syndication/" xmlns:admin="http://webns.net/mvcb/">
  <channel rdf:about="http://blog.gmane.org/gmane.os.inferno.general">
    <title>gmane.os.inferno.general</title>
    <link>http://blog.gmane.org/gmane.os.inferno.general</link>
    <description/>
    <syn:updatePeriod>hourly</syn:updatePeriod>
    <syn:updateFrequency>1</syn:updateFrequency>
    <syn:updateBase>1901-01-01T00:00+00:00</syn:updateBase>
    <items>
      <rdf:Seq>
        <rdf:li rdf:resource="http://comments.gmane.org/gmane.os.inferno.general/4988"/>
        <rdf:li rdf:resource="http://comments.gmane.org/gmane.os.inferno.general/4983"/>
        <rdf:li rdf:resource="http://comments.gmane.org/gmane.os.inferno.general/4977"/>
        <rdf:li rdf:resource="http://comments.gmane.org/gmane.os.inferno.general/4974"/>
        <rdf:li rdf:resource="http://comments.gmane.org/gmane.os.inferno.general/4972"/>
        <rdf:li rdf:resource="http://comments.gmane.org/gmane.os.inferno.general/4968"/>
        <rdf:li rdf:resource="http://comments.gmane.org/gmane.os.inferno.general/4966"/>
        <rdf:li rdf:resource="http://comments.gmane.org/gmane.os.inferno.general/4961"/>
        <rdf:li rdf:resource="http://comments.gmane.org/gmane.os.inferno.general/4959"/>
        <rdf:li rdf:resource="http://comments.gmane.org/gmane.os.inferno.general/4956"/>
        <rdf:li rdf:resource="http://comments.gmane.org/gmane.os.inferno.general/4955"/>
        <rdf:li rdf:resource="http://comments.gmane.org/gmane.os.inferno.general/4949"/>
        <rdf:li rdf:resource="http://comments.gmane.org/gmane.os.inferno.general/4944"/>
        <rdf:li rdf:resource="http://comments.gmane.org/gmane.os.inferno.general/4925"/>
        <rdf:li rdf:resource="http://comments.gmane.org/gmane.os.inferno.general/4919"/>
        <rdf:li rdf:resource="http://comments.gmane.org/gmane.os.inferno.general/4918"/>
        <rdf:li rdf:resource="http://comments.gmane.org/gmane.os.inferno.general/4917"/>
        <rdf:li rdf:resource="http://comments.gmane.org/gmane.os.inferno.general/4913"/>
        <rdf:li rdf:resource="http://comments.gmane.org/gmane.os.inferno.general/4912"/>
        <rdf:li rdf:resource="http://comments.gmane.org/gmane.os.inferno.general/4902"/>
      </rdf:Seq>
    </items>
    <image rdf:resource="http://gmane.org/img/gmane-25t.png"/>
    <textinput rdf:resource=""/>
  </channel>
  <image rdf:about="http://gmane.org/img/gmane-25t.png">
    <title>Gmane</title>
    <url>http://gmane.org/img/gmane-25t.png</url>
    <link>http://gmane.org</link>
  </image>
  <item rdf:about="http://comments.gmane.org/gmane.os.inferno.general/4988">
    <title>Scripting Languages</title>
    <link>http://comments.gmane.org/gmane.os.inferno.general/4988</link>
    <description>&lt;pre&gt;When the Tk module was developed what was the reason for not including Tcl?

Has anyone ported Python to Inferno/Limbo?

Has anyone coded a TIL(threaded interpreter language, eg. Forth) in Limbo?

Does anyone have a complete list of development and application 
software? This would help so we do not have to recode what has already 
been done!

By the way, thank you for Inferno it makes using multiple 
processors/systems such a pleasure.

Regards,
Paul


&lt;/pre&gt;</description>
    <dc:creator>Paul Lycett</dc:creator>
    <dc:date>2010-03-07T14:59:31</dc:date>
  </item>
  <item rdf:about="http://comments.gmane.org/gmane.os.inferno.general/4983">
    <title>Opinion on idea for using Inferno as the base for a virtual reality system</title>
    <link>http://comments.gmane.org/gmane.os.inferno.general/4983</link>
    <description>&lt;pre&gt;Hi list,

I am always looking around at different OSes and recently came across Inferno.

I have read a lot of the overview docs and downloaded the source and got it 
running on my GNU/Linux box. I really like the concepts encapsulated in the 
model.

My other love is building virtual reality worlds and it struck me that Inferno 
makes half of a really neat P2P VR system.

I brain-dumped a page of my ideas here:

http://home.exetel.com.au/impact/inferno.shtml

and if anyone would like to make an opinion on my ideas (positive OR negative 
welcome as long as it is constructive ;-) I would very much appreciate it.

I am not a real programmer, though I understand programming concepts and can 
do simple things in C, Java, SmallTalk, Python. At best I aspire to be a 
really good virtual world content producer, however if any real programmers 
thought this was a worthwhile and ultimately doable proposition I am able to 
drop one day paid work per week to allocate to learning how to contribute 
meaningfully to realising the goal outlined.

Regards,
LaeMing Wang
DipIT B.Ed(IT) B.Teach(Primary)
Australia

&lt;/pre&gt;</description>
    <dc:creator>LaeMing</dc:creator>
    <dc:date>2010-02-27T01:01:22</dc:date>
  </item>
  <item rdf:about="http://comments.gmane.org/gmane.os.inferno.general/4977">
    <title>automated/unatended signer startup</title>
    <link>http://comments.gmane.org/gmane.os.inferno.general/4977</link>
    <description>&lt;pre&gt;When starting auth/keyfs, it always (that I can tell) prompts for the  
key to use to decrypt the key database. Is there a recommended way of  
daemonizing this? I'd like to not have the keydb password sitting  
around unencrypted on disk, obviously.

Anthony

&lt;/pre&gt;</description>
    <dc:creator>Anthony Sorace</dc:creator>
    <dc:date>2010-02-25T21:52:27</dc:date>
  </item>
  <item rdf:about="http://comments.gmane.org/gmane.os.inferno.general/4974">
    <title>styx fid, quid questions</title>
    <link>http://comments.gmane.org/gmane.os.inferno.general/4974</link>
    <description>&lt;pre&gt;1. when comunicating with servers, do the clients use quid from styx
r-messages, or the fid is enough?
2. how clients arranges so that fids are different?
3. how path paramerter from quid is generated?

dorin

&lt;/pre&gt;</description>
    <dc:creator>dorin bumbu</dc:creator>
    <dc:date>2010-02-24T16:18:39</dc:date>
  </item>
  <item rdf:about="http://comments.gmane.org/gmane.os.inferno.general/4972">
    <title>empty directories in mercurial repository</title>
    <link>http://comments.gmane.org/gmane.os.inferno.general/4972</link>
    <description>&lt;pre&gt;just checking: is there a script somewhere to recreate the missing
empty directories, e.g. $SYSTARG/$OBJTYPE/lib ?

&lt;/pre&gt;</description>
    <dc:creator>roger peppe</dc:creator>
    <dc:date>2010-02-23T16:18:03</dc:date>
  </item>
  <item rdf:about="http://comments.gmane.org/gmane.os.inferno.general/4968">
    <title>unusual delimiter in webget</title>
    <link>http://comments.gmane.org/gmane.os.inferno.general/4968</link>
    <description>&lt;pre&gt;Hi!

Is anybody knows why appl/svc/webget/webget.b use ∎ (U+220E) as delimiter
between tokens instead of usual space? Space delimiter looks safe and
natural for given tokens. And real delimiter doesn't even mentioned in doc.

&lt;/pre&gt;</description>
    <dc:creator>Alex Efros</dc:creator>
    <dc:date>2010-02-17T23:05:52</dc:date>
  </item>
  <item rdf:about="http://comments.gmane.org/gmane.os.inferno.general/4966">
    <title>(Complete) examples of distributed file systems using Inferno</title>
    <link>http://comments.gmane.org/gmane.os.inferno.general/4966</link>
    <description>&lt;pre&gt;Folks:

Can anyone point me in the direction of some "useful" (and perhaps
complete?) examples of implementations of distributed file systems
using Inferno?  I don't mean obvious things such as using Styx to
import/export resources from one machine to the other but actual,
working examples of distributed file systems implementing crypto,
redundancy and fail-over using Styx as the transport mechanism.

I've seen various mentions of such systems (or the beginnings of them,
at least) here and there in blogs and random PDFs but no workable
project that I can easily download and fiddle with to indulge my
personal curiosity.


Thanks in advance,

Matt

&lt;/pre&gt;</description>
    <dc:creator>Matt Adams</dc:creator>
    <dc:date>2010-02-16T08:01:58</dc:date>
  </item>
  <item rdf:about="http://comments.gmane.org/gmane.os.inferno.general/4961">
    <title>Gauging the "health" of Inferno's on-going development</title>
    <link>http://comments.gmane.org/gmane.os.inferno.general/4961</link>
    <description>&lt;pre&gt;Folks:

Can anyone enlighten me as to the general "health" of Inferno
vis-a-vis on-going development?  I'm curious to know what, if
anything, has been happening with Inferno since it's last major
release in 2004.

I see that the mailing list &amp;amp; IRC channels have fairly low activity
but I don't want to judge the goings-on of the Inferno community on
these two items alone.

Any insight from those who've followed Inferno's development over the
past six years would be appreciated.  I'm trying to gauge it's
suitability for a personal project but would rather not dip my toes
into an environment that appears to have little going on.

(I see fairly regular commits to the official hg repository but those
seem to originate from Vita Nova itself - not sure how much of this is
maintenance and how much is continued development to push things
forward - assuming that's a "need" as such)


Thanks in advance,

Matt

&lt;/pre&gt;</description>
    <dc:creator>Matt Adams</dc:creator>
    <dc:date>2010-02-14T03:17:19</dc:date>
  </item>
  <item rdf:about="http://comments.gmane.org/gmane.os.inferno.general/4959">
    <title>libc0 vs libc?</title>
    <link>http://comments.gmane.org/gmane.os.inferno.general/4959</link>
    <description>&lt;pre&gt;Why does Inferno have both modules/libc.m and libc0.m? And why are
they different but overlapping?

&lt;/pre&gt;</description>
    <dc:creator>Venkatesh Srinivas</dc:creator>
    <dc:date>2010-02-13T20:13:20</dc:date>
  </item>
  <item rdf:about="http://comments.gmane.org/gmane.os.inferno.general/4956">
    <title>inferno-npe KSD</title>
    <link>http://comments.gmane.org/gmane.os.inferno.general/4956</link>
    <description>&lt;pre&gt;Hi!

Just to explain what I'm working on in inferno-npe...

I've added 3 calls to internally to hosted emu: ksd_key_create,
ksd_getspecific, and ksd_setspecific; they're inspired by pthreads's
key_create/getspecific/setspecific.
ksd_key_create() returns an integer, which is a key that can be passed
to getspecific/setspecific, to access a pointer local to that kproc.
ksd_key_create takes a function called a 'destructor', which is called
when the kproc exits via pexit(), which is called on that key. Unlike
pthreads, there is no way to delete a key; I had no need for that.

I added KSD (kproc-specific data) in support of new allocator work. I
am implementing a Solaris/libumem-style magazine layer; an early
snapshot is available in emu/port/objcache.c. At first, the objcache
will not provide an malloc/free interface - it will only provide for
creating 'caches' of objects of the same type. This looks like it will
help - there are a good number of commonly allocated these objects,
primarily Progq, Prog, ... structures. The KSD will provide for
kproc-local magazines, so that the hot path for allocation/free avoids
locks. Eventually, I hope to support allocations from the magazines.

Why the allocator? In some timing results from dtrace on a
Solaris/sparc system (without the JIT), Inferno running thread-ring,
poolalloc + poolfree checked in third in total time spent for
functions; (xec checked in first, as expected).

I'm not working directly on the malloc/free/poolalloc/poolfree; while
that would speed up all allocations (not just specific ones from
Mainmem); perhaps I should be? I didn't, because I didn't understand
the interactions between the Block headers (BHdr) and the garbage
collector. Even otherwise, allocating related objects close together,
particular with Solaris-style ctors/dtors is probably a good idea...

Comments appreciated!

&lt;/pre&gt;</description>
    <dc:creator>Venkatesh Srinivas</dc:creator>
    <dc:date>2010-02-12T19:04:02</dc:date>
  </item>
  <item rdf:about="http://comments.gmane.org/gmane.os.inferno.general/4955">
    <title>inferno administration</title>
    <link>http://comments.gmane.org/gmane.os.inferno.general/4955</link>
    <description>&lt;pre&gt;This issue comes up for me every year or so:

What's the best, recommended, way to handle clean Inferno install and administration?

I've read and re-read "Installing the Inferno Software" but continue to get messed up every once in a while.  I think my biggest problem is that I tend to use Inferno as only a single-user system.. thus losing some of the theoretical benefits.

The man pages are good, but has anyone come up with a base paper/article for getting people up to speed on administering a network of Inferno machines?

-jas


&lt;/pre&gt;</description>
    <dc:creator>Jeff Sickel</dc:creator>
    <dc:date>2010-02-12T17:07:22</dc:date>
  </item>
  <item rdf:about="http://comments.gmane.org/gmane.os.inferno.general/4949">
    <title>linux/arm jit problems</title>
    <link>http://comments.gmane.org/gmane.os.inferno.general/4949</link>
    <description>&lt;pre&gt;hi all,

the jit on linux/arm does not work for me.  i'm trying it on debian lenny
(5.0, the latest stable) on a sheevaplug (ARMv5TE).  an attempt to
start it looks like this:

$ emu-g -c1
[Emuinit] Broken: "Segmentation violation"
Killed

i've already had a look, but haven't been able to find a solution.
(the mailing list archive at gmane does not let me search at the moment,
perhaps it is a known problem).
at least the dis interpreter works fine.

so far, i am wondering how the jit (glue) code handles different abi's.
if i understand correctly, libinterp/xec.c:/^xec calls the jit code
through comvec().  i would expect the preamble to save some registers:
it seems that linux with its "eabi" (as specified by arm) is callee-saves.

i haven't read the full jit yet, so my suspicion about the abi is likely
premature.  and at least my first attempt to save the registers still
results in the same crashes...  i added instructions to the preamble to:

1. store callee-saves registers that the jit code modifies
2. call the real preamble just a few instructions forward
3. restore the registers
4. return

the preamble then looks like this:

00144e30 e92d43f0       MOVM.DB.W       R13,[R4-R9,R14]
00144e34 eb000001       BL      144e40
00144e38 e8bd43f0       MOVM.IA.W       [R4-R9,R14],R13
00144e3c e28ef000       ADD     $#0,R14,R15
00144e40 e59f500c       MOVW    $#11acd0,R5
00144e44 e585e020       MOVW    R14,#20(R5)
00144e48 e5959008       MOVW    #8(R5),R9
00144e4c e5958004       MOVW    #4(R5),R8
00144e50 e595f000       MOVW    #0(R5),R15

the first four instructions are new.  only r4-r9 are saved.  r0-r3 are
scratch, and higher registers are not used in the jit (unless i've
missed something, perhaps punted functions make it necessary to save
the others too).  also, i'm not 100% sure the movm's do what i intend
to do.

the segmentation fault handler mentions addr=0xc (after modifying the
handler to take a siginfo_t* arg).  perhaps that hints at the cause?
i don't see it though. :)

the assembler above is printed by das(), from libinterp/das-arm.c.
shouldn't the parameters to the MOVM instructions be reversed?  the
first MOVM has bit 20 not set (STM, register list to addr of r13), the
second MOVM does (LDM, from addr of r13 to register list).  and aren't
()'s around R13 appropriate too?

any hints/insights about causes,solutions,workarounds are appreciated!
in the mean time, i'll be reading more of the arm jit.

cheers,
mjl

&lt;/pre&gt;</description>
    <dc:creator>Mechiel Lukkien</dc:creator>
    <dc:date>2010-02-09T13:30:57</dc:date>
  </item>
  <item rdf:about="http://comments.gmane.org/gmane.os.inferno.general/4944">
    <title>totally OT: Google Wave - collaboration (was: Re: Color depth)</title>
    <link>http://comments.gmane.org/gmane.os.inferno.general/4944</link>
    <description>&lt;pre&gt;
After using wave lightly for a few weeks for keeping some ideas
private and sharing some with friends, I find the planned  "Save/Put
each character" feature suggesting a - probably unplanned, but
nevertheless - "warm and cosy" reliability feeling. (Yes, I also
think, that trusting google your content is a totally different
issue.)
Although I can hardly imagine using it for collaboration (concurrently
editing documents, aka chating) _as advertised_. It not only looks
ridiculous in the video, we tried it and it is ridiculous. Although I
have to admit, that most of the time this type of "collaboration"
diverts into a fun war-typing (new word?) game. I think wave needs new
conventions to be usable as advertised.
On the other hand, I can imagine using wave as a front-end for some
collaboration based applications.

&lt;/pre&gt;</description>
    <dc:creator>fgergo-Re5JQEeQqe8AvxtiuMwx3w&lt; at &gt;public.gmane.org</dc:creator>
    <dc:date>2010-02-02T14:51:07</dc:date>
  </item>
  <item rdf:about="http://comments.gmane.org/gmane.os.inferno.general/4925">
    <title>Laptop File System</title>
    <link>http://comments.gmane.org/gmane.os.inferno.general/4925</link>
    <description>&lt;pre&gt;I've put some updates to my laptop file system on Google
code.  I hesitate to claim it's ready for prime time, but I've
started using it and I don't plan to do anything else to it
unless I run into some problems or someone asks for it
to do something.  You can find it in the source and in the
downloads on:

http://inferno-bls.googlecode.com/

BLS


&lt;/pre&gt;</description>
    <dc:creator>blstuart-Bdlq13kUjeyLZ21kGMrzwg&lt; at &gt;public.gmane.org</dc:creator>
    <dc:date>2010-01-30T04:27:24</dc:date>
  </item>
  <item rdf:about="http://comments.gmane.org/gmane.os.inferno.general/4919">
    <title>inferno .bit format</title>
    <link>http://comments.gmane.org/gmane.os.inferno.general/4919</link>
    <description>&lt;pre&gt;is the inferno .bit format equivalent
to any of the plan9 image formats?

thanks,

r

&lt;/pre&gt;</description>
    <dc:creator>Robert Ball</dc:creator>
    <dc:date>2010-01-20T22:34:21</dc:date>
  </item>
  <item rdf:about="http://comments.gmane.org/gmane.os.inferno.general/4918">
    <title>Color depth</title>
    <link>http://comments.gmane.org/gmane.os.inferno.general/4918</link>
    <description>&lt;pre&gt;Hi there. As I see, the color depth is too low to show 24-bit
pictures. Is it possible to increase the depth? I use a host version
of Inferno (20090630).
&lt;/pre&gt;</description>
    <dc:creator>Pavel Nevidomsky</dc:creator>
    <dc:date>2010-01-20T13:07:46</dc:date>
  </item>
  <item rdf:about="http://comments.gmane.org/gmane.os.inferno.general/4917">
    <title>Some 386 experiments...</title>
    <link>http://comments.gmane.org/gmane.os.inferno.general/4917</link>
    <description>&lt;pre&gt;Hi everybody,

Over the past few days, I've run a few experiments with hosted Inferno on i386:

First, I replaced the lock / add / unlock pattern in incref/decref with
a locked XADD. This fairly dramatically sped up the thread-ring benchmark; on
a 2.66GHz Core 2 Duo, from around 11 seconds to somewhere in the 9 sec range.
(a similar improvement was seen on a Core i7 system as well). 
This patch is commited to inferno-npe, if people are interested; it involved 
teaching 8a and 8l about XADD as well. 

Flush off some success, I attempted to tinker with taslock. I first tried to 
replace the XCHG underlying taslock with CMPXCHG; the reasoning was the 
CMPXCHG doesn't involve a write to the lockword in the contended case, which
means that the cacheline containing the lockword will not be brutally stolen
from the first successful writer.

Sadly, I noticed no performance differences on the thread-ring benchmark,
on Roger Peppe's chamenos-redux program, or on an I/O intensive tar-like
program I'm working on (the theory was that I/O intensive programs will
involve a high ratio of syscalls, so lots of threads releasing() and 
acquiring()).

I also tried adding an unlocked read before the XCHG; I've often seen
this described as an optimization for i386 spinlocks. No difference seen
here either, all the times are very close together. Perhaps the locks just 
aren't contended enough for these tricks to matter.

Just thought people might be interested,
&lt;/pre&gt;</description>
    <dc:creator>Venkatesh Srinivas</dc:creator>
    <dc:date>2010-01-18T04:52:56</dc:date>
  </item>
  <item rdf:about="http://comments.gmane.org/gmane.os.inferno.general/4913">
    <title>Inferno for x86-64 systems?</title>
    <link>http://comments.gmane.org/gmane.os.inferno.general/4913</link>
    <description>&lt;pre&gt;Hi, is there a version of Inferno for x86-64 systems? If so, could
someone please point me in the direction of an installation CD/DVD?
Thanks!

&lt;/pre&gt;</description>
    <dc:creator>David Fockens</dc:creator>
    <dc:date>2010-01-15T11:15:30</dc:date>
  </item>
  <item rdf:about="http://comments.gmane.org/gmane.os.inferno.general/4912">
    <title>icon for emu.exe in windows</title>
    <link>http://comments.gmane.org/gmane.os.inferno.general/4912</link>
    <description>&lt;pre&gt;after some searching i found out how to put an icon in emu.exe...

attached is a patch and icon file (based on /icons/vitanuova.bit) that
will add the icon to emu.exe when compiled on windows (tested on xp,
with visual studio c++ 2008 express).

the "rc" command from the mkfile is the "resource compiler" that comes
with microsoft's compilers.  nt.rc + inferno.ico is turned into an
object file of some sort, named nt.RES, which can be linked into the
executable.

i created inferno.ico with the gimp, as a 64x64 pixel file with 256
indexed colors.  it has three layers, one with the 64x64 image, one with
32x32 and one with 16x16 (i saw drawterm's 9ball.ico does that and it
works, so i copied it).  i think newer versions of windows can use larger
icons (256x256 and 32 bit color), but i don't know the details, i don't
have a logo for that resolution and i've spent more than enough time on
this already. :)
&lt;/pre&gt;</description>
    <dc:creator>Mechiel Lukkien</dc:creator>
    <dc:date>2010-01-14T15:39:08</dc:date>
  </item>
  <item rdf:about="http://comments.gmane.org/gmane.os.inferno.general/4902">
    <title>inferno emu/port/alloc.c question</title>
    <link>http://comments.gmane.org/gmane.os.inferno.general/4902</link>
    <description>&lt;pre&gt;Hi!

In emu/port/alloc.c(), memusehigh() tests if the main pool and heap
pool are larger than their restricted sizes; why is the test for the
image pool disabled? Also why does memlow() only test the heap pool?

&lt;/pre&gt;</description>
    <dc:creator>Venkatesh Srinivas</dc:creator>
    <dc:date>2010-01-11T21:19:27</dc:date>
  </item>
  <item rdf:about="http://comments.gmane.org/gmane.os.inferno.general/4900">
    <title>osleave() question?</title>
    <link>http://comments.gmane.org/gmane.os.inferno.general/4900</link>
    <description>&lt;pre&gt;Hi,

Why does emu/port/proc.c:osleave() take locks for extracting
up-&amp;gt;swipend and zeroing up-&amp;gt;syscall?

Thanks,
&lt;/pre&gt;</description>
    <dc:creator>Venkatesh Srinivas</dc:creator>
    <dc:date>2010-01-11T17:17:17</dc:date>
  </item>
  <textinput rdf:about="http://search.gmane.org/?group=$group=gmane.os.inferno.general">
    <title>Search Engine</title>
    <description>Search the mailing list at Gmane</description>
    <name>query</name>
    <link>http://search.gmane.org/?group=$group=gmane.os.inferno.general</link>
  </textinput>
</rdf:RDF>
