Re: Capabilities

1999-06-14 Thread Alistair Riddoch

Greg Haerr writes:
 
 : Bcc. I think that its one of the things that needs porting the most. Why?
 : Here's why.
 : 
 : ELKS is shaping up quite nicely. We have a useable unixish system. But I
 : think that it needs certain things:
 : 
 : 
 : A C compiler.
 
   I have had as a top priority getting the dev86 kit (bcc, as86, ld86)
 to run on ELKS ever since I first found ELKS.  I have spent considerable
 hours enhancing the bcc compiler (it now compiles ansi without a preprocessor,)
 and have got all the  dev  programs to build and link using bcc.  I also ported
 a small ar86 just for ELKS.  On running them,
 there are a number of difficulties.  As86 dies for lack of memory thru the brk()
 system call, which doesn't seem to work yet.  In addition, back in January, 
 when I did all this work, the ELKS kernel would corrupt the filesystem after any
 unlink(), and there was no fsck.  So I gave up, ported bcc etc to minix, and started
 compiling it's libc.

The unlink() problem is basically fixed I think. There is still a problem
if you unlink processes that never terminate (like init). fsck is close to
being ready. I will include it in the next version.

 
   ELKS now has come a long way, and I think that the filesystem works,
 fsck is available, and signals and pipes work, but we need people to run on it,
 and do stupid things that break things.
 
   I will volunteer to get all the tools self-hosting and produce a development
 distribution of them.
 
 
 : A nice(ish) way to install it. (ie, distribution)
 
   ELKS needs a distribution that allows the entire kernel and commands
 to be built, and then booted from, for hard disk usage.  The chief maintainer, 
 Al, only uses ELKS from floppy.  We need more people testing ELKS using
 a standard command set compiled from scratch, and we need fsck in the distribution.

Not entirely true. I do install to HD every now again, but find it a bit
soul destroying as I crash so often it becomes unusable very quickly.

 In addition, the minix filesystem *must* support files  512k, something it doesn't 
do
 now.  The libc.a file is  512k so you can't even link anything on ELKS.  This
 requires supporting  7 indirect blocks.
 
   I will volunteer to fix the 512k block limit, but I'd like someone to
 build a standard distribution, that includes all commands and kernel and 
 allows *everything* to be built from the top with one "make all".

Okay, this is part of my overall goal, which I will be looking at overall.

'make all' will build all the binaries, make floppy will create a small
filesystem suitable for booting from, and then you will be able to create
packages which are tar files containing other binaries.

 
   In addition, being the chief nano-X contributor, I would like to see
 ELKS bundled with a nano-X distribution. I ported and maintain
 nano-X for ELKS, so I can help with this.
 
 
 : A decent text editor.
   Use levee for now, I've got a vi, but we need to actually
 try to use ELKS's filesystem, signals, and pipes before you'll want to edit
 anything for keeps.
 
 : Networking.
   
   I think we need ELKS DLL's for this, so that we can run the kernel and 
 any user programs with separate code and data segments to keep the link
 size  64k.  Al has done work on shared libraries, and I have some ideas more
 akin to Windows real-mode linking, but we need mods to the development tools
 for this.  I'll do them if you want.
 
 : Romability. (I think I just invented a new word! 8*)
 : More standard unix commands.
 
   Please make a list of commands you want.  It would be nice
 to list the commands we have, and what doesn't work with them.
 
 
 
 : Protected mode stuff. (With Expanded memory support).
 
   We're a ways off from this, but it'd be nice.  I'd like to see
 support for  64k segments.
 : 
 : 
 : Some of these things will be difficult (if possible), but I think that
 : this is what we need to make it into a useable system. If people can use
 : the thing, then they are a lot more likely to work on it / test it.
 
   I totally agree.  Pull down ELKS, and elkscmd, and compile them
 and run them and send comments to this list as to what works and what doesn't.
 Al said that he got signals working with the latest version, but I don't know
 what the number is or where to find it.  The version that I last ran, 0.0.74,
 couldn't do "ls  file" or "ls | more" without dying or breaking the file system.
 

The default shell that root has when you log in is sash, which does not
support any of the above. If you 'exec /bin/ash', you then have a decent
shell with redirection and pipes which may work to an extent. I may now be
time to make ash the default shell, but it does have licensing issues.

Remember that you can get the latest CVS code either by checking out
anonymously from the CVS server, or by downloading the daily snapshots. See
section 4 of the FAQ for details.

Al



Re: Capabilities

1999-06-14 Thread Alistair Riddoch

Greg Haerr writes:
 
 On Thursday, June 03, 1999 7:27 PM, Alan Cox [SMTP:[EMAIL PROTECTED]] wrote:
 :This brings up my wishlist again, that we should have bcc compiler
 :  support for medium and large models for x86.  Al Ridoch doesn't want to
 :  move to supporting the _far keyword.  I think that it would buy us alot, 
especially
 :  if we're going to stick with old outdated processors like the 8086.
 : 
 : Al is right however. Going to far screws you up totally on things like swapping
 : and makes fork truely horrible. Don't go that way except on a 286
 : 
 : 
 Good points.  If we stayed restricted to large code segments only, however,
 then we could run much larger programs (like the bcc compiler, for one),
 if we restricted ourselves to the following:

I have not yet come across something I wanted to port that had too large
a code segment, but enough data. Most programs don't port because they require
so much data. bcc output is very compact.

 
   o Dont' swap code that has the multi-code segment bit set in the exe hdr.
 (This isn't that big a deal, especially if it lets us run real programs...)
 
   o Fork isn't a problem if we use shared code segments, and don't have
 far data pointers.

We do currently share code segments very effectively.

Al



Re: Capabilities

1999-06-13 Thread Chad Page


This sort of thing has been done under Windows (boundschecker) and
I don't know if there's a regular Linux implementation of it... but
thinking about it it's only practical for testing purposes since you're
gonna take a pretty severe performance hit on even a P6-class machine, let
alone an 8088.  It also requires compiler work, and would either (a) bloat
the assembly code, or (b) use CALL/RETs which are extrememely expensive on
older chips.

That said, if bounds checking existed under Linux and/or ELKS it
would be very useful... just not something you'ld want to use in a
production version.

- Chad

On Sun, 13 Jun 1999, Beau Kuiper wrote:

 About user-program protection:
 
 Why is this discussion continuing. Most programs are forever playing with
 memory and pointers because C works like that. To locate and verify
 every memory reference that a C program makes is simply stupid for the
 following reasons:
 
   1) The code to do it will be unportable and complex, difficult to
   maintain, in assembly and most likely buggy too. This should
   be enough reason to scrap this idea.
   2) It will be slow. Not your regular slow, not even windows 3.0
   slow, I mean really, really SLOW! The performace hit may
   not be very noticable on a Pentium, but it will sure hurt the 
   target processor, the 8088/8086
 
 Beau Kuiper
 [EMAIL PROTECTED]
 



Re: Capabilities

1999-06-12 Thread Blaz Antonic

 I really don't see where this is a problem. User level processing does not
 need
 hardware memory protection; it could be implemented as a strictly software
 solution. For example, a table defined within the OS giving the user and the
 level. Then, all memory access could interrogate this table and give pseudo
 memory level security.

And how are you going to make sure the program you are about to execute
isn't going to do anything malicious ?? Rewrite kernel CS, DS, other
programs' memory space, interrupt table or something else ?? By software
control ??? How are you going to find out whether the binary you are
attempting to run uses standard library calls or not (= uses some other
code that violates system integrity) ?? Such code can be hidden in less
than 50 bytes of code and covered pretty good. Any user can write
ownprogram that allows him to rewrite important structures in memory
(kernel DS) and thereby give him root access or just hang the system.

bye, Ab



Re: Capabilities

1999-06-12 Thread Beau Kuiper

About user-program protection:

Why is this discussion continuing. Most programs are forever playing with
memory and pointers because C works like that. To locate and verify
every memory reference that a C program makes is simply stupid for the
following reasons:

1) The code to do it will be unportable and complex, difficult to
maintain, in assembly and most likely buggy too. This should
be enough reason to scrap this idea.
2) It will be slow. Not your regular slow, not even windows 3.0
slow, I mean really, really SLOW! The performace hit may
not be very noticable on a Pentium, but it will sure hurt the 
target processor, the 8088/8086

Beau Kuiper
[EMAIL PROTECTED]



Re: Capabilities

1999-06-11 Thread Larry Howard Mittman

I really don't see where this is a problem. User level processing does not
need
hardware memory protection; it could be implemented as a strictly software
solution. For example, a table defined within the OS giving the user and the
level. Then, all memory access could interrogate this table and give pseudo
memory level security.

==
Never cross a dragon - for you are crunchy and taste delicious!
My major interests are:
Amateur {Ham} Radio - N8MGU | Opera-Jazz-Musical Theater | Sailing | Judaica

- Original Message -
From: Perry Harrington [EMAIL PROTECTED]
To: Luke [EMAIL PROTECTED]
Cc: [EMAIL PROTECTED]; [EMAIL PROTECTED]; [EMAIL PROTECTED];
[EMAIL PROTECTED]
Sent: Thursday, June 03, 1999 9:11 PM
Subject: Re: Capabilities


 
   In addition, the user programs could be protected from the kernel and
vice
   versa...

 Note, without memory protection we really have no lower priviledged users,
all users
 are the equivelent of root.  Users exist merely to provide some logical
division.

 
  And that would be a big bonus, especially for embeded systems
  Luke(Boo) Farrar.
 


 --
 Perry Harrington   Linux rules all OSes.APSoft  ()
 email: [EMAIL PROTECTED] Think Blue. /\




Re: SV: Capabilities

1999-06-07 Thread Matt Gumbley

Thor Harald Johansen wrote:
 
  The Psion 3a have a simple memory protection of a range of address that
 the
  program may write to, if a write outside these is attempted then an
  interrupt is trigger - I will probably attempt to use this once I have
 code.
  However it is possible for a malicious program (i.e. the stuff I have done
  so far) to defeat this.
 
 Well, can memory be protected at all on an 8086?
 --
 Thor Harald Johansen
 [EMAIL PROTECTED]

Not as such; the Psion hardware includes a rudimentary MMU. The
processor is an NEC V30H.
-- 
Matt J. Gumbley



RE: Capabilities

1999-06-07 Thread Chris Hansen

It seems like the answer to the protection problem is to write a virtual
cpu to run under the kernal that would trap memory code, check it, then
execute it it's self.

Chris



Re: Capabilities

1999-06-07 Thread Bernd Petrovitsch

In message [EMAIL PROTECTED], 
Chris
Hansen wrote:
It seems like the answer to the protection problem is to write a virtual
cpu to run under the kernal that would trap memory code, check it, then
execute it it's self.

If it is really for embeded systems, than it is no problems - usually
embedded systems (with microcontrollers or DSPs) have no MMU or users or
protected memory. These systems are supposed to be installed and thats it.

bernd

--
 Bernd Petrovitsch   Institute of Computer Technology
 Gußhausstraße 25-29, A-1040 Vienna Email: [EMAIL PROTECTED]
 "Der Horizont vieler Menschen ist ein Kreis mit Radius Null -
  und das nennen sie ihren Standpunkt."   A. Einstein



 PGP signature


RE: SV: Capabilities

1999-06-07 Thread Greg Haerr

On Monday, June 07, 1999 8:43 AM, Thor Harald Johansen [SMTP:[EMAIL PROTECTED]] wrote:
:  No without a special added hardware. The I8086, 8088, 80188, 80186
:  have no memory protection implemented. First chip from Intel which
:  has memory protection is 80286 as I know.
: 
: If this is correct, the users in ELKS are just symbolic. Any program can do
: what it wants, and every user with a program can get root access. BIG
: problem.
: --
: Thor Harald Johansen
: [EMAIL PROTECTED]
: 
That's why 286's and 386's were invented



RE: SV: Capabilities

1999-06-07 Thread Dan Olson

 Surely the point of ELKS is that it's an *embedded* Linux system
 (routers, settop boxen, etc), so even if multi-user is a possibility,
 it's not a major design feature, eh?  And if we're sticking the netstack
 in userspace, this re-enforces the principle that "C2 compliant"
 multi-user environment is a secondary point.  Let alone the programming
 nightmare a netstack in userspace presents to a coder fx:unfond
 memories of coding network daemons for BeOS, who's netstack is also in
 userspace

I have to agree that in the interest of speed and code size that security
isn't that important, and especially on an embedded system.  My suggestion
would be to use a 386 or other system is if that's really an issue, or
maybe find a way to add memory protection to a special version of ELKs
destened for the 286 (the 186 doesn't have memory protection as well, does
it?).

Dan



RE: Capabilities

1999-06-07 Thread ekuiperba



On Mon, 7 Jun 1999, Chris Hansen wrote:

 It seems like the answer to the protection problem is to write a virtual
 cpu to run under the kernal that would trap memory code, check it, then
 execute it it's self.
 
 Chris
 
That would be a very bad idea anyway. The performace hit would be at least
50% and people using embedded chips or 8086/8088 chips would suffer
greatly for a unimportant cause.

If security is an issue, then it is much more cost effective/wise to run
Linux on a 386 or better processor. Th 8088 was never designed to provide
memory protection, and the effect of trying to add it would result in much
buggy annoying code that is unmaintainable, unworkable and unportable.

My 5cents (we don't have 2c coins over in Australia)

Beau Kuiper
[EMAIL PROTECTED]




Re: SV: Capabilities

1999-06-06 Thread Radek Hnilica

 Well, can memory be protected at all on an 8086?

No without a special added hardware. The I8086, 8088, 80188, 80186 
have no memory protection implemented. First chip from Intel which 
has memory protection is 80286 as I know.

Radek Hnilica

Radek Hnilica
E-mail: [EMAIL PROTECTED]
http://www.linuxfan.com/~radek_hnilica



SV: Capabilities

1999-06-05 Thread Thor Harald Johansen

 The Psion 3a have a simple memory protection of a range of address that
the
 program may write to, if a write outside these is attempted then an
 interrupt is trigger - I will probably attempt to use this once I have
code.
 However it is possible for a malicious program (i.e. the stuff I have done
 so far) to defeat this.

Well, can memory be protected at all on an 8086?
--
Thor Harald Johansen
[EMAIL PROTECTED]



Re: Capabilities

1999-06-05 Thread Ross Vandegrift

Well, can memory be protected at all on an 8086?


I don't think so.  Windows 2.0 could multitask DOS apps on an 8086, iff they
were very well behaved.  I've heard that the feture was pulled when stupid
people tried to multitask things like 123.

Ross



RE: Capabilities

1999-06-04 Thread Simon Wood

  
 In addition, the user programs could be protected from the kernel
 and vice
   versa...
 
 Note, without memory protection we really have no lower priviledged users,
 all users
 are the equivelent of root.  Users exist merely to provide some logical
 division.
[Simon Wood]  
Not 100% true, if a program behaves then the kernel can prevent inspection
of privileged data. It's only when a program miss-behaves the trouble
starts.

FYI
The Psion 3a have a simple memory protection of a range of address that the
program may write to, if a write outside these is attempted then an
interrupt is trigger - I will probably attempt to use this once I have code.
However it is possible for a malicious program (i.e. the stuff I have done
so far) to defeat this.

Simon W.



RE: Capabilities

1999-06-04 Thread Alex Holden

On Thu, 3 Jun 1999, Greg Haerr wrote:
 On Thursday, June 03, 1999 1:36 PM, Alex Holden [SMTP:[EMAIL PROTECTED]] wrote:
 : On Thu, 3 Jun 1999, Alan Cox wrote:
 :  Keep networking mostly in user space.  That btw is also the model things like
 :  the early networking work on V7 unix took.
 : I was wondering if KA9Q NOS might be used as a basis for ELKS TCP/IP,
 : rather than starting again from scratch...
 
   That's a potentially very good idea.  KA9Q is big, though, and needs
 compiler mods for bcc in order to fit in 64k.


The individual parts are pretty compact. It's actually a multitasking
kernel with TCP/IP, AX25, and SMTP, telnet, etc. all integrated together.
If you could split it up into bits, it would probably fit within the
limits. Though as Alan pointed out, the license is pretty restrictive (I
had always thought it was without any restriction at all :).

--- Linux- the choice of a GNU generation. --
: Alex Holden (M1CJD)- Caver, Programmer, Land Rover nut, Radio Ham :
 http://www.linuxhacker.org/ 



RE: Capabilities

1999-06-04 Thread Darran D. Rimron


 -Original Message-
 From: [EMAIL PROTECTED]
 [mailto:[EMAIL PROTECTED]]On Behalf Of Alex Holden
 Sent: 04 June 1999 10:38
 To: Greg Haerr
 Cc: Alan Cox; [EMAIL PROTECTED]
 Subject: RE: Capabilities

[ka9q]
 Though as Alan pointed out, the license is pretty
 restrictive (I
 had always thought it was without any restriction at all :).

Her in the UK Demon Internet, http://www.demon.net/ distribute it free
as their default connection method for DOS, unsure if it's the same
KA9Q, if it's [free|share]ware or what, but that may be work
investigating... I'm failry sure that there's a copy at
ftp://ftp.demon.net/ for download (I could get exact info. if required)

-TTFN, Darran



RE: Capabilities

1999-06-04 Thread Alex Holden

On Fri, 4 Jun 1999, Darran D. Rimron wrote:
 Her in the UK Demon Internet, http://www.demon.net/ distribute it free
 as their default connection method for DOS, unsure if it's the same

Cool, I didn't realise that. It must be a bit modified from the amateur
radio one to be more useful for general Internet access. One problem with
it is IIRC, NOS itself doesn't have a http server or browser, but several
of the derivatives like JNOS do, which you could probably port back.

 KA9Q, if it's [free|share]ware or what, but that may be work
 investigating... I'm failry sure that there's a copy at
 ftp://ftp.demon.net/ for download (I could get exact info. if required)

It wouldn't let me log in.

--- Linux- the choice of a GNU generation. --
: Alex Holden (M1CJD)- Caver, Programmer, Land Rover nut, Radio Ham :
 http://www.linuxhacker.org/ 



RE: Capabilities

1999-06-04 Thread Matthew Kirkwood

On Thu, 3 Jun 1999, Greg Haerr wrote:

 I see.  So the large code model is essentially implemented by combining
 functions together in a 64k segment until no more functions can be
 added, then starting another segment, with all functions being called
 using full seg:offset addressing mode.

The large model uses far addresses for both code and data.  Small uses
both near.  Medium and compact (I think only the MS compilers did the
latter) were, I think, small code, large data, and small data, large code
respectively. 

DOS supported all these by virtue of not supporting any of them.  Swapping
or relocating processes makes this rather harder. 

A reloc table in the binary (like DOS EXE files) could work for code at
least (as long as the binaries are immutable while a process is using
them, and the programs are careful about self-modifying code).

 Even with the data segment limited to 64k, the large code model would
 solve a number of problems.  In addition, it'd work on 8086's and 286's.

What about "anonymous" data, accessed through libc calls?  The segment
address of the data could be stored in a known part of the processes'
address space and if the program had to be relocated, the kernel would
check regs.{ds,es} and update them as necessary.

This would require said libc calls to observe some quite strict
restrictions, (never put the segment address into a "normal" register, for
example) but should otherwise be adequate.

Matthew.



Re: TCP/IP, KA9Q, etc. (was Re: Capabilities)

1999-06-04 Thread Matt Gumbley

Alan Cox wrote:
 
  I didn't think it had any restrictions either... there are hundreds of
  different versions so it seems...
 
 Very few people realise it, but it is charged for, or $10K for a once
 off OEM license. And people pay the $10K for it to build small routers
 
  be easier to use the model in Doug Comer's books (since they're well
  documented, and there are no restrictions (as far as I could tell)) -
 
 The copyright on the book ?

Argh, now you've got me rather worried

Haven't got my copy here at hand, but I've read a book review
(http://www.anatomy.usyd.edu.au/danny/book-reviews/h/Internetworking_with_TCP_IP_2.html)
that says:
 "...using it
 does have a couple of advantages. One is that it is possible
 to print (and make available for ftp) the complete source
 code without copyright problems..."

The book's software is downloadable from:
http://www.cs.purdue.edu/homes/dec/netbooks.html
That page even says that the book is "Ideal for implementors".

I'll have to check the book's actual text to see if there's anything
legal I should take care of... the last thing I want is Prof. Comer's
lawyers on my back.

God/insert deity of choice here bless the Free Software Foundation...
-- 
Matt J. Gumbley,  Software Engineer | Enigma Data Systems Ltd.
Email: [EMAIL PROTECTED]| Chelsea House, 8-14 The Broadway,
Tel: +44 (0)1444 476500 |  Direct:  | Haywards Heath, West Sussex.
Fax: +44 (0)1444 476501 |  476510   | RH16 3AP England.



Re: Capabilities

1999-06-04 Thread Alan Cox

 A reloc table in the binary (like DOS EXE files) could work for code at
 least (as long as the binaries are immutable while a process is using
 them, and the programs are careful about self-modifying code).

No it doesnt

extern int foo1();

int foo2()
{
x=foo1;
x();
}

You need 32bit pointers and until you are in 286 mode you also need to do
basically impossible fixups






RE: Capabilities

1999-06-04 Thread Greg Haerr

On Friday, June 04, 1999 5:28 AM, Alan Cox [SMTP:[EMAIL PROTECTED]] wrote:
:  A reloc table in the binary (like DOS EXE files) could work for code at
:  least (as long as the binaries are immutable while a process is using
:  them, and the programs are careful about self-modifying code).
: 
: No it doesnt
: 
: extern int foo1();
: 
: int foo2()
: {
:   x=foo1;
:   x();
: }
: 
: You need 32bit pointers and until you are in 286 mode you also need to do
: basically impossible fixups
: 

Good point, again.  Per my last email, the compiler doesn't have to support far
proc ptrs though.
: 
: 
: 
: 




RE: Capabilities

1999-06-04 Thread Greg Haerr

On Thursday, June 03, 1999 7:27 PM, Alan Cox [SMTP:[EMAIL PROTECTED]] wrote:
:  This brings up my wishlist again, that we should have bcc compiler
:  support for medium and large models for x86.  Al Ridoch doesn't want to
:  move to supporting the _far keyword.  I think that it would buy us alot, especially
:  if we're going to stick with old outdated processors like the 8086.
: 
: Al is right however. Going to far screws you up totally on things like swapping
: and makes fork truely horrible. Don't go that way except on a 286
: 
: 
Good points.  If we stayed restricted to large code segments only, however,
then we could run much larger programs (like the bcc compiler, for one),
if we restricted ourselves to the following:

o Dont' swap code that has the multi-code segment bit set in the exe hdr.
(This isn't that big a deal, especially if it lets us run real programs...)

o Fork isn't a problem if we use shared code segments, and don't have
far data pointers.

Greg



Re: Capabilities

1999-06-04 Thread Luke (boo) Farrar




On Thu, 3 Jun 1999, Alan Cox wrote:

  In addition, the minix filesystem *must* support files  512k, something it 
doesn't do
  now.  The libc.a file is  512k so you can't even link anything on ELKS.  This
  requires supporting  7 indirect blocks.
 
 Umm it used to. What happened ?
 
  :   Networking.
  
  I think we need ELKS DLL's for this, so that we can run the kernel and 
  any user programs with separate code and data segments to keep the link
 
 Keep networking mostly in user space.  That btw is also the model things like
 the early networking work on V7 unix took.

The networking text file in the Documentation dir says:

Cut here 8

Notes on networking code


Current development model is based around using a user process to be the
actual TCP/IP stack with socket file descriptors and device drivers dealt with
by the kernel. The diagram below show how things should work.


 ___
|   |  ||
|Network Application|  |TCP/IP stack process|
|___|  ||
|   /   |
|  /|
   _|_/_|
  | |/  ||
  | KERNEL  |   /   ||
  |_|__/_ __||
  |   |  |   |   |   |
  |   |  Socket code |   | RAW Driver|   |
  |   |__|   |___|   |
  | ||
  | ||
  |_||
|
  __|
 |   |
 | Network Hardware  |
 |___|


The Network Application uses the standard BSD socket interface to open and
read and write to sockets. The socket code passes the data on to the TCP/IP
stack process, through a file descriptor. (char device or socket).

The TCP/IP stack process then constructs TCP/IP packets and writes them to
the network device driver including all the necessary hardware headers.

Cut here 8

This seems sane. If we have a /dev/ip to communicate with the tcp/ip stack
process from the inet_ functions, then virtually everything sits outside
the kernel. I don't know much about the userspace device drivers yet, but
these could potentially be used for network drivers, and if not a network
driver wouldn't take up too much memory.

So the user space tcp/ip stack would just take the data, slap in in a
cutesy little packet, and shove it out to the network driver (and the
same but backwards).

Something that shouldn't be as hard to do from userspace.

I'll link my inet_ functions up to a device driver for now.

Any comments?


Lukeboo Farrar.






Re: Capabilities

1999-06-04 Thread Alan Cox

 Good points.  If we stayed restricted to large code segments only, however,
 then we could run much larger programs (like the bcc compiler, for one),
 if we restricted ourselves to the following:

bcc fitted in 64K on Minix built with ack so thats a BCC problem ...

   o Dont' swap code that has the multi-code segment bit set in the exe hdr.
 (This isn't that big a deal, especially if it lets us run real programs...)

Its a very big deal

   o Fork isn't a problem if we use shared code segments, and don't have
 far data pointers.

Thats the only bit I suspect is true



RE: Capabilities

1999-06-03 Thread Greg Haerr

On Thursday, June 03, 1999 6:01 AM, Alan Cox [SMTP:[EMAIL PROTECTED]] wrote:
:  In addition, the minix filesystem *must* support files  512k, something it 
:doesn't do
:  now.  The libc.a file is  512k so you can't even link anything on ELKS.  This
:  requires supporting  7 indirect blocks.
: 
: Umm it used to. What happened ?

I don't know.  If you look at the 0.0.74 source, it flat out compares the
indirect blocks to 7 and errors if greater...  It doesn't look like the original code 
ever
worked.  I was quite concerned myself when I first looked at the code.  After comparing
it with the linux 386 sources, I felt it would be better to re-port from scratch, 
actually.
It appears the ELKS fs is munged to accomodate a changed buffer system.



: 
:  :   Networking.
:  
:  I think we need ELKS DLL's for this, so that we can run the kernel and 
:  any user programs with separate code and data segments to keep the link
: 
: Keep networking mostly in user space.  That btw is also the model things like
: the early networking work on V7 unix took.

I like that idea.

: 
:  :   Protected mode stuff. (With Expanded memory support).
:  
:  We're a ways off from this, but it'd be nice.  I'd like to see
:  support for  64k segments.
: 
: You then need a 386. 64K is the limit. The original work I did was designed
: to be easy to run in 286 protected mode once you got rid of any BIOS interfaces.
:

Remind me - what then is the benefit of protected mode?  Merely
separate address spaces?

Greg



Re: Capabilities

1999-06-03 Thread Alan Cox

 : You then need a 386. 64K is the limit. The original work I did was designed
 : to be easy to run in 286 protected mode once you got rid of any BIOS interfaces.
 :
   Remind me - what then is the benefit of protected mode?  Merely
 separate address spaces?

You get two things in 286 protected mode

1.  You take exceptions if you try and go out of your segments
2.  You get 16Mbytes of addressable ram



RE: Capabilities

1999-06-03 Thread Matthew Kirkwood

On Thu, 3 Jun 1999, Greg Haerr wrote:

 :  : Protected mode stuff. (With Expanded memory support).
 :  
 :We're a ways off from this, but it'd be nice.  I'd like to see
 :  support for  64k segments.
 : 
 : You then need a 386. 64K is the limit. The original work I did was designed
 : to be easy to run in 286 protected mode once you got rid of any BIOS interfaces.
 
   Remind me - what then is the benefit of protected mode?  Merely
 separate address spaces?

And a full 16Mb(!) of address space.

Matthew.



RE: Capabilities

1999-06-03 Thread Greg Haerr

On Thursday, June 03, 1999 10:07 AM, Alan Cox [SMTP:[EMAIL PROTECTED]] wrote:
:  : You then need a 386. 64K is the limit. The original work I did was designed
:  : to be easy to run in 286 protected mode once you got rid of any BIOS interfaces.
:  :
:  Remind me - what then is the benefit of protected mode?  Merely
:  separate address spaces?
: 
: You get two things in 286 protected mode
: 
: 1.You take exceptions if you try and go out of your segments
: 2.You get 16Mbytes of addressable ram
: 
: 
So, basically, 286 protected mode still runs in 64k segments, and
in order to address the additional memory on a per-process basis we need
large code or large data segments through the compiler (far pointers).  In this
way, larger programs can be written.

With bcc currently, there would be no benefit to the size of user programs
run, just more could be run on ELKS, since ELKS could allocate more physical
memory by allocating more DS descriptors covering physical memory...

In addition, the user programs could be protected from the kernel and vice
versa...

Right?

Greg



Re: Capabilities

1999-06-03 Thread John Oram

Greg:

You might find http://www.x86.org/articles/pmbasics/tspec_a1_doc.html
an interesting read on Protected Mode Basics.

John O

Greg Haerr wrote:
 
 On Thursday, June 03, 1999 10:07 AM, Alan Cox [SMTP:[EMAIL PROTECTED]] wrote:
 :  : You then need a 386. 64K is the limit. The original work I did was designed
 :  : to be easy to run in 286 protected mode once you got rid of any BIOS 
interfaces.
 :  :
 :  Remind me - what then is the benefit of protected mode?  Merely
 :  separate address spaces?
 :
 : You get two things in 286 protected mode
 :
 : 1.You take exceptions if you try and go out of your segments
 : 2.You get 16Mbytes of addressable ram
 :
 :
 So, basically, 286 protected mode still runs in 64k segments, and
 in order to address the additional memory on a per-process basis we need
 large code or large data segments through the compiler (far pointers).  In this
 way, larger programs can be written.
 
 With bcc currently, there would be no benefit to the size of user programs
 run, just more could be run on ELKS, since ELKS could allocate more physical
 memory by allocating more DS descriptors covering physical memory...
 
 In addition, the user programs could be protected from the kernel and vice
 versa...
 
 Right?
 
 Greg



RE: Capabilities

1999-06-03 Thread Luke (boo) Farrar




On Thu, 3 Jun 1999, Greg Haerr wrote:

 On Thursday, June 03, 1999 10:07 AM, Alan Cox [SMTP:[EMAIL PROTECTED]] wrote:
 :  : You then need a 386. 64K is the limit. The original work I did was designed
 :  : to be easy to run in 286 protected mode once you got rid of any BIOS 
interfaces.
 :  :
 :Remind me - what then is the benefit of protected mode?  Merely
 :  separate address spaces?
 : 
 : You get two things in 286 protected mode
 : 
 : 1.  You take exceptions if you try and go out of your segments
 : 2.  You get 16Mbytes of addressable ram
 : 
 : 
   So, basically, 286 protected mode still runs in 64k segments, and
 in order to address the additional memory on a per-process basis we need
 large code or large data segments through the compiler (far pointers).  In this
 way, larger programs can be written.
 
   With bcc currently, there would be no benefit to the size of user programs
 run, just more could be run on ELKS, since ELKS could allocate more physical
 memory by allocating more DS descriptors covering physical memory...
 


   In addition, the user programs could be protected from the kernel and vice
 versa...

And that would be a big bonus, especially for embeded systems
Luke(Boo) Farrar.



Re: Capabilities

1999-06-03 Thread Alan Cox

 I was wondering if KA9Q NOS might be used as a basis for ELKS TCP/IP,
 rather than starting again from scratch...

$50 a copy to non education or amateur radio users. Unless that is Phil is
willing to change his licensing policy



RE: Capabilities

1999-06-03 Thread Greg Haerr

On Thursday, June 03, 1999 5:01 PM, Alan Cox [SMTP:[EMAIL PROTECTED]] wrote:
:  in order to address the additional memory on a per-process basis we need
:  large code or large data segments through the compiler (far pointers).  In this
: 
: There are no "large" segments. This is one of the horrors of 286 mode. A far
: call is a segment:offset call. So you have multiple small segments this way.
: 

I see.  So the large code model is essentially implemented by combining
functions together in a 64k segment until no more functions can be added,
then starting another segment, with all functions being called using full
seg:offset addressing mode.

Even with the data segment limited to 64k, the large code model would solve
a number of problems.  In addition, it'd work on 8086's and 286's.

Greg



RE: Capabilities

1999-06-03 Thread Greg Haerr

On Thursday, June 03, 1999 1:36 PM, Alex Holden [SMTP:[EMAIL PROTECTED]] wrote:
: On Thu, 3 Jun 1999, Alan Cox wrote:
:  Keep networking mostly in user space.  That btw is also the model things like
:  the early networking work on V7 unix took.
: 
: I was wondering if KA9Q NOS might be used as a basis for ELKS TCP/IP,
: rather than starting again from scratch...
: 
:

That's a potentially very good idea.  KA9Q is big, though, and needs
compiler mods for bcc in order to fit in 64k.

This brings up my wishlist again, that we should have bcc compiler
support for medium and large models for x86.  Al Ridoch doesn't want to
move to supporting the _far keyword.  I think that it would buy us alot, especially
if we're going to stick with old outdated processors like the 8086.

Greg



Re: Capabilities

1999-06-03 Thread Perry Harrington

 
  In addition, the user programs could be protected from the kernel and vice
  versa...

Note, without memory protection we really have no lower priviledged users, all users
are the equivelent of root.  Users exist merely to provide some logical division.

 
 And that would be a big bonus, especially for embeded systems
 Luke(Boo) Farrar.
 


-- 
Perry Harrington   Linux rules all OSes.APSoft  ()
email: [EMAIL PROTECTED] Think Blue. /\



Re: Capabilities

1999-06-03 Thread Alan Cox

   This brings up my wishlist again, that we should have bcc compiler
 support for medium and large models for x86.  Al Ridoch doesn't want to
 move to supporting the _far keyword.  I think that it would buy us alot, especially
 if we're going to stick with old outdated processors like the 8086.

Al is right however. Going to far screws you up totally on things like swapping
and makes fork truely horrible. Don't go that way except on a 286



SV: Capabilities

1999-06-02 Thread Thor Harald Johansen

 But seriously...  I'm wanting to get my C skills back into shape.  Can
anyone
 think of a good program to port?  Maybe "ed" wouldn't be such a bad
start...  or
 maybe some old games from Slackware's Y package...

'ed' already exists for ELKS.
--
Thor Harald Johansen
[EMAIL PROTECTED]




RE: Capabilities

1999-06-02 Thread Simon Wood

My wife is currently addicted to Sokoban, how as ASCII version of that.
Simon Wood

Hardware Engineer 
Pace Micro Technology plc
Victoria Road, Saltaire, Shipley
West Yorkshire, BD18 3LF
Tel : +44(0)1274 532000  Fax: +44(0)1274 532029

This E-Mail and any attachments hereto are strictly confidential and
intended solely for the addressee. If you are not the intended addressee
please notify the sender by return and delete the message. You must not
disclose, forward or copy this E-mail or attachments to any third party
without the prior consent of the sender.
  But seriously...  I'm wanting to get my C skills back into shape.  Can
 anyone
  think of a good program to port?  Maybe "ed" wouldn't be such a bad
 start...  or
  maybe some old games from Slackware's Y package...
 



Re: Capabilities

1999-06-02 Thread Luke (boo) Farrar




On Tue, 1 Jun 1999, Chris Starling wrote:

  Why would anyone want to use any editor other than vi?
 
 I'm almost done with the EMACS port.   :)
 
 
 But seriously...  I'm wanting to get my C skills back into shape.  Can anyone
 think of a good program to port?  Maybe "ed" wouldn't be such a bad start...  or
 maybe some old games from Slackware's Y package...
 

Bcc. I think that its one of the things that needs porting the most. Why?
Here's why.

ELKS is shaping up quite nicely. We have a useable unixish system. But I
think that it needs certain things:


A C compiler.
A nice(ish) way to install it. (ie, distribution)
A decent text editor.
Networking.
Romability. (I think I just invented a new word! 8*)
More standard unix commands.
Protected mode stuff. (With Expanded memory support).


Some of these things will be difficult (if possible), but I think that
this is what we need to make it into a useable system. If people can use
the thing, then they are a lot more likely to work on it / test it.


Luke(Boo) Farrar.






RE: Capabilities

1999-06-02 Thread Greg Haerr

On Tuesday, June 01, 1999 2:07 PM, Alistair Riddoch [SMTP:[EMAIL PROTECTED]] wrote:
: Ross Vandegrift writes:
:  
:  Tell me of another editor. :)
:  
:  
:  You're not going to like your more reasonable options, but I'll be blunt: vi
:  or ed should work nicely, when ported.
:  
: 
: Why would anyone want to use any editor other than vi?
: 
: Al
: ZZ
: 
I can't understand why anyone would want an editor other than vi.
So - I have source to a vi look-alike that I've ported to various opsys's including
NT if you just can't stand it any longer...

gh



RE: Capabilities

1999-06-02 Thread Greg Haerr

On Tuesday, June 01, 1999 7:19 PM, Ross Vandegrift [SMTP:[EMAIL PROTECTED]] wrote:
: But seriously...  I'm wanting to get my C skills back into shape.  Can
: anyone
: think of a good program to port?  Maybe "ed" wouldn't be such a bad
: start...  or
: maybe some old games from Slackware's Y package...
: 
: 
: ed would be a good start, but I'd rather see a vi implementation.  When a
: Un*x has vi, it can finally be called an OS ;-).  Along the Y package, how
: about the fortune program?  It's cute, it's funny, and it shouldn't be too
: difficult.
: 
: Ross
: 

Send me the source to fortune, I'll port it.  

gh



Re: Capabilities

1999-06-02 Thread Alistair Riddoch

Greg Haerr writes:
 
 On Tuesday, June 01, 1999 2:07 PM, Alistair Riddoch [SMTP:[EMAIL PROTECTED]] wrote:
 : Ross Vandegrift writes:
 :  
 :  Tell me of another editor. :)
 :  
 :  
 :  You're not going to like your more reasonable options, but I'll be blunt: vi
 :  or ed should work nicely, when ported.
 :  
 : 
 : Why would anyone want to use any editor other than vi?
 : 
 : Al
 : ZZ
 : 
   I can't understand why anyone would want an editor other than vi.
 So - I have source to a vi look-alike that I've ported to various opsys's including
 NT if you just can't stand it any longer...
 

I am still trying to get hold of a vi clone that uses tmp files rather than
keeping the file in RAM, and is GPL compatable. levee fails on both counts
so is unable to deal with decent size files, and may cause license
conflicts in elkscmd. Does your version fit these requirements?

Al



RE: Capabilities

1999-06-02 Thread Greg Haerr


: I am still trying to get hold of a vi clone that uses tmp files rather than
: keeping the file in RAM, and is GPL compatable. levee fails on both counts
: so is unable to deal with decent size files, and may cause license
: conflicts in elkscmd. Does your version fit these requirements?
: 
: Al
: 

My vi is Xvi, derivied from Stevie.  It's license is looser than GPL,
but I don't know about the file size stuff.  Is this because we've got only 64k
of data on ELKS?



RE: Capabilities

1999-06-02 Thread Greg Haerr

: Bcc. I think that its one of the things that needs porting the most. Why?
: Here's why.
: 
: ELKS is shaping up quite nicely. We have a useable unixish system. But I
: think that it needs certain things:
: 
: 
:   A C compiler.

I have had as a top priority getting the dev86 kit (bcc, as86, ld86)
to run on ELKS ever since I first found ELKS.  I have spent considerable
hours enhancing the bcc compiler (it now compiles ansi without a preprocessor,)
and have got all the  dev  programs to build and link using bcc.  I also ported
a small ar86 just for ELKS.  On running them,
there are a number of difficulties.  As86 dies for lack of memory thru the brk()
system call, which doesn't seem to work yet.  In addition, back in January, 
when I did all this work, the ELKS kernel would corrupt the filesystem after any
unlink(), and there was no fsck.  So I gave up, ported bcc etc to minix, and started
compiling it's libc.

ELKS now has come a long way, and I think that the filesystem works,
fsck is available, and signals and pipes work, but we need people to run on it,
and do stupid things that break things.

I will volunteer to get all the tools self-hosting and produce a development
distribution of them.


:   A nice(ish) way to install it. (ie, distribution)

ELKS needs a distribution that allows the entire kernel and commands
to be built, and then booted from, for hard disk usage.  The chief maintainer, 
Al, only uses ELKS from floppy.  We need more people testing ELKS using
a standard command set compiled from scratch, and we need fsck in the distribution.
In addition, the minix filesystem *must* support files  512k, something it doesn't do
now.  The libc.a file is  512k so you can't even link anything on ELKS.  This
requires supporting  7 indirect blocks.

I will volunteer to fix the 512k block limit, but I'd like someone to
build a standard distribution, that includes all commands and kernel and 
allows *everything* to be built from the top with one "make all".

In addition, being the chief nano-X contributor, I would like to see
ELKS bundled with a nano-X distribution. I ported and maintain
nano-X for ELKS, so I can help with this.


:   A decent text editor.
Use levee for now, I've got a vi, but we need to actually
try to use ELKS's filesystem, signals, and pipes before you'll want to edit
anything for keeps.

:   Networking.

I think we need ELKS DLL's for this, so that we can run the kernel and 
any user programs with separate code and data segments to keep the link
size  64k.  Al has done work on shared libraries, and I have some ideas more
akin to Windows real-mode linking, but we need mods to the development tools
for this.  I'll do them if you want.

:   Romability. (I think I just invented a new word! 8*)
:   More standard unix commands.

Please make a list of commands you want.  It would be nice
to list the commands we have, and what doesn't work with them.



:   Protected mode stuff. (With Expanded memory support).

We're a ways off from this, but it'd be nice.  I'd like to see
support for  64k segments.
: 
: 
: Some of these things will be difficult (if possible), but I think that
: this is what we need to make it into a useable system. If people can use
: the thing, then they are a lot more likely to work on it / test it.

I totally agree.  Pull down ELKS, and elkscmd, and compile them
and run them and send comments to this list as to what works and what doesn't.
Al said that he got signals working with the latest version, but I don't know
what the number is or where to find it.  The version that I last ran, 0.0.74,
couldn't do "ls  file" or "ls | more" without dying or breaking the file system.

Greg




: 
: 
: Luke(Boo) Farrar.
: 
: 
: 
: 




SV: Capabilities

1999-06-01 Thread Thor Harald Johansen

 Why on earth do you want pico?  Apart from the fact that there's probably
 not enough tty support in the kernel yet, the Linux binary is 440k
 (without libc, ELKS needs to be static).  So the answer is no, unless you
 remove all the functionality.

Okay. I need a reasonably good text editor. Point me to one, please. ;)
--
Thor Harald Johansen
[EMAIL PROTECTED]



SV: Capabilities

1999-06-01 Thread Thor Harald Johansen

 Depends on the shell you're using - I believe sash doesn't implement
 pipes yet, but I'm not sure about the other shells...

There are other shells?
--
Thor Harald Johansen
[EMAIL PROTECTED]



SV: Capabilities

1999-06-01 Thread Thor Harald Johansen

 Afaik pico is small enough. You can give it a try.

Hm...someone claims it uses things that are not implemented in ELKS yet.

 Yes. Use ash.

Where do I get it?

Oh, by the way, the standard shell, is it very poor compared to other
shells? Can I make ELKS boot from ONE disk instead of a boot + root disk?
--
Thor Harald Johansen
[EMAIL PROTECTED]



Re: SV: Capabilities

1999-06-01 Thread David Murn

On Tue, 1 Jun 1999, Thor Harald Johansen wrote:

 Okay. I need a reasonably good text editor. Point me to one, please. ;)

levee comes with the elkscmd package.

Davey



Re: SV: Capabilities

1999-06-01 Thread David Murn

On Tue, 1 Jun 1999, Thor Harald Johansen wrote:

 Oh, by the way, the standard shell, is it very poor compared to other
 shells?

Actually, it's not, if you look at all it's doing.  Sash as a shell is
very basic, but internal to that one executable are a LOT of prorgams.
From small programs such as cat, echo, cp, etc. up to ls, ed and tar.

 Can I make ELKS boot from ONE disk instead of a boot + root disk?

Yes.  Get the 'combo' disk image in the images.zip file.

Davey



Re: Capabilities

1999-06-01 Thread Aidan Skinner

-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

On Mon, 31 May 1999, Thor Harald Johansen wrote:

 Is it possible to compile 'pico', the text editor, for ELKS? And does piping

Pico is suprisngly large, it would probably be a lot more sensible to use
a much smaller editor with more limited functionality.

- - Aidan
- -- 
http://www.skinner.demon.co.uk/aidan/
Real men whistle ed commands at 300 baud into a can.

-BEGIN PGP SIGNATURE-
Version: PGPfreeware 5.0i for non-commercial use
Charset: noconv

iQA/AwUBN1NQvB1TS8W4wwL/EQIMogCg5mwi37i03xqRJwM5tZK6lgbxTm4An0mg
nzn4+qascVETeD3YWQ9Wunot
=RQv5
-END PGP SIGNATURE-



Re: Capabilities

1999-06-01 Thread Luke (boo) Farrar




On Mon, 31 May 1999, Thor Harald Johansen wrote:

 Is it possible to compile 'pico', the text editor, for ELKS? And does piping
 work ('', '|' and '') properly yet?
 --
 Thor Harald Johansen
 [EMAIL PROTECTED]
 
Pico would be great, but is is part of Pine, the email program so it
wouldn't be as easy to port as you might think. But It would probably be
doable. I always use pico myself.

Luke(Boo) Farrar.




Re: Capabilities

1999-06-01 Thread Luke (boo) Farrar




On Tue, 1 Jun 1999, Aidan Skinner wrote:

 -BEGIN PGP SIGNED MESSAGE-
 Hash: SHA1
 
 On Mon, 31 May 1999, Thor Harald Johansen wrote:
 
  Is it possible to compile 'pico', the text editor, for ELKS? And does piping
 
 Pico is suprisngly large, it would probably be a lot more sensible to use
 a much smaller editor with more limited functionality.
 
 - - Aidan
 - -- 

How about a pico clone - It is pretty simple. Isn't it?
Luke(Boo) Farrar.



SV: SV: Capabilities

1999-06-01 Thread Thor Harald Johansen

 levee comes with the elkscmd package.

Do I just type 'leevee' after installing the package?
--
Thor Harald Johansen
[EMAIL PROTECTED]



SV: Capabilities

1999-06-01 Thread Thor Harald Johansen

 Pico is suprisngly large, it would probably be a lot more sensible to use
 a much smaller editor with more limited functionality.

Okay. Point out one that works!
--
Thor Harald Johansen
[EMAIL PROTECTED]



Re: Capabilities

1999-06-01 Thread ekuiperba



On Tue, 1 Jun 1999, Luke (boo) Farrar wrote:

 
 
 
 On Mon, 31 May 1999, Thor Harald Johansen wrote:
 
  Is it possible to compile 'pico', the text editor, for ELKS? And does piping
  work ('', '|' and '') properly yet?
  --
  Thor Harald Johansen
  [EMAIL PROTECTED]
  
 Pico would be great, but is is part of Pine, the email program so it
 wouldn't be as easy to port as you might think. But It would probably be
 doable. I always use pico myself.
 
 Luke(Boo) Farrar.
 
 
 

what about 'joe'. It is an excellent wordstar key based editor that may be
portable to ELKS. Several of the more eccentric features could be removed
if need be.

Beau Kuiper
[EMAIL PROTECTED]




SV: SV: Capabilities

1999-06-01 Thread Thor Harald Johansen

 Yes.  Get the 'combo' disk image in the images.zip file.

Can this image be used with the ELKS booter for DOS?
--
Thor Harald Johansen
[EMAIL PROTECTED]



RE: Capabilities

1999-06-01 Thread Gray, David W.

Might have a look at (older versions!) of joe. Originally a very simple
wordstar clone, seems to have a BAD case of feeping creaturitis...

-Original Message-
From: Thor Harald Johansen [mailto:[EMAIL PROTECTED]]
Sent: Tuesday, June 01, 1999 1:37 PM
To: Luke (boo) Farrar
Cc: [EMAIL PROTECTED]
Subject: SV: Capabilities


 Pico would be great, but is is part of Pine, the email program so it
 wouldn't be as easy to port as you might think. But It would probably be
 doable. I always use pico myself.

Tell me of another editor. :)
--
Thor Harald Johansen
[EMAIL PROTECTED]



Re: Capabilities

1999-06-01 Thread Ross Vandegrift

Tell me of another editor. :)


You're not going to like your more reasonable options, but I'll be blunt: vi
or ed should work nicely, when ported.

Ross




Re: Capabilities

1999-06-01 Thread Alistair Riddoch

Ross Vandegrift writes:
 
 Tell me of another editor. :)
 
 
 You're not going to like your more reasonable options, but I'll be blunt: vi
 or ed should work nicely, when ported.
 

Why would anyone want to use any editor other than vi?

Al
ZZ



Re: Capabilities

1999-06-01 Thread Ross Vandegrift

But seriously...  I'm wanting to get my C skills back into shape.  Can
anyone
think of a good program to port?  Maybe "ed" wouldn't be such a bad
start...  or
maybe some old games from Slackware's Y package...


ed would be a good start, but I'd rather see a vi implementation.  When a
Un*x has vi, it can finally be called an OS ;-).  Along the Y package, how
about the fortune program?  It's cute, it's funny, and it shouldn't be too
difficult.

Ross



Re: SV: Capabilities

1999-06-01 Thread Riley Williams

Hi Thor.

  Depends on the shell you're using - I believe sash doesn't
  implement pipes yet, but I'm not sure about any other shells...

  There are other shells?

I have heard rumours that there's a version of ksh working for ELKS,
but I've never managed to track it down...

Other than that, there's just the 'shell hacks' (as I call them),
where somebody writes a C program that displays a menu on the screen,
waits for a valid keypress, then executes whatever command has been
associated with the relevant menu option by the programmer.

If there are any ELKS shells other than those, and any reader of this
email both knows of them and where to find them, YELL BY EMAIL!!!

Best wishes from Riley.

+--+
| There is something frustrating about the quality and speed of Linux  |
| development, ie., the quality is too high and the speed is too high, |
| in other words, I can implement this  feature, but I bet someone |
| else has already done so and is just about to release their patch.   |
+--+
 * ftp://ftp.MemAlpha.cx/pub/rhw/Linux
 * http://www.MemAlpha.cx/kernel.versions.html



Re: Capabilities

1999-06-01 Thread Ross Vandegrift

 You're not going to like your more reasonable options, but I'll be blunt:
vi
 or ed should work nicely, when ported.


Why would anyone want to use any editor other than vi?


::Tactfully sidesteps impending religious war::

Is there a reason that I got two of this message?

Ross



Re: Capabilities

1999-06-01 Thread David Murn

On Tue, 1 Jun 1999, Ross Vandegrift wrote:

 ed would be a good start, but I'd rather see a vi implementation.

ed, is called (surprisingly) ed.  vi is called levee.  Those 2 programs
are already there in the elkscmd package.

Davey



Re: Capabilities

1999-06-01 Thread Matthew Kirkwood

On Tue, 1 Jun 1999, Alistair Riddoch wrote:

  Tell me of another editor. :)
 
  You're not going to like your more reasonable options, but I'll be
  blunt: vi or ed should work nicely, when ported.

 Why would anyone want to use any editor other than vi?

Laziness.  I invested an hour in /usr/doc/vim*/TUTORIAL and I'm much
more efficient and portable for it.

(Previously, I was ferrying Pico binaries around the various boxes we
have here :)

Matthew.



Capabilities

1999-05-31 Thread Thor Harald Johansen

Is it possible to compile 'pico', the text editor, for ELKS? And does piping
work ('', '|' and '') properly yet?
--
Thor Harald Johansen
[EMAIL PROTECTED]



Re: Capabilities

1999-05-31 Thread Riley Williams

Hi Thor.

  Is it possible to compile 'pico', the text editor, for ELKS?

No idea, sorry.

  And does piping work ('', '|' and '') properly yet?

Depends on the shell you're using - I believe sash doesn't implement
pipes yet, but I'm not sure about the other shells...

Best wishes from Riley.

+--+
| There is something frustrating about the quality and speed of Linux  |
| development, ie., the quality is too high and the speed is too high, |
| in other words, I can implement this  feature, but I bet someone |
| else has already done so and is just about to release their patch.   |
+--+
 * ftp://ftp.MemAlpha.cx/pub/rhw/Linux
 * http://www.MemAlpha.cx/kernel.versions.html