Re: to make ELKS less 8086-specific and easy portable

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Have you seen Fuzix? It's essentially exactly this: a V7-ish Unix ported to run on very, very small machines. It'll run happily on a variety of Z80, 6809, 68000, 8086 architectures etc. On a Z80 with a basic MMU, like my NC200 laptop, you get about 55kB of userspace per process, which is enough to run some compilers.

https://github.com/EtchedPixels/FUZIX 

In single-tasking mode it'll run on really absurdly small devices: I had it running, happily, on an MSP430 development board with 66kB of RAM, with a 25kB userspace (after severe hacking; it's since bitrotted). http://cowlark.com/2015-10-27-fuzix/

It makes ELKS look big.

On Tue, 31 Jul 2018 at 19:40 Paul Osmialowski <pawelo@xxxxxxxxxxx> wrote:
> Note this message came out of subj: ELKS Git repository up on
SourceForge + patches applied

> Hello All,

> JB>Additionally, I wish to continue discussing options for making ELKS
less 8086-specific, and moving to a compiler that can make ELKS more
easily portable.

> The last discussion about ELKS possible way of porting/evolution was
going on here many years ago. As I remember, I've made short conclusion
for myself out of all those quite intensive message "ping pong" and
brainstorming. The conclusion was similar to: "The 8088/86/286 memory
access models make programming for those processors very similar to many
8-bit chips and PDP-11. The 64kb limit is very strong and serious barrier
that is not possible to overcome without serious performance penalties
(e.g. FORTH or an virtual 32bit RISC CPU). The whole industry already
found the way out by switching to a new hardware with 24/32/64bit address
space, so most sources around the world is not possible to compile using
64kb code/data segments. If you ever run any virtual machine on 88/86/286
CPU with direct memory access to few MB of RAM then you would run ucLinux
instead of ELKS. So, the only possible way for the ELKS evolution is to
support EXE (i.e. multi segments executable) and probably support other
systems with 16bit address space limit (including those 8-bit and
PDP-11)."

> Thanks,

> Andrey

ELKS on 8-bit machines? How cool idea is that?! This reminds me a good
hardware candidate for it, Zilog's eZ80 microcontroller with 24-bit
address space, e.g. eZ80F920120MOD board has 512kB extenal RAM which
should be enough for ELKS. Some time ago I managed to boot Nuttx on it and
telnet into it over TCP/IP (and Nuttx can run on various non-MMU
architectures too starting from 8-bit Z80 through 8086/8088 machines as
well as 32-bit ARMv7m MCUs e.g. Cortex-M4). In theory, old Z80-based MSX
machines were also well stuffed for their times (enough for ELKS), and
non-free modern-era OS'es like SYMBOS can prove good old Z80 is capable to
run multi-tasking OS (well, actually Nuttx also proved that).
--
To unsubscribe from this list: send the line "unsubscribe linux-8086" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Kernel]     [Linux ia64]     [DCCP]     [Linux for ARM]     [Yosemite News]     [Linux SCSI]     [Linux Hams]

  Powered by Linux