Also, not only did those systems have lots more RAM than the AVR but they also used files on a disk (floppy)
to do things just like our more modern systems.
I'm thinking you guys that are thinking this is possible on an AVR don't understand how programs
and embedded images are built.
Here are the basic steps to compiling and linking an image:
- cpp processes the .c or .cpp original source file to creates the pre-processed file
it will need access to all the files are included using #include.
- the compiler processes/compiles the cpp files and creates the assembler code in a file.
- The assembler runs and builds the .o
- This repeats for all the files being built.
- The linker processes all the .o files and links against any pre-built libraries
(like the C startup & runt time libraries) to create a linked image.
Now toss in Arduino and the way it works and you have even more "mess" to deal with.
There is a LOT of goofy stuff that the IDE does to turn a .ino file
into a .cpp file. This requires access to all the library directories
(both the IDE supplied one and the user sketchbook one).
Then because the Arduino system doesn't really use libraries,
(Other than for the "core" code, Arduino doesn't use real libraries, it builds all the files in its "libraries"
and links against the individual .o files for each "library" used)
the IDE must compile all the needed files for the "libraries" it happened to notice while
doing that first pre-processing step.
So even if you had more RAM, there would not be enough FLASH in the part
to hold all the source code to all the "libraries" which have to be scanned and built.
Bring up the IDE and build a sketch then go look down in the tmp directory at all the files created.
In order to build an image you would need to have room for all those files.
The build process could be streamlined and made smarter to use real libraries
which would eliminate having to compile "library" code modules but even if you did that
there still wouldn't be enough room to hold the .a library files much less all the include files
needed to compile the sketch.
Even if you used an SD card for all the files, there still isn't enough ram to able to
support all the internal data needed to run something like a C pre-processor or a compiler.
It just isn't possible.
As far as the PIC running unix goes, if I remember correctly the PIC was not
actually running linux but emulating an ARM system which ran linux. - This is not the same thing.
Since it was emulating, it could also create a h/w interface to use more ram.http://www.extremetech.com/extreme/124287-the-worlds-slowest-linux-pc