Re: [9fans] Pegasus 2.6 is released

2009-02-02 Thread ron minnich
On Mon, Feb 2, 2009 at 8:26 PM,   wrote:
>> maybe we could dispense with the kernel.
>> it's complicated anyway.  each application could drive
>> hardware itself.  but to make this easier, we'll used shared
>> libraries.  the only system service we'd need is a shared library
>> loader.

um, sadly, this *is* the norm nowadays in HPC. And here you all
thought you were joking.

ron



Re: [9fans] Sources Gone?

2009-02-02 Thread lucio
>> I'm not sure how you'd fix this.  What if only a portion of the block
>> belongs to me and the other happens to be the password file? 
> 
> venti just stores whole blocks.

Yes, but the content isn't guaranteed to be from a single user.  In
fact, venti has no clue.  Change that and it's not venti anymore.

++L




Re: [9fans] Sources Gone?

2009-02-02 Thread erik quanstrom
> > The one and only fundamental limitation of the current interface
> > offered by venti is that I can give it a score to something that
> > doesn't belong to me and it gives me the information back. It is
> > the limitation of the API, not the way data is managed.
> 
> I'm not sure how you'd fix this.  What if only a portion of the block
> belongs to me and the other happens to be the password file? 

venti just stores whole blocks.

if it did as you suggest, that would be a neat trick.
the arenas would reach a maximum size of 256 bytes.
(assuming you stored unique bytes).  everything else
would be index.  but, oh, what an index that'd be.

> You need to draw boundaries at different security entities and that makes
> compression and especially duplicate suppression much less effective.

i'm repeating myself, but that's nothing new.
i don't think you do need to draw boundraries.

it's turtles all the way UP.  given an arbitrarly large
tree, a single change to any leaf will propagate
all the way up creating a new path to the root.
in this respect, libventi trees are very similar to
ken's fs.

the only assumption i'm making is that eactly this
tree has not been stored before.  so really, if you
don't give out the root score, venti won't give you
up.

- erik



Re: [9fans] Pegasus 2.6 is released

2009-02-02 Thread Bruce Ellis
Or as Mark V. Shaney once said ...

"Why can't everyone wake up at 3am, totally confused".

I'm not sure of the relevance.

brucee

On Tue, Feb 3, 2009 at 3:26 PM,   wrote:
>> maybe we could dispense with the kernel.
>> it's complicated anyway.  each application could drive
>> hardware itself.  but to make this easier, we'll used shared
>> libraries.  the only system service we'd need is a shared library
>> loader.
>
> There's your final word in microkernels.  Throw away security and
> things get a lot less complicated.  The human brain does not have,
> that I am aware, security boundaries, why can't we model our personal
> computers on that?
>
> ++L
>
> PS: In jest, of course, but there's some value...
>
>
>



Re: [9fans] Pegasus 2.6 is released

2009-02-02 Thread lucio
> maybe we could dispense with the kernel.
> it's complicated anyway.  each application could drive
> hardware itself.  but to make this easier, we'll used shared
> libraries.  the only system service we'd need is a shared library
> loader.

There's your final word in microkernels.  Throw away security and
things get a lot less complicated.  The human brain does not have,
that I am aware, security boundaries, why can't we model our personal
computers on that?

++L

PS: In jest, of course, but there's some value...




Re: [9fans] Sources Gone?

2009-02-02 Thread lucio
> The one and only fundamental limitation of the current interface
> offered by venti is that I can give it a score to something that
> doesn't belong to me and it gives me the information back. It is
> the limitation of the API, not the way data is managed.

I'm not sure how you'd fix this.  What if only a portion of the block
belongs to me and the other happens to be the password file?  You need
to draw boundaries at different security entities and that makes
compression and especially duplicate suppression much less effective.

You could argue that the security information provides its own
boundaries, but making venti aware of them does add a lot of
complications that in my opinion should be (and already are) solved
elsewhere.  I did propose that compression and encryption ought to be
concurrent in venti, but that solves only part of the problem and
raises new problems such as key management.

++L

PS: As for the problem we're trying to solve, I'm afraid I've long ago
lost track :-)




Re: [9fans] Sources Gone?

2009-02-02 Thread erik quanstrom
> Depends on how you look at it. From the drive's perspective -- you're
> right. Nobody owns blocks. However, if a certain block happens
> to be part of a filesystems that uses this particular drive then
> the ownership can and will be tracked.

the problem comes in the fact that as far as venti is concerned, there
is no filesystem.  the heirarchy bits are done in libventi, so

> The proxy API will have to track the ownership. And it is very likely to
> be more hierarchy-oriented, than stand-alone blocks-oriented.

protecting your root notes boils down to a matter of protecting
your root scores, since we assume that 2^80 is big enough to
deter guessing.  i don't see how a proxy will add security.
could you explain what attack vector you're worried about?

i would think that the least secure part of this is the unencrypted
transmission.

- erik




Re: [9fans] Sources Gone?

2009-02-02 Thread Roman V. Shaposhnik
On Mon, 2009-02-02 at 17:43 -0500, erik quanstrom wrote:
> > I don't think it does. At least not in a way that is obvious to me.
> > The one and only fundamental limitation of the current interface
> > offered by venti is that I can give it a score to something that
> > doesn't belong to me and it gives me the information back. It is
> > the limitation of the API, not the way data is managed. IOW, if
> > a block that I genuinely own happens to also be referenced from
> > a hierarchy that I do NOT have access to -- its ok.
> 
> ownership doesn't mean anything at the venti level.  it really
> is just a virtual disk drive with lba80 content addressing.
> one doesn't "own" blocks on a regular disk drive, either.

Depends on how you look at it. From the drive's perspective -- you're
right. Nobody owns blocks. However, if a certain block happens
to be part of a filesystems that uses this particular drive then
the ownership can and will be tracked.

> suspending the preceeding logic for a bit, supposing that
> you did "track ownership", then

No need to suspend the logic and run this thought experiment. I have
no interest in assigning ACL to blocks. 

That's why I said that the API that venti currently has is ill-suited
for the kind of public usage I have in mind. That doesn't mean that it
should be replaced or mutilated. It simply means firewalling in a spirit
of venti/ro

The proxy API will have to track the ownership. And it is very likely to
be more hierarchy-oriented, than stand-alone blocks-oriented.

Thanks,
Roman.




Re: [9fans] Pegasus 2.6 is released

2009-02-02 Thread David Leimbach
On Mon, Feb 2, 2009 at 2:30 PM, Anthony Sorace  wrote:

> erik wrote:
>
> > it's interesting to compare this with the sleezy not-paths
> > that e.g. gnome programs can take, like uris.  great as long
> > as long as you don't care to use anything but gnome tools.
>
> i had that debate with a kde-loving linux admin. i had been explaining
> why plan 9 was interesting or significant, and he countered with the
> kde example. i was marginally impressed by the number of protocols
> they handled, but when i asked how you'd use it with cat and friends,
> he said "no, just use kate".
>
> i reeled, stuttered, tried to get out something that sounded like
> "layering violation", and ran away. it wasn't even a cost/benefit
> argument; there wasn't any recognition of the costs.
>
> Right but when you consider KDE runs on windows, then it's not as much of a
layering violation... no more than Java is I guess anyway.
The layering violation that I usually point at is the /dev/tcp created by
the bash shell :-).


[9fans] Vac failing

2009-02-02 Thread Venkatesh Srinivas

Hi,

When running vac from Plan 9 port, against a venti running on Unix, we get
these errors:

<... lots of vac -v output ...>
cache block 501: type 8 score 1f6  iostate 1 addr 502 ref 0 
nlock 1
cache block 502: type 8 score 1f7  iostate 1 addr 503 ref 0 
nlock 1
cache block 503: type 8 score 1f8  iostate 1 addr 504 ref 0 
nlock 1
(output goes up to score 200).
vtcachebumpblock: no free blocks in vtCachezsh: IOT instruction ./vac -s -v -h 
tcp!acm.jhu.edu!17034 /export/home

And vac stops. This happens at the same place in /export/home every time we 
try to run vac.


Has anyone ever seen anything like this?

-- vs



Re: [9fans] Pegasus 2.6 is released

2009-02-02 Thread Bruce Ellis
Can I just say hahahahahahaha.

Or maybe welcome to the 80's.

brrucee

On Tue, Feb 3, 2009 at 9:57 AM, Anthony Sorace  wrote:
> you, um... never mind. what can i say?
>
> http://www.gnu.org/manual/gawk/html_node/Special-Network.html#Special-Network
>
>



Re: [9fans] Pegasus 2.6 is released

2009-02-02 Thread Anthony Sorace
you, um... never mind. what can i say?

http://www.gnu.org/manual/gawk/html_node/Special-Network.html#Special-Network



Re: [9fans] Sources Gone?

2009-02-02 Thread erik quanstrom
> I don't think it does. At least not in a way that is obvious to me.
> The one and only fundamental limitation of the current interface
> offered by venti is that I can give it a score to something that
> doesn't belong to me and it gives me the information back. It is
> the limitation of the API, not the way data is managed. IOW, if
> a block that I genuinely own happens to also be referenced from
> a hierarchy that I do NOT have access to -- its ok.

ownership doesn't mean anything at the venti level.  it really
is just a virtual disk drive with lba80 content addressing.
one doesn't "own" blocks on a regular disk drive, either.

suspending the preceeding logic for a bit, supposing that
you did "track ownership", then

each block could have any number of owners.  this would
mean that you couldn't store n copies of a block for
the cost of one block's storage.  you would need to
allocate some storage for each time the block is stored
to track ownership.

- erik




Re: [9fans] Pegasus 2.6 is released

2009-02-02 Thread erik quanstrom
> i had that debate with a kde-loving linux admin. i had been explaining
> why plan 9 was interesting or significant, and he countered with the
> kde example. i was marginally impressed by the number of protocols
> they handled, but when i asked how you'd use it with cat and friends,
> he said "no, just use kate".
> 
> i reeled, stuttered, tried to get out something that sounded like
> "layering violation", and ran away. it wasn't even a cost/benefit
> argument; there wasn't any recognition of the costs.

does he also plans to build a tcp/ip stack into his
applications?  maybe we could dispense with the kernel.
it's complicated anyway.  each application could drive
hardware itself.  but to make this easier, we'll used shared
libraries.  the only system service we'd need is a shared library
loader.

- erik




Re: [9fans] Pegasus 2.6 is released

2009-02-02 Thread erik quanstrom
> not me. But a depressingly large number of people do, nowadays.

i don't drink enough to keep up with modern developments.

- erik




Re: [9fans] Pegasus 2.6 is released

2009-02-02 Thread ron minnich
On Mon, Feb 2, 2009 at 2:14 PM, erik quanstrom  wrote:
>> I hate to be the one to bring this up but ... if you are providing
>> some extended (e.g.) math functionality to a program with a shared
>> library, people are going to be upset with you if you argue that it
>> can be done with RPC.
>
> i thought we were talking about linking c into scripting languages.
> you're not using python to actually do the calcuations, are you?
>

not me. But a depressingly large number of people do, nowadays.

ron



Re: [9fans] Sources Gone?

2009-02-02 Thread Roman V. Shaposhnik
On Fri, 2009-01-30 at 07:18 +0200, lu...@proxima.alt.za wrote:
> > Some level of smartness in how block traversal is made needs to
> > be there.
> 
> That involves partitioning, which defeats the fundamental mechanics of
> venti.  

I don't think it does. At least not in a way that is obvious to me.
The one and only fundamental limitation of the current interface
offered by venti is that I can give it a score to something that
doesn't belong to me and it gives me the information back. It is
the limitation of the API, not the way data is managed. IOW, if
a block that I genuinely own happens to also be referenced from
a hierarchy that I do NOT have access to -- its ok.

> It then becomes preferable to run distinct venti services,
> which is the only way in which different backing stores can be used at
> this stage.

Hm. I guess I need to understand what is the problem you seem to
be worried about.

Thanks,
Roman.




Re: [9fans] Pegasus 2.6 is released

2009-02-02 Thread Anthony Sorace
erik wrote:

> it's interesting to compare this with the sleezy not-paths
> that e.g. gnome programs can take, like uris.  great as long
> as long as you don't care to use anything but gnome tools.

i had that debate with a kde-loving linux admin. i had been explaining
why plan 9 was interesting or significant, and he countered with the
kde example. i was marginally impressed by the number of protocols
they handled, but when i asked how you'd use it with cat and friends,
he said "no, just use kate".

i reeled, stuttered, tried to get out something that sounded like
"layering violation", and ran away. it wasn't even a cost/benefit
argument; there wasn't any recognition of the costs.



Re: [9fans] Pegasus 2.6 is released

2009-02-02 Thread Roman V. Shaposhnik
On Mon, 2009-02-02 at 23:22 +0100, Francisco J Ballesteros wrote:
> But can't you `script' by calling an external program, sending it your
> input, and reading its output?

Well, the way I see it: exec'ing is just a way to get to a transient
channel. Its no different from that very same channel being present
permanently in /srv or /mnt/factotum/rpc. There's *slightly* less
overhead with pipes, but that's about it.

Thanks,
Roman.




Re: [9fans] Pegasus 2.6 is released

2009-02-02 Thread Francisco J Ballesteros
But can't you `script' by calling an external program, sending it your
input, and reading its output?

I understand that if you have a language (say limbo) that requires loadable
modules then it's another thing.

However, if you want, say, to be able to process web pages or whatever just
by applying different modules. Why can't them be different processes?

You can just pipe your data through them.

On Mon, Feb 2, 2009 at 11:18 PM, Roman V. Shaposhnik  wrote:
> On Mon, 2009-02-02 at 14:12 -0800, ron minnich wrote:
>> On Mon, Feb 2, 2009 at 1:32 PM, David Leimbach  wrote:
>>
>> > They solve the same class of problems, if you step back far enough.
>> > If your application's mechanism of dealing with processing is to use the
>> > namespace, then binding new functionality over old is roughly equivalent to
>> > a plugin mechanism.
>>
>>
>> I hate to be the one to bring this up but ... if you are providing
>> some extended (e.g.) math functionality to a program with a shared
>> library, people are going to be upset with you if you argue that it
>> can be done with RPC.
>>
>> I hope the reason is obvious :-)
>
> It is. It is a trivial case, after all. In non-trivial ones, the
> same kind of discussion used to be quite popular in OpenMP vs.
> MPI circles. And I shouldn't be the one to tell you where it
> is going, right?
>
> Thanks,
> Roman.
>
>
>



Re: [9fans] Pegasus 2.6 is released

2009-02-02 Thread Roman V. Shaposhnik
On Mon, 2009-02-02 at 14:12 -0800, ron minnich wrote:
> On Mon, Feb 2, 2009 at 1:32 PM, David Leimbach  wrote:
> 
> > They solve the same class of problems, if you step back far enough.
> > If your application's mechanism of dealing with processing is to use the
> > namespace, then binding new functionality over old is roughly equivalent to
> > a plugin mechanism.
> 
> 
> I hate to be the one to bring this up but ... if you are providing
> some extended (e.g.) math functionality to a program with a shared
> library, people are going to be upset with you if you argue that it
> can be done with RPC.
> 
> I hope the reason is obvious :-)

It is. It is a trivial case, after all. In non-trivial ones, the
same kind of discussion used to be quite popular in OpenMP vs.
MPI circles. And I shouldn't be the one to tell you where it
is going, right?

Thanks,
Roman.




Re: [9fans] Pegasus 2.6 is released

2009-02-02 Thread erik quanstrom
> Right. That plus the fact that the "plugin" is now generally available
> over the network makes it much more interesting.
> 
> In fact, these current trend towards REST in web services seems
> to be a validation of 9P view of the world.

it's interesting to compare this with the sleezy not-paths
that e.g. gnome programs can take, like uris.  great as long
as long as you don't care to use anything but gnome tools.

i suppose you could link sed &c against gnome.  but that's
crass, even by linux standards.

- erik




Re: [9fans] Pegasus 2.6 is released

2009-02-02 Thread erik quanstrom
> I hate to be the one to bring this up but ... if you are providing
> some extended (e.g.) math functionality to a program with a shared
> library, people are going to be upset with you if you argue that it
> can be done with RPC.

i thought we were talking about linking c into scripting languages.
you're not using python to actually do the calcuations, are you?

- erik




Re: [9fans] Pegasus 2.6 is released

2009-02-02 Thread ron minnich
On Mon, Feb 2, 2009 at 1:32 PM, David Leimbach  wrote:

> They solve the same class of problems, if you step back far enough.
> If your application's mechanism of dealing with processing is to use the
> namespace, then binding new functionality over old is roughly equivalent to
> a plugin mechanism.


I hate to be the one to bring this up but ... if you are providing
some extended (e.g.) math functionality to a program with a shared
library, people are going to be upset with you if you argue that it
can be done with RPC.

I hope the reason is obvious :-)

ron



Re: [9fans] Pegasus 2.6 is released

2009-02-02 Thread Roman V. Shaposhnik
On Mon, 2009-02-02 at 13:32 -0800, David Leimbach wrote:

> I mean sure you could use FTP to transfer files, but the old shell
> based tools are automagically plugged in with network capabilities
> when they deal with a FTP backed namespace right?  So without any
> binary loader capabilities "cp" "mv" and other existing "small
> programs" are now "plugged in".

Right. That plus the fact that the "plugin" is now generally available
over the network makes it much more interesting.

In fact, these current trend towards REST in web services seems
to be a validation of 9P view of the world.

Thanks,
Roman.




Re: [9fans] Pegasus 2.6 is released

2009-02-02 Thread Roman V. Shaposhnik
On Mon, 2009-02-02 at 13:22 -0800, John Barham wrote:
> >  You're missing the beauty of 9p. Who needs dynload() when you have
> mount()?
> 
> Mount allows me to add new names to the process namespace.  Dynload
> allows me to call functions or access data in a library that is not
> known to the process (e.g., scripting language interpreter) until
> runtime.  They solve different problems.

Depends on your point of view. Except for accessing data directly
in the same address space, dynload() is just a way of doing fast
RPC. In that line of thought, 9P offers you a very similar mechanism.

I think the most obvious example of how 9P can be used to provide the
kind of extensibility that folks usually associate with dynload()
is factotum. Especially if you compare it with things like PAM.

Thanks,
Roman.




Re: [9fans] Pegasus 2.6 is released

2009-02-02 Thread David Leimbach
On Mon, Feb 2, 2009 at 1:22 PM, John Barham  wrote:

> >  You're missing the beauty of 9p. Who needs dynload() when you have
> mount()?
>
> Mount allows me to add new names to the process namespace.  Dynload
> allows me to call functions or access data in a library that is not
> known to the process (e.g., scripting language interpreter) until
> runtime.  They solve different problems.


They solve the same class of problems, if you step back far enough.

If your application's mechanism of dealing with processing is to use the
namespace, then binding new functionality over old is roughly equivalent to
a plugin mechanism.

I mean sure you could use FTP to transfer files, but the old shell based
tools are automagically plugged in with network capabilities when they deal
with a FTP backed namespace right?  So without any binary loader
capabilities "cp" "mv" and other existing "small programs" are now "plugged
in".

Dave



>
>
>  John
>
>


Re: [9fans] Pegasus 2.6 is released

2009-02-02 Thread erik quanstrom
>>  You're missing the beauty of 9p. Who needs dynload() when you have mount()?
> 
> Mount allows me to add new names to the process namespace.  Dynload
> allows me to call functions or access data in a library that is not
> known to the process (e.g., scripting language interpreter) until
> runtime.  They solve different problems.

there is no fundamental reason they could not solve the same problem.
why are you so keen to remove the rpc?

- erik




Re: [9fans] Pegasus 2.6 is released

2009-02-02 Thread John Barham
>  You're missing the beauty of 9p. Who needs dynload() when you have mount()?

Mount allows me to add new names to the process namespace.  Dynload
allows me to call functions or access data in a library that is not
known to the process (e.g., scripting language interpreter) until
runtime.  They solve different problems.

  John



Re: [9fans] Pegasus 2.6 is released

2009-02-02 Thread erik quanstrom
> On Sun, Feb 1, 2009 at 4:27 PM, John Barham  wrote:
>> Dynamic loading allows scripting languages to load arbitrary binary
>> extensions at run-time.  Without dynamic loading in Plan 9...
> 
>  You're missing the beauty of 9p. Who needs dynload() when you have mount()?

this thinking goes back to the beginning with pipes
and the shell.  to use object-oriented language out of place,
any program that produces or consumes a byte stream
can be extended by another program that produces or
consumes a byte stream.

with a thread library program that passes messages
on channels, one could do similar extensions by replacing
one end of the channel in a similar manner to replacing
a program in a regular pipe.  though message typing would
limit the generality of the arrangement.

- erik




Re: [9fans] Pegasus 2.6 is released

2009-02-02 Thread Roman V. Shaposhnik
On Tue, 2009-02-03 at 04:25 +0900, sqweek wrote:
> On Sun, Feb 1, 2009 at 4:27 PM, John Barham  wrote:
> > Dynamic loading allows scripting languages to load arbitrary binary
> > extensions at run-time.  Without dynamic loading in Plan 9...
> 
>  You're missing the beauty of 9p. Who needs dynload() when you have mount()?

I was going to say exactly that! dynload() is really not very well
suited for a highly distributed age. I have come to realize that
it is nothing but an unfortunate optimization of R out of RPC.

Now, making 'R' fast (if your caller-callee is on the same node, etc)
is very much desired. Trying to get rid of it, or pretend that
it is not needed -- is doomed.

Thanks,
Roman.




Re: [9fans] Pegasus 2.6 is released

2009-02-02 Thread sqweek
On Sun, Feb 1, 2009 at 4:27 PM, John Barham  wrote:
> Dynamic loading allows scripting languages to load arbitrary binary
> extensions at run-time.  Without dynamic loading in Plan 9...

 You're missing the beauty of 9p. Who needs dynload() when you have mount()?
-sqweek



Re: [9fans] 9vx as a cpu server?

2009-02-02 Thread Charles Forsyth
>why hasn't that old unix restriction been removed yet?

the old ones are best. there's nothing like a really good candle.
it couldn't be prised from their cold dead hands.
think of the expense!

i came across it recently, and couldn't quite believe it myself.



Re: [9fans] Pegasus 2.6 is released

2009-02-02 Thread ron minnich
On Mon, Feb 2, 2009 at 9:38 AM, John Barham  wrote:
>> using a variant of something we developed and then
>> re-developed for Inferno, you can dynamically load
>> C modules at run time, and unusually, with type checking,
>> with support in the compilers and loaders.
>
> Is the code to do this available for public consumption?
>
>

I think we're going in circles again. IIRC my discussion of dynload
for python should point at what Charles et. al. enabled and what I
subsequently used to do dynload for python, which is usable in
general, esp. if your code is type-safe (unlike Python).

ron



Re: [9fans] Pegasus 2.6 is released

2009-02-02 Thread John Barham
> using a variant of something we developed and then
> re-developed for Inferno, you can dynamically load
> C modules at run time, and unusually, with type checking,
> with support in the compilers and loaders.

Is the code to do this available for public consumption?



Re: [9fans] 9vx as a cpu server?

2009-02-02 Thread erik quanstrom
> They depend on it now more than ever. Don't believe me? Just look at
> what port many people use for NFS nowadays.
> 
> Lots of bad things have never been fixed, and this is one of them. I
> guess it's more fun to lard GUI software over top and hope nobody
> notices.

too bad that there seems to be more willingness to
break perfectly okay interfaces that there is to
fix broken interfaces.  the compatability argument
seems to run counter common sense in both cases.

- erik




Re: [9fans] 9vx as a cpu server?

2009-02-02 Thread ron minnich
On Mon, Feb 2, 2009 at 8:54 AM, roger peppe  wrote:
> why hasn't that old unix restriction been removed yet?
> is there any point to it at all any more?

They depend on it now more than ever. Don't believe me? Just look at
what port many people use for NFS nowadays.

Lots of bad things have never been fixed, and this is one of them. I
guess it's more fun to lard GUI software over top and hope nobody
notices.

ron



Re: [9fans] 9vx as a cpu server?

2009-02-02 Thread roger peppe
why hasn't that old unix restriction been removed yet?
is there any point to it at all any more?
localhost-only announcing i suppose.

2009/2/2 Roman V. Shaposhnik :
> On Sun, 2009-02-01 at 20:27 -0800, Russ Cox wrote:
>> as for listening, 9vx by default uses the host ip stack,
>> and plan 9 services tend to use their own port numbers,
>
> And sometimes these port # tend to be < 1024 which means that
> you have to run 9vx as root.
>
> Thanks,
> Roman.
>
>
>



Re: [9fans] 9vx as a cpu server?

2009-02-02 Thread Roman V. Shaposhnik
On Sun, 2009-02-01 at 20:27 -0800, Russ Cox wrote:
> as for listening, 9vx by default uses the host ip stack,
> and plan 9 services tend to use their own port numbers,

And sometimes these port # tend to be < 1024 which means that
you have to run 9vx as root.

Thanks,
Roman.




Re: [9fans] Flash Video

2009-02-02 Thread Devon H. O'Dell
2009/2/2 Akshat Kumar :
> 2009/2/2 Skip Tavakkolian <9...@9netics.com>:
>> it might require a c-section.
>> might want to start with VLC or ffmpeg.
>>
>
> My aim was just to get 9fans talking about it.
> Hence, the pushing.
>
> But yes, what information can you provide
> about either of those, with regards to porting
> or creating natively?

The Flash file format is an open standard
(http://www.adobe.com/devnet/swf/). To be useful for encoded video,
you'd need a VP6 codec (which seems lolno) and x264. It would probably
be possible to do at least the x264 stuff via ffmpeg, which is
probably not too difficult to port -- it's pretty simple code and the
codecs are easily portable. To be useful for anything else, you'd also
need a bytecode interpreter that understood the compiled actionscript
-- it's just a bytecode-compiled ECMAScript, and I believe its details
are also found in that PDF. The rest is being able to display JPG/PNG
raster images and antialiased TTF and vectors. (Flash allows you to
embed fonts into the generated SWF output as well).

--dho

> ak
>
>



Re: [9fans] Flash Video

2009-02-02 Thread Akshat Kumar
2009/2/2 Skip Tavakkolian <9...@9netics.com>:
> it might require a c-section.
> might want to start with VLC or ffmpeg.
>

My aim was just to get 9fans talking about it.
Hence, the pushing.

But yes, what information can you provide
about either of those, with regards to porting
or creating natively?


ak



Re: [9fans] Flash Video

2009-02-02 Thread Skip Tavakkolian
> if I push hard enough,
> I just might give birth to a monster

it might require a c-section.  
might want to start with VLC or ffmpeg.