Paul Edwards
2024-03-19 03:33:57 UTC
Hi all.
I don't think I expected to ended up on this path,
but I didn't really have a path and here I am.
I have a new version of PDOS/386 that ships with
essential Linux ELF executables to provide a toolchain.
Search for "Linux" at http://pdos.org and download
pdosl.zip .
Nothing more than that. You are then in a position to
compile whatever you want so long as it is C90-compliant.
So it is sort of a public domain mini Linux clone - able
to run certain Linux executables (and build infinite more).
As an alternative to running PDOS/386 directly, I would
like to have a very minimal (real) Linux distribution.
ie a disk just containing the kernel and a shell and I
will (at least initially) need some minimal tools like
ls and more - I believe busybox is a one-stop-shop for
that?
So that's like 3 files on the entire disk.
And this would likely be run under Virtualbox, and then
I would have PDOS/386 as a second hard disk under
Virtualbox. And that's where you get the toolchain from.
I'm not actually very familiar with Linux. I have Kylin OS
successfully (to some extent) installed, and I would
basically like to replace it. I tried installing Puppy
Linux before but was not successful. Can't remember why.
I tend to "learn by doing", so I'd like to start by
creating my own distro. Mainly for developers who want
to see if their executables run under Linux. Exactly
what I was trying to do myself in fact.
Note that the toolchain is very simple with everything
being C90-compliant. I spent a lot of effort making
gcc 3.2.3 C90-compliant so that it can be compiled with
basically any C compiler instead of needing a massive
infrastructure. If you would like to see the ELF version
of gcc 3.2.3 built, you can do so under either PDOS/386
or Linux. Here are the instructions for PDOS/386:
cd \devel\pdos\pdpclib
pdmake -f makefile.lnp
pdptest abc def
cd \devel
unzip \misc\custom gcc-sta*
unzip gcc-sta* (fill this in)
del gcc-sta*
cd gcc\gcc
xcopy config\i386\genfiles\*.* /s /e /y
(don't forget that step above)
pdmake -f linuxp.mak
A very simple (if long) set of C files to build.
Instructions for Linux are basically the same except
using Linux syntax (cp instead of xcopy etc) plus a
shortcoming (hopefully resolvable with /proc/pid/environ)
in PDPCLIB means that you can't run just pdmake, you
need to use the "-n" option, like:
pdmake -n -f linuxp.mak >temp.sh
chmod 755 temp.sh
./temp.sh
Annoying (likely one of many annoying things, like
needing aliases or softlinks for the executables to
drop the .exe), but not a show-stopper in any way.
So.
How simple is it to create a minimal Linux distro?
Someone once made a comment that I need to distinguish
between "Linux" (good) and "distros" (all shit). I'm
sure my distro will be considered shit by many too,
but it will at least be minimal.
BTW, the minimal PDOS/386 distro (able to boot and
provide a (small but sufficient depending on needs)
Windows, OS/2 and Linux API, fits on a 360k floppy.
Thanks. Paul.
I don't think I expected to ended up on this path,
but I didn't really have a path and here I am.
I have a new version of PDOS/386 that ships with
essential Linux ELF executables to provide a toolchain.
Search for "Linux" at http://pdos.org and download
pdosl.zip .
Nothing more than that. You are then in a position to
compile whatever you want so long as it is C90-compliant.
So it is sort of a public domain mini Linux clone - able
to run certain Linux executables (and build infinite more).
As an alternative to running PDOS/386 directly, I would
like to have a very minimal (real) Linux distribution.
ie a disk just containing the kernel and a shell and I
will (at least initially) need some minimal tools like
ls and more - I believe busybox is a one-stop-shop for
that?
So that's like 3 files on the entire disk.
And this would likely be run under Virtualbox, and then
I would have PDOS/386 as a second hard disk under
Virtualbox. And that's where you get the toolchain from.
I'm not actually very familiar with Linux. I have Kylin OS
successfully (to some extent) installed, and I would
basically like to replace it. I tried installing Puppy
Linux before but was not successful. Can't remember why.
I tend to "learn by doing", so I'd like to start by
creating my own distro. Mainly for developers who want
to see if their executables run under Linux. Exactly
what I was trying to do myself in fact.
Note that the toolchain is very simple with everything
being C90-compliant. I spent a lot of effort making
gcc 3.2.3 C90-compliant so that it can be compiled with
basically any C compiler instead of needing a massive
infrastructure. If you would like to see the ELF version
of gcc 3.2.3 built, you can do so under either PDOS/386
or Linux. Here are the instructions for PDOS/386:
cd \devel\pdos\pdpclib
pdmake -f makefile.lnp
pdptest abc def
cd \devel
unzip \misc\custom gcc-sta*
unzip gcc-sta* (fill this in)
del gcc-sta*
cd gcc\gcc
xcopy config\i386\genfiles\*.* /s /e /y
(don't forget that step above)
pdmake -f linuxp.mak
A very simple (if long) set of C files to build.
Instructions for Linux are basically the same except
using Linux syntax (cp instead of xcopy etc) plus a
shortcoming (hopefully resolvable with /proc/pid/environ)
in PDPCLIB means that you can't run just pdmake, you
need to use the "-n" option, like:
pdmake -n -f linuxp.mak >temp.sh
chmod 755 temp.sh
./temp.sh
Annoying (likely one of many annoying things, like
needing aliases or softlinks for the executables to
drop the .exe), but not a show-stopper in any way.
So.
How simple is it to create a minimal Linux distro?
Someone once made a comment that I need to distinguish
between "Linux" (good) and "distros" (all shit). I'm
sure my distro will be considered shit by many too,
but it will at least be minimal.
BTW, the minimal PDOS/386 distro (able to boot and
provide a (small but sufficient depending on needs)
Windows, OS/2 and Linux API, fits on a 360k floppy.
Thanks. Paul.