Yes, I know that IBM-PC is not a Mac and does not have all many registers
but ELKS does not use all of them anyway! IIRC the ES register is not
used and thus can be used in much the same way. Also, PC code is usually
riddled with Int calls so why not use something like this...
Once you
Chipsets? I'm building custom hardware because I want to get away from
chipsets. completely unnecessary for my task. Plus, I'd have to go thru
the expense of developing a custom bios and its not worth it.
How much CPU power do you actually need. If you can lay your own high
speed boards
Also, your point about using bios to get memory from pmode
would allow us to use a fancier scheme (like the existing linux kernel's)
On a 286 or higher the right answer is quite simply to run in 286 protected
mode - its not _that_ hard to do.
in order to get other memory? Or is that what
The linux kernel is too large for embedded system. We may no want a
file system at all. One way to do this is to implement the application
as the init program called by the kernel after booting, or just find the
place
that opens and executes init and change it to run the application
There is an ELKS port to the Z80 ? That sounds nice. Can you tell me more
about it ? Would be great to run Linux on my beloved Z80 machines in my
"Museum".
Why is ist stopped ?
ELKS is too big for this - look at UZI (ftp://oak.oakland.edu/CPM) and
OMU (http://tallyho.bc.nu/~steve)
Alan
The GEM code is neat, and it *is* GPL'd, so maybe we can play
with it, but it's always more fun to write our own code than
port. =)
Sure, it's more fun, but if you port code, then you can actually get some
sort of relatively fast turnover of applications.
GEM is btw pretty limited. You
Why is that? to keep the kernel smaller? My initial idea matched with
Yes. And also because you may be restoring to another graphical app..
On Mon, 17 May 1999, Greg Haerr wrote:
1. IBM MDA.
no graphics support...
Umm, are you sure? We used to run windows 3.0 on amber monochrome
monitors at college.
I am also unsure.
Can someone with a clue speak up?
MDA is text only, Hercules is the mono graphics display
'vi' is powerful? I think it looks kind of like EDLIN. Must scare a lot of
people off, considering EDLIN's capabilities. I prefer editors like edit
vi is powerful. Powerful and usable are two often non-intersecting fields.
How is the ELKS API accessed in assembly? I think I'll need that if
: 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
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
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
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
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
Hey, recently a friend of mine mentioned something called UZI to me, which
supposedly was/is a *ix for the z80, and ported to the z280. Anyone else more
familiar on it?
oak.oakland.edu:/pub/cpm/uzi
Your summary seems pretty good.
So its
384K base
64K window
64K window
(junk)
The segment switching for ramdisks is a non issue. We are either writing to
the code or data segment, so you an do large I/O's to the window boundary
using one segment for the target
No need. MicroWindows handles the Bresenham algorithm in the mid
level code in devdraw.c. It uses successive calls to drawpixel to make it work.
In this way, people like you and me don't have to rewrite bresenham for every
card someone wants
The code in devdraw.c is very naiive.
The web message is not very friendly though!
*shocked amusement*
WEB PAGE CONTENT:
GO AWAY, Your bugging me.
Indeed - terrible grammar ;)
The source code for GEM desktop is AVAILABLE?! I've always wanted it!
Where!!?!?!
Caldera released it , CP/M and some other oddments from the DR-DOS pile under
a no commercial use license.
CP/M is elegant code. CP/M 68K is really nice. GEM is just plain ick
Hi all,
At 10:32am GMT, 18th July 1999, a host on the domain shared by
doa.org was entered into the ORBS database. As a result, some users have
had mail bounce from the developers mailing list. Any mail address which
bounces to this list with an error such as the ORBS error, or a
Are the 8086 instructions compatible with any intel
microcontrollers such as the 8051, 8057 80257 MC80257 etc? If so, very
Not to my knowledge.
cool linux machines with LCD displays and cheap MCUs can be build for the
third world :) . Any ideas anyone??
Low end ARM chips like the
...away from the rest of the process, the bottleneck seems to be
the machine layout... not the OS. I just cant seem to find a good list of
all available mcus that run linux. the ARM website says nothing of the OLD
ARMs like arm2/3, it starts with ARM6 which could be too much and too
1). Reduced character size to 8x8 to increase screen size and save memory
(the font is held in Data segment)
Can you not find the Psion font in rom ? Also you could push the font into
its own segment and 'borrow' ES momentarily with a cli around a single char
render.
1). The current version
exist, what does this do and should this file be writable (which won't
be
possible with a read only file system!)?
Eventually you are going to need a ram disk.
[Simon Wood]
Why ???
I agree that in a 'PC' type environment you will need disk storage, but
there are many
Does this include the 8051 8031 8751 etc?? Are there other linux or
otherwise UNIX compatible embedded system OS that works in Z80 an 8051?
UZI runs on a Z80
What is needed is a similar function, perhaps peekd() which
would return a long. Then we could define a macro get_user_long()
You mean
unsigned long peekd(unsigned short *x)
{
return peekw(x)(peekw(x+1)8);
}
Basically, the time-honored FILE * constants stdin, stdout, and stderr are no longer
constant. The offending line is:
They've never been constants in all cases.
done this? It's going to screw up alot of old programs.
only broken ones as far as standards believe
http://www.zilog.com/ez80/
Someone now design a cool linux box with the ez80.
Would it be possible as it has a MMU and supports 16mb of memory ?
You'd need to get the compiler kit working first, but I guess so
: for task switching), can bcc handle that? Or create something like an
: indirect jump and glue code in the library.
The indirect jump and glue code is exactly what is needed out of bcc.
currently, it doesn't generate any of that kind of code.
It also cant do that on an 8086
As I mentioned before, if this were performed with code segments
only, then they could still be shared with the resulting memory decrease benefit.
But is outweighed by the cost of no swapping or defragmentation
In fact, with a ridiculous increase in code size, all absolute
So even though David Bell said "Permission is granted to use, distribute,
or modify this source, provided that this copyright notice remain intact" we
can say that now his code is subject to another agreement, the LGPL?
Doesn't the LGPL restrict more than the above?
Yes. But that is
people will be able to hide drivers from us, as I think this has the
potential to seriously injure Micro*'s open-source value.
So has the lack of support for on devices where specs simply aren't openly
available.
In the longer term XFree86 has gained by the fact vendors wont ship binary
In the longer term XFree86 has gained by the fact vendors wont ship binary
only kit. Its now at the point that 'Linux' is a question big vendors ask
and that 'no' costs you bulk sales
I don't understand. What do you mean?
"I want to make Linux support an XYZ card"
"Im sorry we only
As long as the API and/or messaging protocol are open spec, then anyone
can write their own library. X is an example, XFree uses opensource
license, metrox and accelx used closed. Same function, same result, but
they had to write their own library.
[Equally a server]
Actually they
I disagree. If a vendor can take the proprietary route, he probably will.
That doesnt back up experience. The only vendor who wants to take a proprietary
route is one for whom this is 'core technology'. To everyone else its overhead
and overheads want reducing so you make more profit on the
Actually, the BSD and X licenses best reflect the needs of embedded
developers.
The X one does. The BSD original format doesnt. The advertising clause got
a netbsd router project by a very large networking company canned
Also, on another note, in catching signals in Linux from the terminal
emulator, I attempt to send them to the process group with killpg().
This routine under ELKS causes an undefined symbol getgpid() when
linking. It appears there's an error in linux-8086 libc.
That should be getpgrp() I
I might be able to take a look, it has been a while since I did any 6502
assembly, but ...
BTW is their any reason why we don't do a full re-implementation. It can't
be that bad.
If you want to write one from scratch sure go ahead and do it.
Alan
The only reason I suggested using 0.1 as the stable tree is because we are
currently heading towards making 0.1.0 a stable version.
Well we've never applied any idea of stable/not before 1.0 to mainstream
Linux. I think tradition is 0.x = unfinished
Alan
drive. The processor is a NEC V20. I would like to use the machine
for something other than a oversized door-stop.
You could saw it in half and use it as too suitable size doorstops ?
1) Will ELKS work on this machine?
It tends to use the BIOS so probably
2) What
one more thing: the `date.c' does nothing about setting the date. can we
use anything else than BIOS calls to do that?
If the machine has a CMOS clock (note XT's dont generally have this) you can
do it in userspace by hitting the I/O ports. Its not really worth putting
in kernel on such a
In my proposed setup I don't have hdd/fdd. I am just having CDROM drive
and 16MB RAM, 486 PC. I am interested in booting linux from CDROM and run
a browser like Netscape from the same CD.
Wrong list. This list is for Linux on 286 or lower CPU machines
Alan
development environment with an embedded OS. In order to do this I must
add SLIP PLIP to ELKS, I would like to get in contact with the
relevant ppl to find out what is being done, and what needs to be done
on the networking layer.
We dont really have a networking layer. I don't that is in
Yes, I suppose it would be good news also, if only their browser was GPL (or
some other genuinely free open-source license). However, AFAICT it is
thoroughly proprietary.
Maybe they will choose to contribute back to Microwindows. However, since
Microwindows isn't GPL (it's MPL) they
I have heard a lot of things about konqueror, and much of it is not really
good.
I really cant tell, I haven't seen anything of it. Is it as good as the
developers
say it is ?
Not in my opinion, but its also not as bad as some of the people who complain
about it make out either
need to be done once, and it would not be necessary to increment the
refcount artificially. Could anyone with a good understanding of the fs
code comment on this? I would particularly like to here what Alan thinks.
The refcount is bumped otherwise you may get a race when an inode is freed
by
The Athlon should run Linux fine. It doesn't have any optimizations from a kernel
standpoint, but that'll come in time.
They are in 2.3.x. I have 2.2.x patches but they arent generally available.
If you get an athlon, you're going to be paying for floating point performance,
and not
at extremely high speed. Unlike the Xlib implementation, Nano-X still runs
synchronously per client, meaning that once a client request packet is sent,
the server waits until the whole packet has arrived until servicing another
client.
This keeps the server code immensely simpler, while
I fully support that idea. I've also got versions of libc-8086 and the
minix libraries cross compiled, but the libc.a is too large for the
ELKS file system, since ELKS has a filesystem implementation problem
for any file 512k
Just fix the triple indirection and you can have 2Gig files
if (irq 8) {
cache_21 |= 1 irq;
outb(0x21,cache_21); --- outb(cache_21,0x21);
} else {
cache_A1 |= 1 (irq-8);
outb(0xA1,cache_A1); --- outb(cache_A1,0xA1);
Linux outb() macros are data, port
that might be useable as a user-mode ELKS implmentation
of IP, UDP and TCP. And it supports alot of different cards
Not directly tho
as well as serial.
KA9Q net was the earlier package, it ran on CP/M once so may fit
Do any one had a linux ported to Hitachi processor.can elks can
be used
for embedded systems is there any one who is intrested for a linux
kernel
development.
There is a standard linux port for SH3
Alan
I have a 386 AND a 486 that I am unable to bring up on Linux because the
current version requires more than 8 MB ram. The setup that I want requires
No. The current Linux is fine in 4Mb. The distribution installers with all
their GUI garbage frequently require more. If you are trying to build
I have started porting ELKS for ARM.
Is is somebody working similar project?
I believe there is a ucLinux ARM project for the 7500T. (ucLinux is full
Linux without an MMU)
Alan
1) Is ELKS qualified for Safety applications (Eg: Plant Temperature Control system,
and is the Kernel development controlled by some body of members)
Right now ELKS is a 'hey it sort of works' piece of fun
2) I have a 8088 based Industrial PC\XT board and is it possible to run Linux on it.
dosemu is enough for Elks. I did not try yet but it must be light and fast.
If someone want to run Elks on non x86, then she need Bochs
Also there is alternative of VMware is under development with GPL...
http://www.plex86.org/ (it was called FreeMWare). I am expecting this...
Also
Looking at the state of the project it is no longer obvious to me which way to
proceed. It essentially runs pretty stably on all my test platforms, and I
have reached the point where it is no longer obvious to me what to do next.
Any ideas anyone?
Call it 0.99 announce it and go on holiday
Does this mean ELKS has TCP/IP networking with PPP and/or SLIP?
Nope. Thats a totally seperate project
Then I am missing quite a bit of recognition of the early work in
porting UNIX in the form of Minix by the group of Andy Tanenbaum.
We still have the minix format around, but Andy was one of the
first the throw open the full source code for Minix in his book:
Operating Systems, Design
is out there and ported to a micro or two. Only does PPP though.
It appears to be derived from KA9Q, BSD and Linux code. I think the site
is http://www.ucos-ii.com/
KA9Q is $50 a copy of non education/non amateur radio users
Alan
Anyone know if I can a get a UNIX-like OS on my PSION 5, does it
require a flash card for extra storage space? (8meg...)
Linux is running on the 5 but not 5MX. You want a flash card for it. You also
want to think what your intended use is - the speed on those kind of devices
is not
actually, I am intending to use it for C programming (on the move...)
from CLI, cos its got a HUGE battery life and Im learning C.
Common misconception. It is designed to operate on a very low power level.
When you start needing high power levels its battery life is poor.
Alan
After all, there exists MINIX and open-source 11Kb kernels
for microcontrollers with TCP/IP stack and all...
11K with tcp/ip - I've not seen that. 11K core oh and its 30K for TCP minimum
but we didnt tell you until you asked I have seen ;)
for(i=0; i6; ++i)
;
nosound();
}
which is way too long (5 seconds) for any 8086 I've ever used (or my
Tandy's V-20). Is there something akin to bogomips that is tested by ELKS
that can be used to set the loop to some processor speed dependent value?
Use the bogomips
: I think I've figured how to
: sort some of the stack handling stuff out and get some of our data space
: back.
You're not thinking of backtracing stack addresses, are you?
No. Something much simpler. The idea being to get into a state where there
is nothing on the kernel stack needed
and the source is now stored under CVS at sourceforge:
http://sourceforge.net/project/?group_id=3232
I'll grab the sourceforget copy and probably send you diffs. (I dont have
the local bandwidth to fight cvs)
Is this in some way related to your idea of moving the structure required from
the
We have far too much ifdef crap. We appear to have more build options than
users. I've stripped out some of them in my tree (NOFS, SUID, CORE DUMP)
and I'll clean up more as I go so we actually have one OS not one OS each.
I've rewritten the wait queue code. We now do it sort of V7 style. You
I've gotten pretty familiar with the linker, let me know if you
need a hack. Otherwise, my memory says that we've got enough
info in the current header to put the stack below the data, providing
the linker will change the beginning data offset to the max stack size.
We can already build
[The full patch is 80K - who wants to check it in ?]
--- elks/CHANGELOG Fri Mar 3 11:42:19 2000
+++ elks-ac/CHANGELOG Mon Jun 19 23:52:08 2000
@@ -6,6 +6,31 @@
Al
--
+Mon Jun 19 29:39 GMT 2000 Alan Cox
Could anyone explain me what is a V7 like wakeup mechanism?
Old old unix systems took the address of the thing they wanted to wait on
and placed it in the task structure. Since the number of processes is pretty
low its easy for the CPU to walk the process table on a wakeup checking
if the
From what I understand, using the task struct to keep track of sleeping
processes, limits the number of processes the kernel can handle. If you
In a sense since wakeup is O(N) by number of processes
processes, you can increase functionality. If the number of sleeping
processes is more then
various extended features (which few use) can then be easily added
on a personal basis. I doubt that ELKS has ever run more than 15
processes, for instance.
For reference the standard V7 builds were for about 30-60 processes (60 being
a big box).
like system for 286. For this I would need some doc on very accurate
doc on programming i286 in pmode and some doc on MinixFS (ok, I know almost
The Minix book covers the minixfs a bit. The 286 stuff I dont know good docs
on - they all seem to be discontinued. The pII downloadable manuals are
73 matches
Mail list logo