Metropoli BBS
VIEWER: features.im MODE: TEXT (ASCII)
.*
.* $Header: D:/ext2-os2/doc/RCS/FEATURES.IM,v 1.2 1995/08/17 09:44:31 Willm Exp Willm $
.*

.*  Linux ext2 file system driver for OS/2 2.x and WARP - Allows OS/2 to     
.*  access your Linux ext2fs partitions as normal drive letters.
.*  OS/2 implementation : Copyright (C) 1995  Matthieu WILLM
.*
.*  This program is free software; you can redistribute it and/or modify
.*  it under the terms of the GNU General Public License as published by
.*  the Free Software Foundation; either version 2 of the License, or
.*  (at your option) any later version.
.*
.*  This program is distributed in the hope that it will be useful,
.*  but WITHOUT ANY WARRANTY; without even the implied warranty of
.*  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
.*  GNU General Public License for more details.
.*
.*  You should have received a copy of the GNU General Public License
.*  along with this program; if not, write to the Free Software
.*  Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.

.*******************************************************************************
.*** VI - Features, limitations and known bugs for this beta release.        ***
.*******************************************************************************

.nameit symbol=titre_600 text='Features, limitations and known bugs for this release.'
.nameit symbol=titre_601 text='Features and limitations'
.nameit symbol=titre_602 text='Known bugs'

:h1 id=600.&titre_600.

:ol compact.
:li.:link reftype=hd refid=601.&titre_601.:elink.
:li.:link reftype=hd refid=602.&titre_602.:elink.
:eol.

:h2 id=601.&titre_601.
:ul compact.
:li.I only tested it on Warp, but it should work on OS/2 2.x and above. It will *NOT* work on OS/2 1.x.
:li.I used the Linux 1.2.1 kernel sources, corresponding to ext2fs 0.5b and I tested my IFS
only on this level of Linux/&EXT2FS.
:li.User configurable per volume disk cache from (63 Kb to 60 * 63 Kb). 
:li.Global I-node cache, identical to Linux one.
:li.Global directory entry cache, identical to Linux one.
:li.Uses almost only original Linux ext2fs routines.
:li.Works well only for a block size of 1 KB (it should work with other block sizes, but it has been minimally tested)
:li.Doesn't support fragments (neither do the original Linux &EXT2FS. 0.5b code)
:li.Linux special files (fifo, symbolic links, sockets, block and character devices) are mapped as SYSTEM files :
you can see them with DIR /A but you normally can't read them
:li.OS/2 mounts &EXT2FS. partitions as root.
:li.Unlike Linux, file names beginning with '.' are not hidden
:li.Hard links are properly handled
:li.Symbolic links are not followed (treated as SYSTEM regular files)
:li.Each ext2 partition has its own drive letter (provided you made them visible from OS/2)
:li.It still completely ignores sharing modes (eg DosOpen with OPEN_SHARE_DENYxxx set).
:li.Some OS/2 API are not yet or partially supported, for instance &colon.
:ol compact.
:li.DosResetBuffer : nothing done.
:li.DosSetFSInfo : nothing done.
:li.DosSetFileInfo : currently does nothing (EAS for instance are not written to disk ; standard
attributes are not yet mapped and committed to disk...I plan to write a chmod utility to change standard Unix
arrtibutes).
:li.DosSetPathInfo : same thing as DosSetFileInfo
:li.DosSetVerify : completely ignored on ext2fs partitions !
:eol.
:li.&EXT2FS. specific behaviour of some &OS2. API &colon.
:ol compact.
:li.DosQueryFSInfo with FSIL_ALLOC (level 1) information returns the free space minus the reserved
space. This should be consistent with Minix style df output (no fs overhead taken into account).
:li.DosQueryFSInfo with FSIL_VOLSER (level 2) information returns EXT2FS_<drive> as volume label and 
a 32 bits CRC checksum of sector 0 as volume serial number.
:eol.
:li.Read an Write throughput is low, this is because synchronous writes 
are used (this was much simpler to implement), and ext2fs was designed with async I/Os in mind.
I plan to implement asynchronous I/O once ext2-os2 is stabilized ; the solution is to call
the device driver extended strategy entry point, instead of FSH_DOVOLIO which calls the standard
strategy entry point.
:eul.
:h2 id=602.&titre_602.
:p.
There are still too many of them. This list is not complete but I'll try to keep it as much
complete as possible, if you give me your feedback...

:ul compact.
:li.The mount process will mount the &EXT2FS. partition even if it has not been unmounted cleanly
 &colon. I STRONLY SUGGEST YOU TO UNMOUNT YOUR FILE SYSTEMS CLEANLY FROM LINUX - RUNNING THIS
DRIVER ON A CORRUPTED EXT2FS PARTITION IS LIKELY TO CRASH YOU SYSTEM.
:li.Removable media support has been only minimally tested. 
You *MUST* run sync.exe *BEFORE* removing a ext2fs formatted drive
:li.DosFindNext() called from a 32 bits app (aka DosFindFromName) 
doesn't restart from the specified name, but from the last directory
entry found.
:li.Error recovery is limited - but it should be better than in 0.1a
:li.I suggest you to avoid heavy concurrent access : a system halt or hang may occur if the
same file is heavily accessed by several threads or processesat the same time.
:li.A System halt may occur during heavy load (due to improperly testing when resources are exhausting)
:li.Reported dates and times are sometimes dummy
:li.As ext2fs doesn't support EAS, there are many cosmetic bugs with the workplace shell
(some icons stay hatched....)
:li.Some Windows apps, especially the Windows file manager, crash randomly.
:li.Error codes returned from the IFS to OS/2 are sometimes not translated
from Linux to OS/2. This will result in messages like "Cannot find message 56347"
nstead of "Directory not empty" for instance.
:li.Any app that either uppercase or lowercase file names are broken. I plan to fix it 
by providing a option to make ext2-os2 behave like HPFS (case retensive).
:eul.

[ RETURN TO DIRECTORY ]