Jody wrote: >* I have a TRS-80 CoCo and an Apple IIgs. Maybe we should port ELKS to those. ;-) I also have a CoCo. Got rid of my older PCs and my oldest is now a 586, but I kept my CoCo. Royce wrote: >Thinking pie-in-the-sky .... I think that using it to teach elegant OS >programming under resource constraints would be a great niche. It's a >lost art, but one that has many "teachable moments" built in. That sounds like a great idea. One of the reasons I was interested in Elks in the first place is because I wanted to find code that worked well on low resource systems. I think there's a need this. If the project could get some educational groups involved, it might even pick up some volunteers to help test or code. I can mention it on Schoolforge if that would help. Jody Bruchon wrote: >I think this is a good niche, but it will require that ELKS diversify beyond the 8086. I see the low-end 32-bit Intel platforms as a good target to begin with; while one can build a nice small Linux for use on a 486, Pentium, or even a VIA C3 or Transmeta Crusoe, such systems are grossly underpowered and somewhat memory-starved for modern Linux, glibc, X.org, gcc, and so on. There are some Linux distributions that target 486s and up. Most of them seem resource heavy to me (and typically use GTK 2 or 3 applications), but they do make an effort to work on older systems. A couple of distributions I've been looking at that do work well with low resources and make an effort to use more efficient programs are NanoLinux ( http://sourceforge.net/projects/nanolinux/ ), based on Tiny Core Linux and Nano-X, and Rogue Class Linux ( http://rogueclass.org/ ), gaming system using the framebuffer and SDL. Also, the BSD systems seem to work better on low resource machines than Linux does. I still think there's a lot of room for improvement in what's available (especially as far as resource efficient and easily readable and maintainable programs) for older x86 systems with limited resources. It's still good to check what's already out there and not reinvent the wheel first though. Devices like Raspberry Pi are also a possible target option. I don't think I've seen one distribution for the Raspberry Pi that's what I would call truly efficient and targeted for low resources. If a standard Linux distribution is running okay on one of these devices, imagine how fast a well designed system would run. >So we come back to the original problem: we either need a compiler or a change of target.. Seems like gcc and llvm are the most active as far as compilers at this point. gcc still seems to work on more platforms than llvm. gcc plus musl (for the standard C library) makes an interesting lighter weight combination. The code for OpenWatcom is also available and it works on several platforms (DOS 16 and 32 bit, Windows, OS/2 options are available and a Linux target is in the works). It's not as actively developed as it once was, but it used to be the most efficient C/C++ compiler out there for DOS/Windows at one point. It also has the only 16 bit C++ compiler for DOS that I've been able to find. STL support is not the best. I ended up creating my own container library and used it instead. OpenWatcom is at http://www.openwatcom.org/index.php/Main_Page There's a recent fork at http://sourceforge.net/projects/openwatcom/ I personally like the idea of portable (supporting more than one target). That way you're not stuck with an operating system that works on processors or hardware that are no longer available. Don't know if anyone got further on the project to create something like Busybox for Elks. I've been looking into using some of the earlier Minix utilities with some BSD utilities. I also have some alternatives to GNU libintl and libiconv that are more lightweight than the GNU versions. At present, I only have x86s (586 and up) systems to test with. However, would love to find an efficient but still fully functional operating system to use on all of them. I've been searching for/adapting lightweight applications for the command line and applications using SDL 1.2.x, FLTK 1.3.x and/or ncurses/pdcurses and attempting to avoid the heavier GUI toolkits. I already have a pretty good collection, but there are still some gaps I'm looking to fill. I've also been looking into backend options for some of the GUI toolkits such as framebuffer, directfb, nano-x, X, etc. This also might be of interest. Someone using musl forked Elk's man program ( https://github.com/rofl0r/hardcore-utils/blob/master/man.c ). Don't know if it has any significant improvements over the current Elks version, but thought I'd mention it. I've been using the Elks version of man on Linux and Windows systems. Like it much better than the standard man implementation. Sincerely, Laura http://www.distasis.com/cpp -- 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