i think it is a mistake to reintroduce single even streams let alone
`callbacks'.
it's easy enough to provide a device (say /dev/scancode) or a consctl mode
that gives you the raw keyboard codes. we used the former in inferno,
but the latter might be more logical since it's a different mode
of th
in the slow-network situation the thing you're responding to on the display
might not be accurate (eg, feedback delayed) which low-level input merging
won't address.
(actually, the only time i have trouble with acme is when the mouse positioning
is marginal and it slips. otherwise, no, i don't fin
for the RISC processors, it should be relatively straightforward to do the
64-bit
variant of ?[acl], given an existing 32-bit one,
and i'd be surprised if the applications also didn't work immediately
since they run in 64-bit mode on amd64. (anyway, they required relatively little
work, and the co
There are GSoC project suggestions at http://gsoc.cat-v.org/ideas/
but I think more are needed, and that it would be especially good
to have a further set of useful but simpler and smaller projects.
Projects need to be non-trivial for GSoC, but shouldn't
be hard enough that many of us would shun t
>A modern cfront is nearly impossible. Templates make it hella-hard.
really? how is that?
>GSoC isn't entirely about completing a
>project: the scope of a project may just be laying groundwork or a
>foundation for a later project which involves the porting.
Based on the experience last time, I think it is better to
have simpler projects that are straightforward, self-contained (but mod
>anything graphical draws painfully slowly
>(several seconds to paint the white rectangle while Charon is starting).
that isn't normal, except when using it through drawterm.
it's even fine for me in 9vx on Linux.
>The difference between a VNC client and drawterm (from a rules
>perspective) is difficult to see
i supposed the difference was /mnt/term
> FWIW, native graphics applications (including Hyperglenda) are very fast...
hmm. Inferno is a native graphics application.
i've seen that just recently, but thought it might have been
a failing (very old) drive, or a power failure beyond the endurance of the UPS.
if neither of those are true in your case, it might be worth a deeper look.
i also found there is a persistent problem that `check fix' won't fix.
(since it's
>Inferno plug-in for Safari?
We had a go at a plug-in for Firefox in gsoc2007.
These things (like drawterm, or a hosted Inferno port) are either very easy
or very hard. "very easy" because if the environment is suitable, the
portability
interface for hosted Inferno is basically trivial:
513 F
>in segattach(2) suggests that there is some mechanism to associate
>disk file portions with memory segments (that being what Unix's MMAP
>does, roughly),
not really: it will read initial text and data from an image,
but that's it. apparently if you segfree your data space it
will reinitialise it
>OK, I believe you, but you're not telling me _how_ the "initial text
>and data from an image" is specified. And that is really the bit I
>want to know about :-)
it's set by exec.
>Double clicking e.g. on 'text.txt' only selects 'text' or 'txt', while
>one usually wants the whole. The same with absolute paths like
>'/usr/ruda/lib/profile', etc. In linux a double-click usually
>highlights the whole and usually this is what I want.
one man's `usually' is another man's `never'
set | wc -l
8047
well.
certainly if you leave bash or even dash set as the shell,
a terminal or 9term window takes ages on ubuntu. set the shell to p9p rc,
9term starts straight away and you're a better person for it.
i'd have thought that soft updates ensure consistency,
but a halt command ensures that all the changes are actually written.
>Conceptually, anyway. Why is everyone always so hell-bent on hair-splitting? :P
probably the other options suggested by the careers advisor were theology and
hairdressing.
this discussion of checkpoint/restart reminds me of
a hint i was given years ago: if you wanted to break into a system,
attack through the checkpoint/restart system. i won a jug of
beer for my subsequent successful attack which involved patching
the disc offset for an open file in a copy of the Sla
>For speed of light in fibre optic 30ms is about 8000km (New York to San
>Francisco and back)
>in that 30ms a 3.2Ghz P4 could do 292 million instructions
i think that's just enough to get to dbus and back.
lcc is nothing like as hard to compile as gcc (which has got worse, much worse,
over the years).
funnily enough, my gcc bootstrap compilation is still going (on a multi-core
linux machine).
it started over an hour ago. bizarre.
>I will be able to adjust the Plan 9 kernel sources to
>compile under GCC to bootstrap Plan 9 on the Yeeloong. No doubt there
>will be question that this list will be asked to assist with :-)
since the hard part is writing drivers, just do a normal port using v[acl].
not fussing about with all th
>So you are a bit out of luck here on MIPS [for 64-bit compilers]
64-bit compilers for 64-bit RISC architectures are fairly easy,
at least in the sense that we know what to do. amd64 wasn't quite
as easy because it was non-RISC (and as weird as x86),
had a completely different FP model, and was th
my home and work mailboxes were overrun by spam,
until quite recently, thousands of messages, so it
might either have been overlooked or shunted into
my spam box because of the character set choice.
anyway, try again, just for fun at charles.fors...@gmail.com
> it might have been ... shunted into my spam box because of the character set
> choice.
and that's indeed where i found it,
so i've also got the questions now.
anyone else ever seen things like this from fossil? it seems a bit wayward...
# on the fossil console, after `disk full' returned in errors:
main: df
main: 10,046,783,488 used + 35,180,756,598,784 free = 6,431,293,440
(156% used)
main: snapclean 3600
main: df
main: 3,000,909,824
>Of course, it broke down somewhat because the language of strings
>necessarily all that well suited to describing trees whose elements
>come from a completely different domain, but I still think the idea
>has some merit. This was in 2003; I gather things like that are now
>beginning to become som
i suspect it would ultimately make more sense to put this at
inferno-os.something
(and we've got a few)--- Begin Message ---
Hi!
I've brought up a wiki for Inferno, at http://inferno.makesad.us
(tcp!inferno.makesad.us!wiki for Acme users). Its running wikifs on
Inferno, appropriately enough.
I'm
>The Evolution of Conciousness in the Breakdown of the Bicameral Mind.doc
it's not worth worrying about for that book (i think it's `Origin' not
`Evolution')
i am astounded it keeps resurfacing.
>The only drawback so far seems to be the fact that if one
>needs flexibility, then every file becomes a subdirectory.
>Not that it is scary or anything, but it smells too much
>of resource forks (or may be I'm just too easily scared).
it's the other way round: they ought to have represented
colle
>I think Tog's conclusions (the single set of studies put forth whenever this
>thing
>comes up) are poorly made ...
it turns out that there is rather older work that supports
much the same conclusion, which i probably saw mentioned in HCI Remixed,
since that's one i've read recently.
>I'm just not sure time is the right thing to measure.
it wasn't just time, but included other aspects such as accuracy.
``but i want to be slow AND, overall, inaccurate!''
>Also, you don't have the scrollwheel buckling and rolling around as you try to
>mid-click.
i found that with nearly all the ones i tried, but
the small Gigaware wireless optical notebook mouse cat. number 26-284
from Radio Shack has a scrollwheel with enough resistance
that it doesn't do that, a
"The software architecture is simple — Google Chrome running within a
new windowing system on top of a Linux kernel."
although most of the technology news reports i've seen today appear not to have
read the googleblog (or at least, not that far into it).
h% 9fs sources
srv tcp!sources.cs.bell-labs.com: mount failed: restricted remote address
virgin media changed my IP address overnight. reverse lookup gives a subdomain
of
virginmedia.com, but presumably it's the IP address that sources is restricting?
Oberon takes advantage of a structured text representation
where both the interpretation and graphic representation
of particular elements is provided by Oberon modules.
One demonstration had a little animated cartoon character
that could be cut and pasted into another frame, where it
continued to
>perhaps i've been asleep at the swtch, but i don't recall seing writes
>on closed channels terminate programs with a note.
sys: write on closed pipe
mainly to kill off a pipeline when the thing at the end has finished.
i think that might be the only instance where a note is used.
disconnecting a usb device should result (eventually)
in a suitable status on the relevant hub, and thus
shouldn't require a timeout to get an error back to the user.
devices that don't respond because they are in a bad
state can be unplugged (if removeable).
built-in devices on built-in hubs tha
>not for network connections?
i think pipe is the only case, and even that is suppressed
for pipes that carry 9p, after mounting.
d character and block "special files" as special
types of files in a physical file system, to represent devices.--- Begin Message ---
On Jul 19, 2009, at 2:55 PM, Charles Forsyth wrote:
not for network connections?
i think pipe is the only case, and even that is suppressed
for pipes t
>Before I say anythign daft, what's '+'? It does not appear to be special on my
>system.
it's interpreted by mkfs in its proto file to mean all the substructure of a
directory.
see mkfs(8).
>pipe would return -1 (and set a error condition) and the
>applications were paying attention (and I'm pretty sure all
>applications on Plan 9 would do a reasonable thing when
>presented with -1 from a write).
they only notice when the write occurs. suppose that takes
several minutes of computatio
you're right. i wasn't thinking correctly.--- Begin Message ---
On Mon, 2009-07-20 at 10:53 +0100, Charles Forsyth wrote:
> >pipe would return -1 (and set a error condition) and the
> >applications were paying attention (and I'm pretty sure all
> >applications on P
>if there is no real browser for the platform,
>how will Plan 9 participate in the "cloud computing" (r)evolution?
not using a browser.
careful now.
down with this sort of thing!
>the unicode proposal says that matches depend on (re, locale, input).
>not just (re, input). i would think that is not acceptable.
it's not just the unicode people. shell file name matching takes locale into
account
which often makes it case-independent (even with case-dependent
file systems).
sorry. i accidentally deleted the first line of that reply:
it will be mpdiv via mpmod via mpexp via rsaencrypt,
with a zero modulus (which suggests the key wasn't unpacked correctly).
but if you make an entry in the bugs list ... etc
if you make an entry in the bugs list at inferno-os.googlecode.com i'll look at
it shortly.
just stop processes with s->ref > 1 from freeing parts of s with ibrk.
it's not as if anything ever does in practice.
>with a zero modulus (which suggests the key wasn't unpacked correctly).
my deliberate mistake (it won't be using rsaencrypt but rsadecrypt)
happened to highlight the actual problem, which is that strtosk
shouldn't accept a string that looks to me (if not to it)
like a public key not a private/sec
this resulted in a little side discussion.
to save someone else from having to break a strong oath about 9fans,
i'll sum it up. the existing code handles this situation.
when several processes share a segment, and any one of them
decides to shrink the segment, all the processes must see
the change
>but my testcase crashes a uniprocessor system, so here is no
>waiting for mmuflushes on other processors going on.
it ensures mmuflushes in all other processes (sharing that segment) as well.
in fact, the crash you describe just emphasises that point:
the page reference no longer exists, hence th
you can get similar effects by remapping things.
i meant that it isn't likely to happen by accident, so am i bovvered?
fault386 needs to be fixed mainly by or for people running a shared cpu
server with hostile users (ie, students).
for the rest of us it might be more useful to have the panic
to pr
>maybe the kernel should use something like this to validate pointers
>to null terminated strings?
it could just call vmemchr correctly
or vmemchr could be a touch more careful
>the extra 4 pins are not required, but
>they do give one extra flexability in selecting a power
>supply.
the original uniprocessor intel atom board required
the extra 4 pin connection to be made (or bodged).
>8c complains, there is **certainly** an algorithm error somewhere
for certainties, (such as many type errors) 8c unlike some others
generates fatal errors, not warnings. it's a warning because it can't be
absolutely sure that you don't know what you're doing, or that you
aren't particularly cunni
>Soldering iron (nice old temperature controlled Weller) breaks down (never
>heard of)!
that's amazing.
> ... Inferno's implementation of mp3 in the kernel device file ...
it does?
>we have scsi and ata.
>and that's enough for me.
that's more than enough for me.
>Hardware 24...@192khz.
the human ear can't hear as high as that
still, it ought to please any passing bat!
Hi-fi, hi-fi, ...
sorry, i did realise. i'm afraid i just couldn't resist slightly
misquoting Flanders and Swann's `Song of Reproduction' (High Fidelity).
http://www.amazon.com/Complete-Flanders-Swann-Georges-Brassens/dp/B06T4S/ref=pd_sim_b_1--- Begin Message ---
Charles Forsyth wrote:
>
i use html, then any browser will do, even ie6 for most things.
i use an rc script and awk to take an outline format such as
- burble
- more burble
- even more burble
with some other conventions to allow embedded code fragments.
it's obviously easy to link to
qed allowed naming of regular expressions using `e' and their recursive
invocation
using \E, with results suggested earlier.
http://cm.bell-labs.com/cm/cs/who/dmr/qedman.html
http://cm.bell-labs.com/cm/cs/who/dmr/qedman.pdf
``It should be noted that the ability to define regular expressions recu
>How about we convince the mailing list software to stop
>inserting Reply-To headers.
please don't. it's a list, with reply to the list.
>IMHO, I'd say C is C and I think it's better to leave
>it as it is. If you want a language with extra features you can
>probably find one.
the blocks thing only works (apparently) by having two (visible) classes of
function pointers.
ugh. `clang' is apparently not just the name of the frontend
>Perhaps he [me?] can further elaborate.
i certainly did not have comeau in mind.
there's a bug in the control of the software cursor in plan 9,
probably when loadimage is used. it can leave what my children call chicken
tracks,
as it updates the cursor. it shows up in at least vnc and inferno because they
use the equivalent of
loadimage on the screen to update their displays.
>is it valid just to add to make the porting non-destructive?
>#ifdef Plan9
>#define void unsigned char
>#endif
not really, as a global define. it's legal to write
Type *t;
t = malloc(sizeof(*t));
and that won't work unless malloc returns a real void* (only
void* is compatible wi
if people would leave off moaning about moaning,
we'd clear the space for more moaning about lisp
although the former did have the advantage that the
messages were shorter and didn't quote the bulk of
all previous messages.
anyone written any software recently?
at this point it probably doesn't ma
you might consider using a sed script to change the CT_.* style #defines,
and run the sed script from the mkfile/makefile, so although the
porting is (in your sense) `destructive' it's done by changing the
original source file automatically. you could sed (say) from a .h.orig to a .h
using a single
>I am trying to port nhc98 the bytecode haskell compiler.
i see. that makes it much harder to try my suggestion.
i wonder why the compiler doesn't generate char* (or unsigned char*) for
those defines? perhaps directly changing that would be better.
if it needed a void* result then
#define CT_v249
we'd have been much better off if Apple had instead spent the
time and effort writing a decent iTunes, or opening their platform
interfaces enough that someone else could do it (and on Linux, not just Mac or
Windows).
> i mentioned that the pool library can act as a big
> kernel lock a few weeks ago. i don't know if anyone
> has thoughts on how to deal with this.
it isn't really a `big kernel lock' in the linux sense.
the big kernel lock was the device by which operating systems
written with only a uniprocesso
it does work, and you can authenticate to plan 9 using
Inferno's factotum (or, if you're running Inferno on Plan 9,
using Plan 9's factotum within Inferno).
the "bad fversion conversion ..." suggests that whatever you're
running with aux/listen1 is spitting out something else before
starting the p
>committing a ".emptydir" file in each directory would be easier.
why bother making it .emptydir (ie, with the dot) when that makes it
invisible on broken host systems (with the ls bug) but visible under inferno
itself.
more important, and the reason i didn't do that,
if it's visible under infern
>Perhaps a rule in the mkfile which would check/create empty directories?
perhaps. there are several alternatives, and no doubt i'll switch
to use a mix as appropriate. the annoying thing is that
previously, whether through tar, replica, or even subversion, a suitable
skeleton would appear without
> cat -
cat /fd/0
>[rog] i'd be up for driving, assuming my UK driving license is sufficient.
>[bill]License should be no problem with any of the major rental agencies.
i've never had any trouble, but note that with a UK licence,
if you've got a photocard, you must also produce
the paper part: the `licence' is act
>Or is there a way via the usb port to get serial console (does not
>seem so from block diagram)
yes. the mini-usb connector is, in fact, a reverse rs232-usb device
that puts the internal rs232 console on that external connector on usb.
you can just plug it in to a usb connection on another machin
>I'll try to get an european version here.
the device itself still has a US style plug attached to it.
the only difference is that it comes with one of those power leads
with a figure-8 connector and a plug (UK in my case but presumably euro in
yours).
to use that, you need to unscrew the US styl
this ought to have been better organised so we could all set off
from the airport at once http://www.youtube.com/watch?v=YHa_jqxnn4o--- Begin Message ---
I'll be in around 9pm or so the 20th, if I can give anyone a ride I will.
ron--- End Message ---
International arrivals at ATL might be unprepared for the unusual procedure
after immigration, baggage reclaim and customs. Having passed through customs,
you reach a fork in the path with a choice between Atlanta and Transit
Passengers.
(I think it was left for Atlanta.) Then there's an extra sur
it's /rc/bin/ape/ls that would change, not Plan 9's ls-proper.
what does autoconf do with the `inode number'?
it isn't protecting against double wakeups, but
instead detects a bug in the code. there's an invariant
that the rendez and the process point to each other
while the process is asleep.
wakeup checks that invariant.
there are three primitives (sleep, wakeup and note)
and at different times in the pa
>however the invarient that there is exactly one wakeup for
>every sleep requires some careful accounting that
>can be equally error prone.care not to double-interrupt.
if a process p sleeps on r for condition f, and there are two wakeup(r), only
the first wakeup does anything because by the time
>If Plan9 can 'plumb' a remote sound card, (a questionable example long
>publicized) I'm sure it can do so with a mouse.
it isn't plumbing, but export/import, and it's useful.
i had a usable sound system on my r3000 indigo, but my PC had none.
on the pc, i imported the indigo's /dev and played so
> I don't know how hideously complicated it would be, to implement a module
> interface that would support loading linux modules into whatever other OS
> such as Plan 9.
only as hideously complicated as the linux kernel interfaces might be,
but sadly those are indeed hideously complicated. try tra
>Reality is that the rate of introduction/change of hardware/silicon is too
>fast
>for any small - or even 'medium sized' team (FreeBSD for example) to keep up
>with on their own... and that gap is widening.
that's not usually the biggest problem, although it's true that lack of time
can be a p
>If it is, there's a depth of cleverness in the new Plan 9
>security model that I had missed until now, namely the elimination of
>the intermediate "superuser" step required by the Unix paradigm.
indeed that's the point.
the fppc points to the offending instruction.
g = 4215866817.;
x = (int)g;
does g fit in (int)? (no, (int) is 32 bit signed.)
if (int) is (uint) it will fit, and not trap.
#include
#include
void
main(void)
{
double g = 4215866817.;
print("%d\n", (unsigned int)g);
print("%d\n", (unsigned int)g);
exits("");
}
8c r.c
8l r.8
./8.out
-79100479
-79100479
no trap. it generates different code.
(obviously the %d should be %ud in this case,
i hadn't noticed the changed example.
it's removing the cast, which probably isn't right, although
in that particular case it's probably better
that it should trap (because the result is wrong).
what is the actual code in awk that's equivalent to that sequence?
those fixes really don't seem right to me. the problem is in getival
or its callers. somewhere along the way, ULONG_MAX is converted to double
and then back to int (directly or indirectly). that yields a trap. now, in the
case
int x;
x = (uint)d;
the compiler is wrong to eliminate
oh! getival is yours? but it's in the changes on the - lines not the + lines.
the diffs have crossed the equator!
i think i understand now.
so the original had statements such as:
wc = (int)getfval(x);
and for excessive values in x (that couldn't be represented as an int)
there was
>the implicit conversion on return also appears botched.
both this:
uint
fun(void)
{
double g;
g = 4215866817.;
USED(g);
return g;
}
void
main(void)
{
uint x;
double g;
x = fun();
USED(x);
g = 1.;
exits("");
}
and
> * who is maintaining the UNIX port of rc shell? (is it still
>Tig?) (if so what's the email address?)
if it's Byron Rakitzis' rc, it's not a `port' to UNIX of Plan 9's rc,
but an independent implementation, with differences in the language,
although it's quite usable and both versions are li
>(And if so, can I build [plan9port rc] and use it independent of the rest
> of the tools?)
building it standalone will be hard, although you can reduce the surrounding
source
considerably, since it uses mainly or only lib9 (plan 9 libc).
a little experiment suggests that once built,
you mig
>bind '#j4.5' /mnt/joined
> ... to get a (read-only) fd that satisfies reads from fd 4
>until eof, then fd 5.
i wonder if there's a way of perverting fs(3)
> i wonder if there's a way of perverting fs(3)
i made the comment fairly idly, so i shouldn't take it too seriously.
>Is there any reason a locked increment is being used?
good question. i thought it might be a new tradition.
i don't think it's needed.
http://man.cat-v.org/unix_8th/1/f77
i'd be surprised if subsequently it had changed much.
1 - 100 of 1197 matches
Mail list logo