Discussion:
[Freedos-kernel] EXT3 support
Daniel G.
2015-08-14 07:38:16 UTC
Permalink
Greetings,

I was reading the FreeDOS development wish-list and adding ext3
support to the FreeDOS kernel is on the list. Is anyone working on
this at this time?
Thank you for your time.


God Bless.

Till






------------------------------------------------------------------------------
João Jerónimo
2015-08-14 09:38:00 UTC
Permalink
Wouldn't it be better to use a redirector? This can be done with a TSR.

João Jerónimo
Post by Daniel G.
Greetings,
I was reading the FreeDOS development wish-list and adding ext3
support to the FreeDOS kernel is on the list. Is anyone working on
this at this time?
Thank you for your time.
God Bless.
Till
------------------------------------------------------------------------------
_______________________________________________
Freedos-kernel mailing list
https://lists.sourceforge.net/lists/listinfo/freedos-kernel
------------------------------------------------------------------------------
Till
2015-08-14 22:00:44 UTC
Permalink
Post by João Jerónimo
Wouldn't it be better to use a redirector? This can be done with a TSR.
João Jerónimo
A TSR redirector would be great for assigning an EXT3 drive to a drive
letter for standard I/O operations. However a kernel driver would
allow freeDOS to boot and run from an EXT3 journaling partition, I can
only imagine that the benefits from this would be huge.



------------------------------------------------------------------------------
Louis Santillan
2015-08-14 22:07:48 UTC
Permalink
Maybe, but ext3 was designed as a multithreading FS. The
multithreading becomes single threading so performance would far
worse, and possibly even worse than FAT16/32 or ext3 over redirector.
Post by Till
Post by João Jerónimo
Wouldn't it be better to use a redirector? This can be done with a TSR.
João Jerónimo
A TSR redirector would be great for assigning an EXT3 drive to a drive
letter for standard I/O operations. However a kernel driver would
allow freeDOS to boot and run from an EXT3 journaling partition, I can
only imagine that the benefits from this would be huge.
------------------------------------------------------------------------------
_______________________________________________
Freedos-kernel mailing list
https://lists.sourceforge.net/lists/listinfo/freedos-kernel
------------------------------------------------------------------------------
Tom Ehlert
2015-08-15 13:47:01 UTC
Permalink
Post by Louis Santillan
Maybe, but ext3 was designed as a multithreading FS. The
multithreading becomes single threading so performance would far
worse, and possibly even worse than FAT16/32 or ext3
of course a multithreading FS (read ahead and write behind caching)
has a huge number of advantages which aren't available in a DOS based
kernel, be it FAT or EXT.
Post by Louis Santillan
over redirector.
I very much doubt that the influence redirector or not is relevant,
for speed anyway.

Tom


------------------------------------------------------------------------------
H. Peter Anvin
2015-11-17 05:36:08 UTC
Permalink
Post by Till
Post by João Jerónimo
Wouldn't it be better to use a redirector? This can be done with a TSR.
João Jerónimo
A TSR redirector would be great for assigning an EXT3 drive to a drive
letter for standard I/O operations. However a kernel driver would
allow freeDOS to boot and run from an EXT3 journaling partition, I can
only imagine that the benefits from this would be huge.
You can do this anyway by using an auxiliary bootloader, e.g. Syslinux
or Grub. The idea is that you load the basic DOS into a ramdisk from
the bootloader (e.g. via memdisk) and then you can load your TSR.

What *might* be useful could be a way to have some way for the FreeDOS
kernel to natively boot from a ramdisk in high memory, or at least have
a way to not have the ramdisk become drive A or C.

-hpa



------------------------------------------------------------------------------
João Jerónimo
2016-01-13 12:47:19 UTC
Permalink
Post by H. Peter Anvin
Post by Till
A TSR redirector would be great for assigning an EXT3 drive to a drive
Post by Till
letter for standard I/O operations. However a kernel driver would
allow freeDOS to boot and run from an EXT3 journaling partition, I can
only imagine that the benefits from this would be huge.
You can do this anyway by using an auxiliary bootloader, e.g. Syslinux
or Grub. The idea is that you load the basic DOS into a ramdisk from
the bootloader (e.g. via memdisk) and then you can load your TSR.
What*might* be useful could be a way to have some way for the FreeDOS
kernel to natively boot from a ramdisk in high memory, or at least have
a way to not have the ramdisk become drive A or C.
Hello,
You are right. that's the most logical thing to do in DOS. And even
better if, as you say, ramdisk becomes some drive letter other than A ou C.

JJ
Eric Auer
2016-01-13 16:33:34 UTC
Permalink
Hi HPA and Joao,

support for EXT3 in the kernel would indeed be large/complex.

Only supporting EXT3 READS already would take circa 10 kB of
code, taking the size of the EXT2/3/4 GRUB module as example.

I like MEMDISK bootable ramdisk style: MEMDISK can be booted
by boot loaders which are able to boot Linux, and it can use
any diskimage accessible by such boot loaders, including an
image on EXT3 disks. Boot loaders either pre-compute a list
of sectors to read files or load extra driver modules, which
only have to support reading and which are not kept in RAM.

Regarding the idea to have the kernel "natively boot from a
RAMDISK in HIGH MEMORY which would NOT be A: or C: ... Well,
on modern computers it should not be a problem to "hog" the
drive letter of the A: floppy drive - you probably have at
most ONE real floppy next to that ramdisk anyway and letter
B: is still free :-) So in that sense, MEMDISK is ok for me.



A ramdisk is often very small in RAM, so I think the benefit
of compiling one into the kernel would be small compared to
simply using pre-existing 3rd party ramdisks like MEMDISK.

However, for the fans of really tiny settings, have a look at:

http://www.rayer.g6.cz/romos/romose.htm

This project features a "bios" version of the FreeDOS kernel,
by booting the kernel from a 63 kB virtual floppy. The module
including the floppy takes 64 kB in the option ROM area, so
you could compare it to booting FreeDOS from UMB ramdisk ;-)



In totally unrelated notes, I think it would be cool if the
FreeDOS kernel could parse GPT PARTITION TABLES and find FAT
partitions in them. And I think it might be interesting to
be able to read files from the root dir of ISO9660 media if
I/O is provided by BIOS ElTorito calls: That way, the kernel
could load config sys and a CD/DVD driver after some special
boot sector has loaded the kernel directly from CD/DVD :-)

Cheers, Eric

PS: I admit that the last idea is similar to having read-only
EXT3 support in the kernel, but I believe ISO takes << 10 kB.
H. Peter Anvin
2016-08-26 00:07:49 UTC
Permalink
Post by Eric Auer
Hi HPA and Joao,
support for EXT3 in the kernel would indeed be large/complex.
Only supporting EXT3 READS already would take circa 10 kB of
code, taking the size of the EXT2/3/4 GRUB module as example.
I like MEMDISK bootable ramdisk style: MEMDISK can be booted
by boot loaders which are able to boot Linux, and it can use
any diskimage accessible by such boot loaders, including an
image on EXT3 disks. Boot loaders either pre-compute a list
of sectors to read files or load extra driver modules, which
only have to support reading and which are not kept in RAM.
Regarding the idea to have the kernel "natively boot from a
RAMDISK in HIGH MEMORY which would NOT be A: or C: ... Well,
on modern computers it should not be a problem to "hog" the
drive letter of the A: floppy drive - you probably have at
most ONE real floppy next to that ramdisk anyway and letter
B: is still free :-) So in that sense, MEMDISK is ok for me.
So this is a horribly stale discussion, but it seems that all that is
needed is the ability to hide somewhere a preferred drive letter for the
FreeDOS kernel to pick up and use. It is trivial to add support for
passing such information along in MEMDISK.

-hpa


------------------------------------------------------------------------------
Eric Auer
2016-08-26 07:26:52 UTC
Permalink
Hi HPA! The boot sector takes a BIOS drive number of the
to-be-booted drive from the MBR, which can take it from
the BIOS. There also are patches to take the MBR item by
pointer from the MBR, but those are not used by default.

So I guess the kernel could take the drive number from a
boot sector, which at the moment is easy because the boot
sector stores the value from the MBR in the drive byte of
the boot sector loaded into RAM, which is a predictable
location in general. Might be fun for booting from 0x81.
Post by H. Peter Anvin
Post by Eric Auer
support for EXT3 in the kernel would indeed be large/complex.
Would not do that, but would boot DOS by MEMDISK and load a
full EXT3 driver from there later :-) Same for ISO9660, but
there "read files from ISO root dir" might be quite small,
so boot without MEMDISK might be interesting as well...
Post by H. Peter Anvin
Post by Eric Auer
Regarding the idea to have the kernel "natively boot from a
RAMDISK in HIGH MEMORY which would NOT be A: or C: ... Well,
on modern computers it should not be a problem to "hog" the
drive letter of the A: floppy drive - you probably have at
most ONE real floppy next to that ramdisk anyway and letter
B: is still free :-) So in that sense, MEMDISK is ok for me.
Exactly :-)
Post by H. Peter Anvin
So this is a horribly stale discussion, but it seems that all that is
needed is the ability to hide somewhere a preferred drive letter for the
FreeDOS kernel to pick up and use. It is trivial to add support for
passing such information along in MEMDISK.
-hpa
------------------------------------------------------------------------------
H. Peter Anvin
2016-08-26 21:12:40 UTC
Permalink
Post by Eric Auer
Hi HPA! The boot sector takes a BIOS drive number of the
to-be-booted drive from the MBR, which can take it from
the BIOS. There also are patches to take the MBR item by
pointer from the MBR, but those are not used by default.
So I guess the kernel could take the drive number from a
boot sector, which at the moment is easy because the boot
sector stores the value from the MBR in the drive byte of
the boot sector loaded into RAM, which is a predictable
location in general. Might be fun for booting from 0x81.
Post by H. Peter Anvin
Post by Eric Auer
support for EXT3 in the kernel would indeed be large/complex.
Would not do that, but would boot DOS by MEMDISK and load a
full EXT3 driver from there later :-) Same for ISO9660, but
there "read files from ISO root dir" might be quite small,
so boot without MEMDISK might be interesting as well...
Post by H. Peter Anvin
Post by Eric Auer
Regarding the idea to have the kernel "natively boot from a
RAMDISK in HIGH MEMORY which would NOT be A: or C: ... Well,
on modern computers it should not be a problem to "hog" the
drive letter of the A: floppy drive - you probably have at
most ONE real floppy next to that ramdisk anyway and letter
B: is still free :-) So in that sense, MEMDISK is ok for me.
Exactly :-)
Post by H. Peter Anvin
So this is a horribly stale discussion, but it seems that all that is
needed is the ability to hide somewhere a preferred drive letter for
the
Post by H. Peter Anvin
FreeDOS kernel to pick up and use. It is trivial to add support for
passing such information along in MEMDISK.
-hpa
Hi!

Memdisk already supports being a disk number other than 0x00 or 0x80, and the DL register will reflect that. However, I was thinking of provided a more explicit hint, so that scripts can reply on the ramdisk being, say, R:
--
Sent from my Android device with K-9 Mail. Please excuse brevity and formatting.

------------------------------------------------------------------------------
H. Peter Anvin
2016-10-04 14:03:53 UTC
Permalink
Post by H. Peter Anvin
Memdisk already supports being a disk number other than 0x00 or 0x80,
and the DL register will reflect that. However, I was thinking of
provided a more explicit hint, so that scripts can reply on the
So, in case there is any interest whatsoever: I would suggest returning
the desired drive letter in register AL when INT 13h AH=08h is invoked
with the MEMDISK extensions. I can verify that all versions of MEMDISK
that have been created return zero in register AL, so there wouldn't be
a backwards compatibility issue.

-hpa

Ralf Quint
2015-08-14 20:28:09 UTC
Permalink
Post by Daniel G.
Greetings,
I was reading the FreeDOS development wish-list and adding ext3
support to the FreeDOS kernel is on the list. Is anyone working on
this at this time?
Doubtful. It's more likely just wishful thinking from someone who
doesn't know what all might be involved in actually implementing this...

Ralf

---
This email has been checked for viruses by Avast antivirus software.
https://www.avast.com/antivirus


------------------------------------------------------------------------------
Louis Santillan
2015-08-14 21:42:15 UTC
Permalink
Hiren's BootCD has had something called Paragon Mount Everything 3.0.
Or are you interested in writing a new driver?
Post by Ralf Quint
Post by Daniel G.
Greetings,
I was reading the FreeDOS development wish-list and adding ext3
support to the FreeDOS kernel is on the list. Is anyone working on
this at this time?
Doubtful. It's more likely just wishful thinking from someone who
doesn't know what all might be involved in actually implementing this...
Ralf
---
This email has been checked for viruses by Avast antivirus software.
https://www.avast.com/antivirus
------------------------------------------------------------------------------
_______________________________________________
Freedos-kernel mailing list
https://lists.sourceforge.net/lists/listinfo/freedos-kernel
------------------------------------------------------------------------------
Till
2015-08-15 02:55:33 UTC
Permalink
I am interested in writing a new driver, one that would allow you to
boot and run dos on a EXT3 partition. In your other message you said
that ETX3 was a multithreaded fs. In that case it would be wiser to
first add multithreaded support to the FreeDOS kernel. It will be
hard, but well worth the time I believe.

PS(Thank you everyone for your quick replies.)

Till
Post by Louis Santillan
Hiren's BootCD has had something called Paragon Mount Everything 3.0.
Or are you interested in writing a new driver?
Post by Ralf Quint
Post by Daniel G.
Greetings,
I was reading the FreeDOS development wish-list and adding ext3
support to the FreeDOS kernel is on the list. Is anyone working on
this at this time?
Doubtful. It's more likely just wishful thinking from someone who
doesn't know what all might be involved in actually implementing this...
Ralf
---
This email has been checked for viruses by Avast antivirus
software.
Post by Louis Santillan
Post by Ralf Quint
https://www.avast.com/antivirus
------------------------------------------------------------------------------
Post by Louis Santillan
Post by Ralf Quint
_______________________________________________
Freedos-kernel mailing list
https://lists.sourceforge.net/lists/listinfo/freedos-kernel
------------------------------------------------------------------------------
Post by Louis Santillan
_______________________________________________
Freedos-kernel mailing list
https://lists.sourceforge.net/lists/listinfo/freedos-kernel
------------------------------------------------------------------------------
Tom Ehlert
2015-08-15 13:55:08 UTC
Permalink
Post by Till
I am interested in writing a new driver, one that would allow you to
boot and run dos on a EXT3 partition.
booting from EXT3 would require to make EXT3 part of the kernel.
not going to happen.

otoh there is virtually no disadvantage to have a loadable TSR to make
EXT3 available as a redirector.
Post by Till
In your other message you said
that ETX3 was a multithreaded fs. In that case it would be wiser to
first add multithreaded support to the FreeDOS kernel. It will be
hard, but well worth the time I believe.
don't wait for multithreading support from kernel.

in the good old times, when DOS was still active, disk caching
software implemented 'multithreading' by chaining into
TIMER and IDLE interrupts.

just because so far no FreeDOS disk cache supports write caching
doesn't mean it doesn't exist


Tom


------------------------------------------------------------------------------
Till
2015-08-16 04:13:39 UTC
Permalink
Post by Tom Ehlert
booting from EXT3 would require to make EXT3 part of the kernel.
not going to happen.
otoh there is virtually no disadvantage to have a loadable TSR to make
EXT3 available as a redirector.
I think booting from a small FAT partition and using a TSR to make
EXT3 available is the best option then.
Post by Tom Ehlert
don't wait for multithreading support from kernel.
in the good old times, when DOS was still active, disk caching
software implemented 'multithreading' by chaining into
TIMER and IDLE interrupts.
just because so far no FreeDOS disk cache supports write caching
doesn't mean it doesn't exist
I did not know this, thank you for the tip.

Till


------------------------------------------------------------------------------
Alain Mouette
2015-08-15 15:25:39 UTC
Permalink
Why not use all that effort to run FreeDOS over Linux? Dosemu works very
well...

It has already been done in the past, mas it was slackware based and as
soon as released had no mantainance, so it went dead.

*) you get all the drivers to run on any hardware
*) you can run multiple FreeDOS instances, it works very well
*) disk sharing works very well
*) networking via PacketDriver woks just fine, it may just be a bit
confusing to configure

and you can have background tasks in Linux for other tasks ans remote
access.

It would be just fine to make it over Ubuntu LTS, and I am willing to help.

PS: I have some legacy system runing in Dosemu and I use that regularly
for development

Alain
Post by Till
I am interested in writing a new driver, one that would allow you to
boot and run dos on a EXT3 partition. In your other message you said
that ETX3 was a multithreaded fs. In that case it would be wiser to
first add multithreaded support to the FreeDOS kernel. It will be
hard, but well worth the time I believe.
PS(Thank you everyone for your quick replies.)
Till
Post by Louis Santillan
Hiren's BootCD has had something called Paragon Mount Everything
3.0.
Post by Louis Santillan
Or are you interested in writing a new driver?
Post by Ralf Quint
Post by Daniel G.
Greetings,
I was reading the FreeDOS development wish-list and adding ext3
support to the FreeDOS kernel is on the list. Is anyone working
on
Post by Louis Santillan
Post by Ralf Quint
Post by Daniel G.
this at this time?
Doubtful. It's more likely just wishful thinking from someone who
doesn't know what all might be involved in actually implementing
this...
Post by Louis Santillan
Post by Ralf Quint
Ralf
---
This email has been checked for viruses by Avast antivirus
software.
Post by Louis Santillan
Post by Ralf Quint
https://www.avast.com/antivirus
------------------------------------------------------------------------------
Post by Louis Santillan
Post by Ralf Quint
_______________________________________________
Freedos-kernel mailing list
https://lists.sourceforge.net/lists/listinfo/freedos-kernel
------------------------------------------------------------------------------
Post by Louis Santillan
_______________________________________________
Freedos-kernel mailing list
https://lists.sourceforge.net/lists/listinfo/freedos-kernel
------------------------------------------------------------------------------
_______________________________________________
Freedos-kernel mailing list
https://lists.sourceforge.net/lists/listinfo/freedos-kernel
------------------------------------------------------------------------------
Till
2015-08-16 06:09:42 UTC
Permalink
Post by Alain Mouette
Why not use all that effort to run FreeDOS over Linux? Dosemu works very
well...
It has already been done in the past, mas it was slackware based and as
soon as released had no mantainance, so it went dead.
*) you get all the drivers to run on any hardware
*) you can run multiple FreeDOS instances, it works very well
*) disk sharing works very well
*) networking via PacketDriver woks just fine, it may just be a bit
confusing to configure
and you can have background tasks in Linux for other tasks ans remote
access.
It would be just fine to make it over Ubuntu LTS, and I am willing to help.
PS: I have some legacy system runing in Dosemu and I use that regularly
for development
This is a brilliant idea that I would love to see come to life. I'm
interested in hearing more about this.

Till


------------------------------------------------------------------------------
Alain Mouette
2015-08-17 14:40:10 UTC
Permalink
The basic idea is to start with a fresh install of an Ubuntu LTS server.
Then a Script could install all the rest. I am already doing this on a
project and it works very well, all scripts are posted on github:
https://github.com/alainm/nfas (sorry, it's in portuguese due to local
colaborators)

On basic script could install DOSEMU with an updated FreeDOS and maybe a
few needed packages. I have a set of guidelines that I could translate

Another small script could create a DOSEMU instance. The default screen
could be a FreeDOS console
Remember that dosemu can run a DOS program from de Linux command line ;-)

WHAT I DON'T KNOW is the minimum system to run graphics programs in
FreeDOS+Dosemu+Linux, I have allways used with X

_Would you give it a try_? Just start with a plain Ubuntu 14.04 LTS
32bits (use VirtualBox), it has a dosemu package that works prety well

Alain
Post by Till
Post by Alain Mouette
Why not use all that effort to run FreeDOS over Linux? Dosemu works very
well...
It has already been done in the past, mas it was slackware based and as
soon as released had no mantainance, so it went dead.
*) you get all the drivers to run on any hardware
*) you can run multiple FreeDOS instances, it works very well
*) disk sharing works very well
*) networking via PacketDriver woks just fine, it may just be a bit
confusing to configure
and you can have background tasks in Linux for other tasks ans remote
access.
It would be just fine to make it over Ubuntu LTS, and I am willing to help.
PS: I have some legacy system runing in Dosemu and I use that regularly
for development
This is a brilliant idea that I would love to see come to life. I'm
interested in hearing more about this.
Till
------------------------------------------------------------------------------
_______________________________________________
Freedos-kernel mailing list
https://lists.sourceforge.net/lists/listinfo/freedos-kernel
Travis Siegel
2015-08-17 16:17:22 UTC
Permalink
The only problem with virtual box is that it isn't accessible. Any folks
using screen readers are likely to need dosemu instead of virtual box. It
may work under orca, but I've not tested that here.
Just a point of interest for those who need/want to know.



------------------------------------------------------------------------------
Till
2015-08-22 09:58:42 UTC
Permalink
Alain I would love to try this one of these days when I get some spare
time. When I do use it, I will be sure to let you know what I come up
with :)

Till
Post by Alain Mouette
The basic idea is to start with a fresh install of an Ubuntu LTS
server. Then a Script could install all the rest. I am already doing
this on a project and it works very well, all scripts are posted on
github: https://github.com/alainm/nfas (sorry, it's in portuguese
due to local colaborators)
On basic script could install DOSEMU with an updated FreeDOS and
maybe a few needed packages. I have a set of guidelines that I could
translate
Another small script could create a DOSEMU instance. The default
screen could be a FreeDOS console
Remember that dosemu can run a DOS program from de Linux command line ;-)
WHAT I DON'T KNOW is the minimum system to run graphics programs in
FreeDOS+Dosemu+Linux, I have allways used with X
_Would you give it a try_? Just start with a plain Ubuntu 14.04 LTS
32bits (use VirtualBox), it has a dosemu package that works prety well
Alain
Post by Till
Post by Alain Mouette
Why not use all that effort to run FreeDOS over Linux? Dosemu works very
well...
It has already been done in the past, mas it was slackware based and as
soon as released had no mantainance, so it went dead.
*) you get all the drivers to run on any hardware
*) you can run multiple FreeDOS instances, it works very well
*) disk sharing works very well
*) networking via PacketDriver woks just fine, it may just be a bit
confusing to configure
and you can have background tasks in Linux for other tasks ans remote
access.
It would be just fine to make it over Ubuntu LTS, and I am willing to help.
PS: I have some legacy system runing in Dosemu and I use that regularly
for development
This is a brilliant idea that I would love to see come to life. I'm
interested in hearing more about this.
Till
------------------------------------------------------------------------------
_______________________________________________
Freedos-kernel mailing list
https://lists.sourceforge.net/lists/listinfo/freedos-kernel
------------------------------------------------------------------------------
Loading...